[FilesBulkPinning] Add daily DSS availability percentage metric

The current metric DSSAvailabilityPercentage only gets emitted once a
change is detected. This can lead to lots of metrics coming in whilst
the initial sync is happening but only one being emitted when syncing is
stabilized.

It seems this skews the metrics slightly as a user might go from 0%
availabile to 100% and stay at 100% from then on, yet we need to make
sure the 100% is representative as the final figure, not the increase
from 0% to 100%.

This new metric will get emitted after a daily period has elapsed and
will represent a more point in time capture. So in the previous example
the 0% to 100% increase will likely get ignored as this will happen in
the first day and the final 100% is more indicative.

Fixed: b/300534960
Change-Id: I2997a4ac056117c866ddeb4972abedb620d156c8
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4862928
Reviewed-by: François Degros <fdegros@chromium.org>
Reviewed-by: Nigel Tao <nigeltao@chromium.org>
Commit-Queue: Ben Reich <benreich@chromium.org>
Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1200047}
5 files changed
tree: 08639b95e7c36641fdf76f6a904312d03b544495
  1. android_webview/
  2. apps/
  3. ash/
  4. base/
  5. build/
  6. build_overrides/
  7. buildtools/
  8. cc/
  9. chrome/
  10. chromecast/
  11. chromeos/
  12. codelabs/
  13. components/
  14. content/
  15. courgette/
  16. crypto/
  17. dbus/
  18. device/
  19. docs/
  20. extensions/
  21. fuchsia_web/
  22. gin/
  23. google_apis/
  24. google_update/
  25. gpu/
  26. headless/
  27. infra/
  28. ios/
  29. ipc/
  30. media/
  31. mojo/
  32. native_client_sdk/
  33. net/
  34. pdf/
  35. ppapi/
  36. printing/
  37. remoting/
  38. rlz/
  39. sandbox/
  40. services/
  41. skia/
  42. sql/
  43. storage/
  44. styleguide/
  45. testing/
  46. third_party/
  47. tools/
  48. ui/
  49. url/
  50. webkit/
  51. .clang-format
  52. .clang-tidy
  53. .eslintrc.js
  54. .git-blame-ignore-revs
  55. .gitattributes
  56. .gitignore
  57. .gitmodules
  58. .gn
  59. .mailmap
  60. .rustfmt.toml
  61. .vpython3
  62. .yapfignore
  63. ATL_OWNERS
  64. AUTHORS
  65. BUILD.gn
  66. CODE_OF_CONDUCT.md
  67. codereview.settings
  68. DEPS
  69. DIR_METADATA
  70. LICENSE
  71. LICENSE.chromium_os
  72. OWNERS
  73. PRESUBMIT.py
  74. PRESUBMIT_test.py
  75. PRESUBMIT_test_mocks.py
  76. README.md
  77. WATCHLISTS
README.md

Logo Chromium

Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.

The project's web site is https://www.chromium.org.

To check out the source code locally, don't use git clone! Instead, follow the instructions on how to get the code.

Documentation in the source is rooted in docs/README.md.

Learn how to Get Around the Chromium Source Code Directory Structure .

For historical reasons, there are some small top level directories. Now the guidance is that new top level directories are for product (e.g. Chrome, Android WebView, Ash). Even if these products have multiple executables, the code should be in subdirectories of the product.

If you found a bug, please file it at https://crbug.com/new.