New issue
Advanced search Search tips

Issue 832354 link

Starred by 3 users

Issue metadata

Status: Started
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows , Chrome , Mac
Pri: 2
Type: Feature



Sign in to add a comment

Add activity monitoring UI to chrome://extensions

Project Member Reported by dpa...@chromium.org, Apr 12 2018

Issue description

The Chrome Apps & Extensions Dev Tools Platform App has a feature where users can see exactly what an extension is doing (aka activity monitor), see scrennshot.

This is good for privacy, since it allows users to get better understanding of what each extension they have installed is doing. Perhaps such functionality should be included in chrome://extensions too.

[1] https://chrome.google.com/webstore/detail/chrome-apps-extensions-de/ohmmkhmmmpcnpikjeljgnaoabkaalbgc
 
activity_monitor_ui.png
85.1 KB View Download
Cc: kelvinjiang@chromium.org
Cc: -kelvinjiang@chromium.org
Owner: kelvinjiang@chromium.org
Status: Assigned (was: Available)
Cc: rdevlin....@chromium.org kelvinjiang@chromium.org
 Issue 898309  has been merged into this issue.
Cc: -rdevlin....@chromium.org
Labels: -Pri-3 Pri-2
Status: Started (was: Assigned)
Cc: rdevlin....@chromium.org
Project Member

Comment 6 by bugdroid1@chromium.org, Nov 14

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e393ff4753bfe97f90e9614feda10a0ca1d73f08

commit e393ff4753bfe97f90e9614feda10a0ca1d73f08
Author: Kelvin Jiang <kelvinjiang@chromium.org>
Date: Wed Nov 14 07:08:48 2018

[Extensions] Add recent extension activities to the activity log page

Show recent extension activities by making a call to
chrome.activityLogPrivate.getExtensionActivities whenever the user
navigates to the activity log page. Currently, the activity type,
api call, event count and page url (if there is one) are shown
in descending order of event count.

Note: the activity log database can sometimes store more than one entry
that has the same api call/event type. This CL currently does not
group any duplicate activity entries.

Bug: 832354
Change-Id: I0191d77cd7961bdc5d95ec8daea98d39b1a7c638
Reviewed-on: https://chromium-review.googlesource.com/c/1321166
Commit-Queue: Kelvin Jiang <kelvinjiang@chromium.org>
Reviewed-by: Devlin <rdevlin.cronin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#607924}
[modify] https://crrev.com/e393ff4753bfe97f90e9614feda10a0ca1d73f08/chrome/app/md_extensions_strings.grdp
[modify] https://crrev.com/e393ff4753bfe97f90e9614feda10a0ca1d73f08/chrome/browser/resources/md_extensions/BUILD.gn
[modify] https://crrev.com/e393ff4753bfe97f90e9614feda10a0ca1d73f08/chrome/browser/resources/md_extensions/activity_log.html
[modify] https://crrev.com/e393ff4753bfe97f90e9614feda10a0ca1d73f08/chrome/browser/resources/md_extensions/activity_log.js
[add] https://crrev.com/e393ff4753bfe97f90e9614feda10a0ca1d73f08/chrome/browser/resources/md_extensions/activity_log_item.html
[add] https://crrev.com/e393ff4753bfe97f90e9614feda10a0ca1d73f08/chrome/browser/resources/md_extensions/activity_log_item.js
[modify] https://crrev.com/e393ff4753bfe97f90e9614feda10a0ca1d73f08/chrome/browser/resources/md_extensions/detail_view.html
[modify] https://crrev.com/e393ff4753bfe97f90e9614feda10a0ca1d73f08/chrome/browser/resources/md_extensions/error_page.html
[modify] https://crrev.com/e393ff4753bfe97f90e9614feda10a0ca1d73f08/chrome/browser/resources/md_extensions/extensions_resources.grd
[modify] https://crrev.com/e393ff4753bfe97f90e9614feda10a0ca1d73f08/chrome/browser/resources/md_extensions/manager.html
[modify] https://crrev.com/e393ff4753bfe97f90e9614feda10a0ca1d73f08/chrome/browser/resources/md_extensions/manager.js
[modify] https://crrev.com/e393ff4753bfe97f90e9614feda10a0ca1d73f08/chrome/browser/resources/md_extensions/service.js
[add] https://crrev.com/e393ff4753bfe97f90e9614feda10a0ca1d73f08/chrome/browser/resources/md_extensions/shared_style.html
[modify] https://crrev.com/e393ff4753bfe97f90e9614feda10a0ca1d73f08/chrome/browser/ui/webui/extensions/extension_settings_browsertest.cc
[modify] https://crrev.com/e393ff4753bfe97f90e9614feda10a0ca1d73f08/chrome/browser/ui/webui/extensions/extensions_ui.cc
[modify] https://crrev.com/e393ff4753bfe97f90e9614feda10a0ca1d73f08/chrome/common/extensions/api/PRESUBMIT.py
[modify] https://crrev.com/e393ff4753bfe97f90e9614feda10a0ca1d73f08/chrome/common/extensions/api/_api_features.json
[add] https://crrev.com/e393ff4753bfe97f90e9614feda10a0ca1d73f08/chrome/test/data/extensions/activity_log/simple_call/background.js
[add] https://crrev.com/e393ff4753bfe97f90e9614feda10a0ca1d73f08/chrome/test/data/extensions/activity_log/simple_call/manifest.json
[modify] https://crrev.com/e393ff4753bfe97f90e9614feda10a0ca1d73f08/chrome/test/data/extensions/webui/sanity_check_available_apis.js
[add] https://crrev.com/e393ff4753bfe97f90e9614feda10a0ca1d73f08/chrome/test/data/webui/extensions/activity_log_test.js
[modify] https://crrev.com/e393ff4753bfe97f90e9614feda10a0ca1d73f08/chrome/test/data/webui/extensions/cr_extensions_browsertest.js
[modify] https://crrev.com/e393ff4753bfe97f90e9614feda10a0ca1d73f08/chrome/test/data/webui/extensions/test_service.js
[modify] https://crrev.com/e393ff4753bfe97f90e9614feda10a0ca1d73f08/testing/buildbot/filters/webui_polymer2_browser_tests.filter
[add] https://crrev.com/e393ff4753bfe97f90e9614feda10a0ca1d73f08/third_party/closure_compiler/externs/activity_log_private.js

Project Member

Comment 7 by bugdroid1@chromium.org, Nov 14

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/7662f4b0a581380e266a3f709a7f9442f6e7138a

commit 7662f4b0a581380e266a3f709a7f9442f6e7138a
Author: Findit <findit-for-me@appspot.gserviceaccount.com>
Date: Wed Nov 14 13:04:49 2018

Revert "[Extensions] Add recent extension activities to the activity log page"

This reverts commit e393ff4753bfe97f90e9614feda10a0ca1d73f08.

Reason for revert:

Findit (https://goo.gl/kROfz5) identified CL at revision 607924 as the
culprit for flakes in the build cycles as shown on:
https://findit-for-me.appspot.com/waterfall/flake/flake-culprit?key=ag9zfmZpbmRpdC1mb3ItbWVyQwsSDEZsYWtlQ3VscHJpdCIxY2hyb21pdW0vZTM5M2ZmNDc1M2JmZTk3ZjkwZTk2MTRmZWRhMTBhMGNhMWQ3M2YwOAw

Sample Failed Build: https://ci.chromium.org/buildbot/chromium.linux/linux-xenial-rel/4885

Sample Failed Step: browser_tests on Ubuntu-16.04

Sample Flaky Test: ExtensionsActivityLogTest.TestActivityLogVisible

Original change's description:
> [Extensions] Add recent extension activities to the activity log page
> 
> Show recent extension activities by making a call to
> chrome.activityLogPrivate.getExtensionActivities whenever the user
> navigates to the activity log page. Currently, the activity type,
> api call, event count and page url (if there is one) are shown
> in descending order of event count.
> 
> Note: the activity log database can sometimes store more than one entry
> that has the same api call/event type. This CL currently does not
> group any duplicate activity entries.
> 
> Bug: 832354
> Change-Id: I0191d77cd7961bdc5d95ec8daea98d39b1a7c638
> Reviewed-on: https://chromium-review.googlesource.com/c/1321166
> Commit-Queue: Kelvin Jiang <kelvinjiang@chromium.org>
> Reviewed-by: Devlin <rdevlin.cronin@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#607924}

Change-Id: I0074574f067f532e3398b48254a52bb9f7a7af0f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 832354,  905278 
Reviewed-on: https://chromium-review.googlesource.com/c/1335827
Cr-Commit-Position: refs/heads/master@{#607964}
[modify] https://crrev.com/7662f4b0a581380e266a3f709a7f9442f6e7138a/chrome/app/md_extensions_strings.grdp
[modify] https://crrev.com/7662f4b0a581380e266a3f709a7f9442f6e7138a/chrome/browser/resources/md_extensions/BUILD.gn
[modify] https://crrev.com/7662f4b0a581380e266a3f709a7f9442f6e7138a/chrome/browser/resources/md_extensions/activity_log.html
[modify] https://crrev.com/7662f4b0a581380e266a3f709a7f9442f6e7138a/chrome/browser/resources/md_extensions/activity_log.js
[delete] https://crrev.com/eab6e04f58c9f5182a76e00260559f010fc15bec/chrome/browser/resources/md_extensions/activity_log_item.html
[delete] https://crrev.com/eab6e04f58c9f5182a76e00260559f010fc15bec/chrome/browser/resources/md_extensions/activity_log_item.js
[modify] https://crrev.com/7662f4b0a581380e266a3f709a7f9442f6e7138a/chrome/browser/resources/md_extensions/detail_view.html
[modify] https://crrev.com/7662f4b0a581380e266a3f709a7f9442f6e7138a/chrome/browser/resources/md_extensions/error_page.html
[modify] https://crrev.com/7662f4b0a581380e266a3f709a7f9442f6e7138a/chrome/browser/resources/md_extensions/extensions_resources.grd
[modify] https://crrev.com/7662f4b0a581380e266a3f709a7f9442f6e7138a/chrome/browser/resources/md_extensions/manager.html
[modify] https://crrev.com/7662f4b0a581380e266a3f709a7f9442f6e7138a/chrome/browser/resources/md_extensions/manager.js
[modify] https://crrev.com/7662f4b0a581380e266a3f709a7f9442f6e7138a/chrome/browser/resources/md_extensions/service.js
[delete] https://crrev.com/eab6e04f58c9f5182a76e00260559f010fc15bec/chrome/browser/resources/md_extensions/shared_style.html
[modify] https://crrev.com/7662f4b0a581380e266a3f709a7f9442f6e7138a/chrome/browser/ui/webui/extensions/extension_settings_browsertest.cc
[modify] https://crrev.com/7662f4b0a581380e266a3f709a7f9442f6e7138a/chrome/browser/ui/webui/extensions/extensions_ui.cc
[modify] https://crrev.com/7662f4b0a581380e266a3f709a7f9442f6e7138a/chrome/common/extensions/api/PRESUBMIT.py
[modify] https://crrev.com/7662f4b0a581380e266a3f709a7f9442f6e7138a/chrome/common/extensions/api/_api_features.json
[delete] https://crrev.com/eab6e04f58c9f5182a76e00260559f010fc15bec/chrome/test/data/extensions/activity_log/simple_call/background.js
[delete] https://crrev.com/eab6e04f58c9f5182a76e00260559f010fc15bec/chrome/test/data/extensions/activity_log/simple_call/manifest.json
[modify] https://crrev.com/7662f4b0a581380e266a3f709a7f9442f6e7138a/chrome/test/data/extensions/webui/sanity_check_available_apis.js
[delete] https://crrev.com/eab6e04f58c9f5182a76e00260559f010fc15bec/chrome/test/data/webui/extensions/activity_log_test.js
[modify] https://crrev.com/7662f4b0a581380e266a3f709a7f9442f6e7138a/chrome/test/data/webui/extensions/cr_extensions_browsertest.js
[modify] https://crrev.com/7662f4b0a581380e266a3f709a7f9442f6e7138a/chrome/test/data/webui/extensions/test_service.js
[modify] https://crrev.com/7662f4b0a581380e266a3f709a7f9442f6e7138a/testing/buildbot/filters/webui_polymer2_browser_tests.filter
[delete] https://crrev.com/eab6e04f58c9f5182a76e00260559f010fc15bec/third_party/closure_compiler/externs/activity_log_private.js

Project Member

Comment 8 by bugdroid1@chromium.org, Nov 19

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/bff8e64691124248b4b42e62d65d88e561f97479

commit bff8e64691124248b4b42e62d65d88e561f97479
Author: Kelvin Jiang <kelvinjiang@chromium.org>
Date: Mon Nov 19 22:28:58 2018

[Extensions] Add recent extension activities to the activity log page 2

This is a follow up change to 1321166 which should (hopefully) unflake
the browser e2e test in extension_settings_browsertest.cc, which caused
CL 1321166 to get reverted.

The cause of the flake was that on certain test environments, the API
call to get extension activities was completed after the injected js
code in extension_settings_browsertest.cc was run. This CL attempts to
rectify this by using a promise which is resolved only when the API
call returns, and the test js code is run upon promise resolution.

>> Original CL description below:

Show recent extension activities by making a call to
chrome.activityLogPrivate.getExtensionActivities whenever the user
navigates to the activity log page. Currently, the activity type,
api call, event count and page url (if there is one) are shown
in descending order of event count.

Note: the activity log database can sometimes store more than one entry
that has the same api call/event type. This CL currently does not
group any duplicate activity entries.

Bug: 832354,  905278 
Change-Id: I948d74a707f565f8c074ef4db77532e7fe4b4e3a
Reviewed-on: https://chromium-review.googlesource.com/c/1340876
Commit-Queue: Kelvin Jiang <kelvinjiang@chromium.org>
Reviewed-by: Devlin <rdevlin.cronin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#609470}
[modify] https://crrev.com/bff8e64691124248b4b42e62d65d88e561f97479/chrome/app/md_extensions_strings.grdp
[modify] https://crrev.com/bff8e64691124248b4b42e62d65d88e561f97479/chrome/browser/resources/md_extensions/BUILD.gn
[modify] https://crrev.com/bff8e64691124248b4b42e62d65d88e561f97479/chrome/browser/resources/md_extensions/activity_log.html
[modify] https://crrev.com/bff8e64691124248b4b42e62d65d88e561f97479/chrome/browser/resources/md_extensions/activity_log.js
[add] https://crrev.com/bff8e64691124248b4b42e62d65d88e561f97479/chrome/browser/resources/md_extensions/activity_log_item.html
[add] https://crrev.com/bff8e64691124248b4b42e62d65d88e561f97479/chrome/browser/resources/md_extensions/activity_log_item.js
[modify] https://crrev.com/bff8e64691124248b4b42e62d65d88e561f97479/chrome/browser/resources/md_extensions/detail_view.html
[modify] https://crrev.com/bff8e64691124248b4b42e62d65d88e561f97479/chrome/browser/resources/md_extensions/error_page.html
[modify] https://crrev.com/bff8e64691124248b4b42e62d65d88e561f97479/chrome/browser/resources/md_extensions/extensions_resources.grd
[modify] https://crrev.com/bff8e64691124248b4b42e62d65d88e561f97479/chrome/browser/resources/md_extensions/manager.html
[modify] https://crrev.com/bff8e64691124248b4b42e62d65d88e561f97479/chrome/browser/resources/md_extensions/manager.js
[modify] https://crrev.com/bff8e64691124248b4b42e62d65d88e561f97479/chrome/browser/resources/md_extensions/service.js
[add] https://crrev.com/bff8e64691124248b4b42e62d65d88e561f97479/chrome/browser/resources/md_extensions/shared_style.html
[modify] https://crrev.com/bff8e64691124248b4b42e62d65d88e561f97479/chrome/browser/ui/webui/extensions/extension_settings_browsertest.cc
[modify] https://crrev.com/bff8e64691124248b4b42e62d65d88e561f97479/chrome/browser/ui/webui/extensions/extensions_ui.cc
[modify] https://crrev.com/bff8e64691124248b4b42e62d65d88e561f97479/chrome/common/extensions/api/PRESUBMIT.py
[modify] https://crrev.com/bff8e64691124248b4b42e62d65d88e561f97479/chrome/common/extensions/api/_api_features.json
[add] https://crrev.com/bff8e64691124248b4b42e62d65d88e561f97479/chrome/test/data/extensions/activity_log/simple_call/background.js
[add] https://crrev.com/bff8e64691124248b4b42e62d65d88e561f97479/chrome/test/data/extensions/activity_log/simple_call/manifest.json
[modify] https://crrev.com/bff8e64691124248b4b42e62d65d88e561f97479/chrome/test/data/extensions/webui/sanity_check_available_apis.js
[add] https://crrev.com/bff8e64691124248b4b42e62d65d88e561f97479/chrome/test/data/webui/extensions/activity_log_test.js
[modify] https://crrev.com/bff8e64691124248b4b42e62d65d88e561f97479/chrome/test/data/webui/extensions/cr_extensions_browsertest.js
[modify] https://crrev.com/bff8e64691124248b4b42e62d65d88e561f97479/chrome/test/data/webui/extensions/test_service.js
[modify] https://crrev.com/bff8e64691124248b4b42e62d65d88e561f97479/testing/buildbot/filters/webui_polymer2_browser_tests.filter
[add] https://crrev.com/bff8e64691124248b4b42e62d65d88e561f97479/third_party/closure_compiler/externs/activity_log_private.js

Project Member

Comment 9 by bugdroid1@chromium.org, Nov 21

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/701c967ca14a8b8a8ab3cb88a378629dc1ff2db6

commit 701c967ca14a8b8a8ab3cb88a378629dc1ff2db6
Author: Kelvin Jiang <kelvinjiang@chromium.org>
Date: Wed Nov 21 19:35:45 2018

[Extensions] Add loading state to activity log page

Add a loading state to activity log so we clear the activity log when
we switch to a new extension. This ensures that the user does not see
any previous data when new activity log data is being loaded. It also
gives users a bit more feedback on progress loading the activity log.

Bug: 832354
Change-Id: I30d5756fc375979d0a6f183af1e2e1bf25fe1073
Reviewed-on: https://chromium-review.googlesource.com/c/1345409
Commit-Queue: Kelvin Jiang <kelvinjiang@chromium.org>
Reviewed-by: Devlin <rdevlin.cronin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#610165}
[modify] https://crrev.com/701c967ca14a8b8a8ab3cb88a378629dc1ff2db6/chrome/app/md_extensions_strings.grdp
[modify] https://crrev.com/701c967ca14a8b8a8ab3cb88a378629dc1ff2db6/chrome/browser/resources/md_extensions/activity_log.html
[modify] https://crrev.com/701c967ca14a8b8a8ab3cb88a378629dc1ff2db6/chrome/browser/resources/md_extensions/activity_log.js
[modify] https://crrev.com/701c967ca14a8b8a8ab3cb88a378629dc1ff2db6/chrome/browser/ui/webui/extensions/extensions_ui.cc
[modify] https://crrev.com/701c967ca14a8b8a8ab3cb88a378629dc1ff2db6/chrome/test/data/webui/extensions/activity_log_test.js

Project Member

Comment 10 by bugdroid1@chromium.org, Dec 3

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/3c81b6deb6e83381d59d6087944e946eaf70167b

commit 3c81b6deb6e83381d59d6087944e946eaf70167b
Author: Kelvin Jiang <kelvinjiang@chromium.org>
Date: Mon Dec 03 23:19:19 2018

[Extensions] Group activity log entries by api call

Occasionally, 2 activity log entries with the same api call exist in the
database. When presented to the UI, this can confuse some users. This CL
groups activities by their api call and sorts them based on the total
number of calls. This achieves feature parity with the Chrome Apps and
Extensions Developer Tool.

Bug: 832354
Change-Id: I566a3620b6a5fd3b35825e49d3db5fb9fbb7f416
Reviewed-on: https://chromium-review.googlesource.com/c/1350924
Commit-Queue: Kelvin Jiang <kelvinjiang@chromium.org>
Reviewed-by: Demetrios Papadopoulos <dpapad@chromium.org>
Reviewed-by: Devlin <rdevlin.cronin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#613311}
[modify] https://crrev.com/3c81b6deb6e83381d59d6087944e946eaf70167b/chrome/browser/resources/md_extensions/activity_log.html
[modify] https://crrev.com/3c81b6deb6e83381d59d6087944e946eaf70167b/chrome/browser/resources/md_extensions/activity_log.js
[modify] https://crrev.com/3c81b6deb6e83381d59d6087944e946eaf70167b/chrome/browser/resources/md_extensions/activity_log_item.html
[modify] https://crrev.com/3c81b6deb6e83381d59d6087944e946eaf70167b/chrome/browser/resources/md_extensions/activity_log_item.js
[add] https://crrev.com/3c81b6deb6e83381d59d6087944e946eaf70167b/chrome/test/data/webui/extensions/activity_log_item_test.js
[modify] https://crrev.com/3c81b6deb6e83381d59d6087944e946eaf70167b/chrome/test/data/webui/extensions/activity_log_test.js
[modify] https://crrev.com/3c81b6deb6e83381d59d6087944e946eaf70167b/chrome/test/data/webui/extensions/cr_extensions_browsertest.js
[modify] https://crrev.com/3c81b6deb6e83381d59d6087944e946eaf70167b/testing/buildbot/filters/webui_polymer2_browser_tests.filter

Project Member

Comment 11 by bugdroid1@chromium.org, Dec 11

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/de0ed4dea83f0629c994c97dcdf2b980ce5bc080

commit de0ed4dea83f0629c994c97dcdf2b980ce5bc080
Author: Kelvin Jiang <kelvinjiang@chromium.org>
Date: Tue Dec 11 02:46:05 2018

[Extensions] Case insensitive api_call filtering in the activity log DB

Currently, the activity log API filters the api_name field using case
sensitive string equality if a filter for api_name is provided for
chrome.activityLogPrivate.getExtensionActivities. This CL changes
the matching scheme to be a case insensitive prefix match, similar to
what is used for the page_url and arg_url fields. This should make the
activity log easier to use when a user is filtering by specific api
calls.

Bug: 832354
Change-Id: I725542657a5879141426f621631ec69ccd88af9e
Reviewed-on: https://chromium-review.googlesource.com/c/1371187
Commit-Queue: Kelvin Jiang <kelvinjiang@chromium.org>
Reviewed-by: Devlin <rdevlin.cronin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#615400}
[modify] https://crrev.com/de0ed4dea83f0629c994c97dcdf2b980ce5bc080/chrome/browser/extensions/activity_log/counting_policy.cc
[modify] https://crrev.com/de0ed4dea83f0629c994c97dcdf2b980ce5bc080/chrome/browser/extensions/activity_log/counting_policy_unittest.cc
[modify] https://crrev.com/de0ed4dea83f0629c994c97dcdf2b980ce5bc080/chrome/browser/extensions/activity_log/fullstream_ui_policy.cc
[modify] https://crrev.com/de0ed4dea83f0629c994c97dcdf2b980ce5bc080/chrome/browser/extensions/activity_log/fullstream_ui_policy_unittest.cc

Project Member

Comment 12 by bugdroid1@chromium.org, Dec 20

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/22f9e4b3b5e8681f08ff2c9e1f80069af378cb4b

commit 22f9e4b3b5e8681f08ff2c9e1f80069af378cb4b
Author: Kelvin Jiang <kelvinjiang@chromium.org>
Date: Thu Dec 20 03:16:41 2018

[Extensions] Add text search/filtering to activity log

Add a search bar on the top right of the activity log page which enables
users to search through the activity log. Search terms will be used to
build filters that will be passed in to 3 API calls: one for activities
with API call names that match exactly to the query, one for a partial
match for the pageUrl field, and one for the argUrl field.

Filtering is done on the API side as this is the same functionality as
what is currently in the Chrome Apps and Extensions Developer Tool.
This also ensures that activities that match the query but would be
excluded based on the limit of 300 results per API call can be returned.

Screenshots:
https://imgur.com/a/cKZgQbB
https://imgur.com/SSMxxBt


Bug: 832354
Change-Id: Ifa842d454832eb94727dc955ba7c76f7741e71b0
Reviewed-on: https://chromium-review.googlesource.com/c/1365031
Commit-Queue: Kelvin Jiang <kelvinjiang@chromium.org>
Reviewed-by: Scott Chen <scottchen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#618094}
[modify] https://crrev.com/22f9e4b3b5e8681f08ff2c9e1f80069af378cb4b/chrome/app/md_extensions_strings.grdp
[modify] https://crrev.com/22f9e4b3b5e8681f08ff2c9e1f80069af378cb4b/chrome/browser/resources/md_extensions/BUILD.gn
[modify] https://crrev.com/22f9e4b3b5e8681f08ff2c9e1f80069af378cb4b/chrome/browser/resources/md_extensions/activity_log.html
[modify] https://crrev.com/22f9e4b3b5e8681f08ff2c9e1f80069af378cb4b/chrome/browser/resources/md_extensions/activity_log.js
[modify] https://crrev.com/22f9e4b3b5e8681f08ff2c9e1f80069af378cb4b/chrome/browser/resources/md_extensions/activity_log_item.js
[modify] https://crrev.com/22f9e4b3b5e8681f08ff2c9e1f80069af378cb4b/chrome/browser/resources/md_extensions/service.js
[modify] https://crrev.com/22f9e4b3b5e8681f08ff2c9e1f80069af378cb4b/chrome/browser/ui/webui/extensions/extensions_ui.cc
[modify] https://crrev.com/22f9e4b3b5e8681f08ff2c9e1f80069af378cb4b/chrome/test/data/webui/extensions/activity_log_test.js
[modify] https://crrev.com/22f9e4b3b5e8681f08ff2c9e1f80069af378cb4b/chrome/test/data/webui/extensions/test_service.js

Project Member

Comment 13 by bugdroid1@chromium.org, Jan 4

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/73fb52b3dff1c16246911c74568ae7b8c8ac9f25

commit 73fb52b3dff1c16246911c74568ae7b8c8ac9f25
Author: Kelvin Jiang <kelvinjiang@chromium.org>
Date: Fri Jan 04 18:39:20 2019

[Extensions] Add API function to delete all activities by extension id

This adds a new method for the activityLogPrivate API:
deleteActivitiesByExtension, which takes in an extension id and an
optional callback for when the operation has finished. Callback is used
to ensure that the activities are removed from the UI side when the
delete operation is guaranteed to have successfully completed.

Bug: 832354
Change-Id: I8e2df25d39f9879efc6979d949999b7e35be299b
Reviewed-on: https://chromium-review.googlesource.com/c/1389165
Reviewed-by: Devlin <rdevlin.cronin@chromium.org>
Commit-Queue: Kelvin Jiang <kelvinjiang@chromium.org>
Cr-Commit-Position: refs/heads/master@{#620008}
[modify] https://crrev.com/73fb52b3dff1c16246911c74568ae7b8c8ac9f25/chrome/browser/extensions/activity_log/activity_log.cc
[modify] https://crrev.com/73fb52b3dff1c16246911c74568ae7b8c8ac9f25/chrome/browser/extensions/activity_log/activity_log.h
[modify] https://crrev.com/73fb52b3dff1c16246911c74568ae7b8c8ac9f25/chrome/browser/extensions/activity_log/activity_log_unittest.cc
[modify] https://crrev.com/73fb52b3dff1c16246911c74568ae7b8c8ac9f25/chrome/browser/extensions/api/activity_log_private/activity_log_private_api.cc
[modify] https://crrev.com/73fb52b3dff1c16246911c74568ae7b8c8ac9f25/chrome/browser/extensions/api/activity_log_private/activity_log_private_api.h
[modify] https://crrev.com/73fb52b3dff1c16246911c74568ae7b8c8ac9f25/chrome/common/extensions/api/activity_log_private.json
[modify] https://crrev.com/73fb52b3dff1c16246911c74568ae7b8c8ac9f25/extensions/browser/extension_function_histogram_value.h
[modify] https://crrev.com/73fb52b3dff1c16246911c74568ae7b8c8ac9f25/third_party/closure_compiler/externs/activity_log_private.js
[modify] https://crrev.com/73fb52b3dff1c16246911c74568ae7b8c8ac9f25/tools/metrics/histograms/enums.xml

Project Member

Comment 14 by bugdroid1@chromium.org, Jan 4

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/2ef35551fcc364ae37d870c608798234a6da52ed

commit 2ef35551fcc364ae37d870c608798234a6da52ed
Author: Kelvin Jiang <kelvinjiang@chromium.org>
Date: Fri Jan 04 21:12:36 2019

[Extensions] Add button to delete all activity logs by extension

Add a button to the right of the search field to delete all activity log
entries for the current extension by calling
activityLogPrivate.deleteActivitiesByExtension.

This CL depends on:
https://chromium-review.googlesource.com/c/chromium/src/+/1389165

Bug: 832354
Change-Id: I78d9c2534e1d48c12b5e107890729b6b84516542
Reviewed-on: https://chromium-review.googlesource.com/c/1394184
Reviewed-by: Devlin <rdevlin.cronin@chromium.org>
Commit-Queue: Kelvin Jiang <kelvinjiang@chromium.org>
Cr-Commit-Position: refs/heads/master@{#620065}
[modify] https://crrev.com/2ef35551fcc364ae37d870c608798234a6da52ed/chrome/app/md_extensions_strings.grdp
[modify] https://crrev.com/2ef35551fcc364ae37d870c608798234a6da52ed/chrome/browser/resources/md_extensions/activity_log.html
[modify] https://crrev.com/2ef35551fcc364ae37d870c608798234a6da52ed/chrome/browser/resources/md_extensions/activity_log.js
[modify] https://crrev.com/2ef35551fcc364ae37d870c608798234a6da52ed/chrome/browser/resources/md_extensions/service.js
[modify] https://crrev.com/2ef35551fcc364ae37d870c608798234a6da52ed/chrome/browser/ui/webui/extensions/extensions_ui.cc
[modify] https://crrev.com/2ef35551fcc364ae37d870c608798234a6da52ed/chrome/test/data/webui/extensions/activity_log_test.js
[modify] https://crrev.com/2ef35551fcc364ae37d870c608798234a6da52ed/chrome/test/data/webui/extensions/test_service.js

Project Member

Comment 15 by bugdroid1@chromium.org, Jan 16

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4df0a1b146afe0fca54311b73fdfc97e6689fd86

commit 4df0a1b146afe0fca54311b73fdfc97e6689fd86
Author: Kelvin Jiang <kelvinjiang@chromium.org>
Date: Wed Jan 16 04:15:54 2019

[Extensions] Handle content scripts and web requests in activity log

This CL fixes some display issues and unhandled cases for the activity
log: for content scripts and web requests in particular.

Show one entry in the activity log per invocation of the content script.

Split the web request activity into one for every web request action
taken. This un-masks some information in the activity log object for
the  web request.

Screenshots: https://imgur.com/a/NmNXRO4

Bug: 832354
Change-Id: I69bcbb319ccd2957ff6ebe9cc9d272d7d1bdc3f0
Reviewed-on: https://chromium-review.googlesource.com/c/1399427
Commit-Queue: Kelvin Jiang <kelvinjiang@chromium.org>
Reviewed-by: Devlin <rdevlin.cronin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#623095}
[modify] https://crrev.com/4df0a1b146afe0fca54311b73fdfc97e6689fd86/chrome/app/md_extensions_strings.grdp
[modify] https://crrev.com/4df0a1b146afe0fca54311b73fdfc97e6689fd86/chrome/browser/resources/md_extensions/activity_log.js
[modify] https://crrev.com/4df0a1b146afe0fca54311b73fdfc97e6689fd86/chrome/browser/resources/md_extensions/activity_log_item.html
[modify] https://crrev.com/4df0a1b146afe0fca54311b73fdfc97e6689fd86/chrome/browser/resources/md_extensions/activity_log_item.js
[modify] https://crrev.com/4df0a1b146afe0fca54311b73fdfc97e6689fd86/chrome/browser/resources/md_extensions/service.js
[modify] https://crrev.com/4df0a1b146afe0fca54311b73fdfc97e6689fd86/chrome/browser/ui/webui/extensions/extension_settings_browsertest.cc
[modify] https://crrev.com/4df0a1b146afe0fca54311b73fdfc97e6689fd86/chrome/test/data/webui/extensions/activity_log_item_test.js
[modify] https://crrev.com/4df0a1b146afe0fca54311b73fdfc97e6689fd86/chrome/test/data/webui/extensions/activity_log_test.js

Project Member

Comment 16 by bugdroid1@chromium.org, Jan 19 (4 days ago)

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/fb4408bf60de5b259b541be3b2507ba93c9d3d33

commit fb4408bf60de5b259b541be3b2507ba93c9d3d33
Author: Kelvin Jiang <kelvinjiang@chromium.org>
Date: Sat Jan 19 00:32:07 2019

[Extensions] Implement delete functionality for activity log item

This CL adds functionality to the delete button in an activity log item
which makes an API call to delete all activities associated with that
item (by id).

The activity log is then refetched when the delete operation completes
successfully as an activity log item can be associated with multiple
activities with different ids, and
https://chromium-review.googlesource.com/c/chromium/src/+/1399427
can split an activity into multiple activity log items which share the
same id. In short, this re-fetching is done for consistency.

Bug: 832354
Change-Id: I6aac485ae8d0c626699b3669420c9a360b233af6
Reviewed-on: https://chromium-review.googlesource.com/c/1404409
Commit-Queue: Kelvin Jiang <kelvinjiang@chromium.org>
Reviewed-by: Devlin <rdevlin.cronin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#624379}
[modify] https://crrev.com/fb4408bf60de5b259b541be3b2507ba93c9d3d33/chrome/browser/resources/md_extensions/BUILD.gn
[modify] https://crrev.com/fb4408bf60de5b259b541be3b2507ba93c9d3d33/chrome/browser/resources/md_extensions/activity_log.js
[modify] https://crrev.com/fb4408bf60de5b259b541be3b2507ba93c9d3d33/chrome/browser/resources/md_extensions/activity_log_item.html
[modify] https://crrev.com/fb4408bf60de5b259b541be3b2507ba93c9d3d33/chrome/browser/resources/md_extensions/activity_log_item.js
[modify] https://crrev.com/fb4408bf60de5b259b541be3b2507ba93c9d3d33/chrome/browser/resources/md_extensions/service.js
[modify] https://crrev.com/fb4408bf60de5b259b541be3b2507ba93c9d3d33/chrome/common/extensions/api/activity_log_private.json
[modify] https://crrev.com/fb4408bf60de5b259b541be3b2507ba93c9d3d33/chrome/test/data/webui/extensions/activity_log_item_test.js
[modify] https://crrev.com/fb4408bf60de5b259b541be3b2507ba93c9d3d33/chrome/test/data/webui/extensions/activity_log_test.js
[modify] https://crrev.com/fb4408bf60de5b259b541be3b2507ba93c9d3d33/chrome/test/data/webui/extensions/test_service.js
[modify] https://crrev.com/fb4408bf60de5b259b541be3b2507ba93c9d3d33/third_party/closure_compiler/externs/activity_log_private.js

Sign in to add a comment