50b0c9a6082417034514d68a079248ce09957027 |
|
11-May-2018 |
Yangster-mac <yanglu@google.com> |
Guardrail the max gauge atoms per dimension in one bucket. Test: statsd BUG: b/78603347 Change-Id: Ide77cc8ff0cde6cf6cc9e56034727ed27dd7be88
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
3b592910c50856a3b28a07a735c31e19f44bc460 |
|
10-May-2018 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Fix the gauge metric data size estimation." into pi-dev
|
b2532daf4d9922b706054705b8dbf94a9df6a191 |
|
11-Apr-2018 |
Yangster-mac <yanglu@google.com> |
Fix the gauge metric data size estimation. Test: statsd test BUG: b/77906846 Change-Id: Ie5ab54771acadde1e825289fe5ec491cc2225458
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
ec3c7a3e58757a23afbb494b5fd9f1a1081fa495 |
|
10-May-2018 |
Yangster <yanglu@google.com> |
Add a sampling method to pull gauge when condition changes to true. Test: statsd test BUG: b/79490890 Change-Id: I82ed6681151f8a217e74bd0d855f817b4fa0619c
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
b85e5616dfa153eea1e61e99427164c5102dbbd3 |
|
02-May-2018 |
android-build-team Robot <android-build-team-robot@google.com> |
Merge "Reduce statsd log data size." into pi-dev
|
9def8e3995b1034d943a0fd22b6e512bfacdab77 |
|
17-Apr-2018 |
Yangster-mac <yanglu@google.com> |
Reduce statsd log data size. 1. Hash the strings in metric dimensions. 2. Optimize the timestamp encoding in bucket. Use bucket num for full bucket and millis for partial bucket. 3. Encode the dimension path per metric and avoid deduping it across dimensons. Test: statsd test Change-Id: I18f69654de85edb21a9c835c73edead756295e05 BUG: b/77813755
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
a802d73da625ac72f6a0211aab017f365139112d |
|
24-Apr-2018 |
Yangster-mac <yanglu@google.com> |
Clear the past buckets for no-report metrics Test: statsd tests. BUG: b/78503732 Change-Id: I3de855929ad05677769cffaae4fea2db0d2f32da
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
81245fd53a0bd627fa87e3a69dd667c7d6696ede |
|
12-Apr-2018 |
David Chen <dwchen@google.com> |
Adds option to drop small buckets for statsd. We notice that some of the pulled metrics have a ton of data, and during app upgrades, we're forming partial buckets that represent small periods of time but require many bytes of data. We now have an option to drop these buckets that are too short. Note that we still have to pull the data to keep the metrics for the next bucket correct. We include a new field in the value and gauge metric outputs so that it's easy to tell when a bucket was dropped. We drop the partial buckets also from anomaly detection since we should be computing anomalies from the same data that is reported. Test: Added unit-tests for value and gauge metrics. Bug: 77925710 Change-Id: Ic370496377c6afd380e02278a6c1ed8b521a2731
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
15f6bbc24f4d7a3d4481d90a18df33d402ddacba |
|
08-Apr-2018 |
Yangster-mac <yanglu@google.com> |
Flush the bucket when creating the metric producer. Use int64 for value field. E2e test for gauge/value metric. BUG: b/74445671 Test: statsd test. Change-Id: I823a0bade8f89834bdfb9cf48864852a47d7b63b
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
e68f3a5811209eeab71976bc583c6075d9a5979a |
|
04-Apr-2018 |
Yangster-mac <yanglu@google.com> |
Flush the partial bucket when startd shuts down or config updated. Test: statsd test BUG: b/77556036 Change-Id: Ie4a04ace55e07c4529cdff5906ba874f8815f620
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
b142cc8add29c8c97f6134d35873d23db666027c |
|
31-Mar-2018 |
Yangster-mac <yanglu@google.com> |
Statsd config TTL Roughly check the config every hour to see whether the ttl expired. If so, read the config from disk and recreate the metric manager. Test: statsd test BUG: b/77274363 Change-Id: I16838afe5bbe966c3a0f638869751f9b59a5a259
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
1a0a941c20eb746868d0de52e3806f69c74d335f |
|
28-Mar-2018 |
Chenjie Yu <cjyu@google.com> |
Fix StatsCompanionService pull on bucket ends + change StatsPullerManager internal time units to be consistent + use series of alarms for pullers, instead of use setRepeating Bug: 76223345 Bug: 75970648 Test: cts test Change-Id: I9e6ac0ce06541f5ceabd2a8fa444e13d40e36983
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
d9afdee26f01d1e0277749959094d9f396799a69 |
|
27-Mar-2018 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Support sliced condition change in GaugeMetric" into pi-dev
|
427d372552490a2c5ac4041fe345b15f69451f57 |
|
22-Mar-2018 |
Yao Chen <yaochen@google.com> |
Support sliced condition change in GaugeMetric TODO: We need CTS to verify the behavior. Bug: 73958484 Test: statsd_test Change-Id: I56406983ddede12bc6a2e12188693a0c51ccae5c
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
c58750578fdf6e54500e9deabe7d5062afbd6e09 |
|
09-Mar-2018 |
Chenjie Yu <cjyu@google.com> |
Up the dimension key limit for CpuTimePerUidFreq This atom logs time spent on cpu per frequency per uid. On marlin, there are 27 frequency steps per uid (should be 50+ if flatten to both cores) On walleye, there are 52 frequency steps per uid. So it easily goes to 6k data. Soft limit set to 6k now. Hard limit set to 10k to accommodate future processors Memory impact: on marlin, start memory no config is 2,346K after using this atom in one guage metric, it is 3,067K Bug: 72505991 Test: cts test Change-Id: I067a32e54e4a457fdf9a25911aa16030e893ef4d
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
c40a19d2e43d5de3e036e926bf070220c2c865e6 |
|
16-Mar-2018 |
Yao Chen <yaochen@google.com> |
Add uid field annotation in atoms.proto and statd memory usage optimization. [memory] statsd binary size from 664k -> 600k memory usage 1978k -> 1813k (with no configs) + Avoid initialize any static map in statslog.h to avoid many copies of the map in each include. - Do it in cpp so that it is initialized only in places that use them [Uid annotation] + Uid annotation is needed for extracting uid from dimension for UidCpuPuller. + After the change, stand-alone uids don't need to be in field 1 anymore. + Also added exclusive bit annotation in AppDied + Currently only allow one uid field in an Atom. This is to keep things simple until we find an exception. Test: statsd_test Bug: 73958484 Bug: 72129300 Change-Id: I8a916d5c00d5930e24ae7e0825a57dea19c0e744
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
c7ce1a09783e7b1d32576d381e9bfe312c57c089 |
|
14-Mar-2018 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Add wall clock timestamp for ConfigMetricsReport and gauge atoms." into pi-dev
|
aaadf6663fdc8787947d67bc14841d20094bd072 |
|
14-Mar-2018 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Statsd: Remove storage of bucketNum" into pi-dev
|
a78d00874d4e274937734a1b73aef4b6389eb3cd |
|
12-Mar-2018 |
Yangster-mac <yanglu@google.com> |
Dump the stats for count/gauge/value metrics. Bug: b/74159560 Test: statsd test Change-Id: I1410309ecfdfc2a5becf8d0c620c68a621ebc5fa
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
3f5ab3ff1d66e53c26e3a5951dc0804bca5467a8 |
|
13-Mar-2018 |
Bookatz <bookatz@google.com> |
Statsd: Remove storage of bucketNum Past buckets had a field mBucketNum, storing the "bucket number" they represented. Currently, the concept of bucket number is used by Anomaly Detection (although this may not be necessary), but these stored values are not used at all, so removing them will save RAM. Test: statsd tests still pass Bug: 74607818 Change-Id: Iacc343bc39c5035f6e2f236c03de1d91606eff4c
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
3fa5d7fb236f263125bc6364ea693e5e9f122976 |
|
11-Mar-2018 |
Yangster-mac <yanglu@google.com> |
Add wall clock timestamp for ConfigMetricsReport and gauge atoms. Fix the bug when serializing multiple atoms in gauge metric BUG: b/74159560 Test: new test for ALL_CONDITION_CHANGES sampling method. Change-Id: I6d33c1efbac92b6e13be2d64c323e090cb1f84aa
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
13fb7e4eeaf7aee408821afe7ee55a5167e49e59 |
|
08-Mar-2018 |
Yangster <yanglu@google.com> |
Statsd cpu optimizaton - cache the changed dimensions in condition tracker. - avoid query condition wizard when unnecessary. - avoid copy dimension keys in condition key generation. Test: statsd tests. BUG: b/73959649 Change-Id: I17d68e2a82643de3f421309841e75f84c6fd8f43
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
5ee0787024cc446a21008ff5710dec19c6afc834 |
|
06-Mar-2018 |
Yi Jin <jinyithu@google.com> |
Use uint64_t instead of long long as API type for consistent reason. Bug: 74118023 Test: manual Change-Id: Icd5f506c76d3a008a79cb6c9d2061962ca7fdd40
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
06dba5d79c096b02d3ba6fb73e64451ff12e388d |
|
26-Jan-2018 |
Yao Chen <yaochen@google.com> |
Add API to let metrics directly drop data without writing to an output. + Metrics will do flushIfNeeded() to correctly move the clock and informing AnomalyTracker the past bucket info, and then clear past buckets. + We will still keep the current bucket data for the validity of the future metrics. Bug: 70571383 Test: statsd_test Change-Id: Ib13c45574974e7b4e82bd8f305091dc93bda76f5
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
d5c356214fabec1ad9d5d16d673f000deb49ea30 |
|
02-Feb-2018 |
Yangster-mac <yanglu@google.com> |
Timestamp Truncating whitelist. Test: manually tested. Change-Id: I46da375b6c0773ffc611bc06fff12cb4f9a7fc18
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
db15052ae2ea34807644e2e97afa908e43ae59fd |
|
15-Feb-2018 |
Howard Ro <yro@google.com> |
Merge "Add a guardrail to limit minimum bucket duration to be 5 minutes except when configured through adb command"
|
6189807c12e9cf32a36d32557725561c44b8aa5a |
|
14-Feb-2018 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Remove unused variables in statsd, and make more warnings show."
|
330af58f2b8582b855085655fae553cdfaf44e6c |
|
09-Feb-2018 |
Yangster-mac <yanglu@google.com> |
Use elapsed realtime instead of times based on wall clock, which can jump around and go backwards. Test: statsd unit test passed Change-Id: Ib541df99231e171b3be2a24f75632693e36da90e
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
59cc24dbfda4148c1f5ef4de9c8763caa8672443 |
|
14-Feb-2018 |
yro <yro@google.com> |
Add a guardrail to limit minimum bucket duration to be 5 minutes except when configured through adb command Bug: 73287251 Test: statsd_test Change-Id: Iee51fedbaabb2c1f534a6edef3c564da88ef658b
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
4c959cb99eb7e71e5417a61f5429c5fa0073e826 |
|
13-Feb-2018 |
Yao Chen <yaochen@google.com> |
Remove unused variables in statsd, and make more warnings show. Test: statsd_test Change-Id: I2c7b674cb615f22c5de90c2de5f2d58108ab2e7f
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
8a8d16ceea1e5b7a2f8c41e17b5d993035f50f5d |
|
08-Feb-2018 |
Yao Chen <yaochen@google.com> |
Statsd CPU optimization. The key change is to revamp how we parse/store/match a log event, especially how we match repeated field and attribution nodes, and how we construct dimensions and compare them. + We use a integer to encode the field of a log element. And also encode the FieldMatcher into an integer and a bit mask. The log matching becomes 2 integer operations. + Dimension is stored as encoded field and value pair. Checking if 2 dimensions are equal is then becoming checking if the underlying integers are equal. The integers are stored contiguously in memory, so it's much faster than previous tree structure. Start review from FieldValue.h Test: statsd_test + new unit tests Bug: 72659059 Change-Id: Iec8daeacdd3f39ab297c10ab9cd7b710a9c42e86
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
16049578001364e1fcb0f10d6f94868081e57316 |
|
02-Feb-2018 |
David Chen <dwchen@google.com> |
Modifies statsd output for start and end times. We include the start of when the last dump occurred and the current timestamp. These timestamps are shared across all metrics, so there's no advantage in duplicating these numbers across all metrics. Also, we should use elapsed realtime instead of times based on wall clock, which can jump around and go backwards. Test: Test that statsd can still build and adb shell cmd stats dump-report doesn't crash. Change-Id: I819e5643cee75dfa3e78a58f94c9d61ededa78d7
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
27785a8a4a684c831c18f7189a6fa1b98c3573e6 |
|
20-Jan-2018 |
David Chen <dwchen@google.com> |
Partial buckets on app upgrade and fix duration. Statsd will create partial buckets in all metrics producers when an app is upgraded so that we can separate metrics between different versions of an app. By looking at the uid map changes, we can tell which app versions belong to a bucket; for metrics that are not affected by an app version, we can instead join the buckets together. To simplify the logic, the ends of the full buckets are always aligned to when the metric producers were created. These boundaries are computed on the fly by using the bucket number and the metric producers' start times. We keep the anomaly trackers to only be given full buckets; we buffer the partial buckets within each metric producer. Duration metric's MAX_SPARSE is fixed to be implemented as such. In addition, after further discussion, we find anomaly detection on MAX_SPARSE to be unnecessary, so this functionality is removed. Test: Unit-tests added and modified, passed on marlin-eng. Change-Id: I5ff7a9c7f05c406e9faf400c6a39162970ded102
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
9369446f0b04945d6674550728ae81196d6fb5c2 |
|
23-Jan-2018 |
Yangster-mac <yanglu@google.com> |
Support dimension in condition in metric producers. Test: added e2e tests for count/duration metrics sliced by fields in condition and with/without links. Change-Id: Ie34deba68e6780abdde458be3f0ce5284e76a1a2
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
34ea1103a0faa0e01df0e2b0ac1ce98e7ec3e3f1 |
|
29-Jan-2018 |
Yangster-mac <yanglu@google.com> |
Extend gauge metric to support memory metric. Test: statd unit test passed. Test: statsd unit test passed Change-Id: I2e3f26563678ae77d44afe168454b6d1ea449f3a
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
635b4b37210bd61b73aebf19298e38b8fb382e85 |
|
24-Jan-2018 |
Yangster-mac <yanglu@google.com> |
Do not output empty metric reports. Test: statsd unit test passed. Change-Id: I296edbe621eaea72ad2e1dfe656698302614c0f3
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
468ff04fd4cb43a384a3d4948cccd4438be7202a |
|
17-Jan-2018 |
Yangster-mac <yanglu@google.com> |
Proto change for dimension from condition. Test: all statsd unit tests and cts tests passed. Change-Id: I955143aca7c76e2e22a10d7ba42eb797bd32e147
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
87718e283a62660eaa0e39fd780c97a290da988f |
|
12-Jan-2018 |
Yangster-mac <yanglu@google.com> |
Gauge metric e2e test Test: new test passed Change-Id: I6a8bceb43fbb6e7b82f47951e71b5620779f2ceb
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
fa14c11f05bbc1fce0a416f980e2bdaee3beb8fa |
|
05-Jan-2018 |
Yangster-mac <yanglu@google.com> |
Avoid overwriting bucket in Gauge metric producer as anomaly tracker needs past buckets. Test: statsd unit test passed. Change-Id: I3c76846da169b36c447c77db76b3deeda87e9e6e
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
a070b6a40c95df5b64d195aba1386815fec5d5b7 |
|
04-Jan-2018 |
Yangster-mac <yanglu@google.com> |
Bug fix: gauge metric producer does not need the atom id parameter. Test: statsd unit test passed Change-Id: Ifd1e2f7a05a03886eb227ac1ae0e30b884e49f0c
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
b814481ad1f8d0e429d799b1571a6272e1a7f6c5 |
|
04-Jan-2018 |
Yangster-mac <yanglu@google.com> |
Use TimeUnit enum to specify the bucket size. Test: all statsd unit test passed Change-Id: I4f6b80ba2f8c984b06e46e6de6df3e546e99a968
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
94e197cceb2ba7df13ff8de04f60bfeec64015d9 |
|
03-Jan-2018 |
Yangster-mac <yanglu@google.com> |
1/ Change all "name" to id in statsD. 2/ Handle Subscription for alert. 3/ Support no_report_metric Bug: 69522276 Test: all statsd unit tests passed. Change-Id: I851b235f2d149b8602b0cad632d5bf541962f40a
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
2087716f2bdca90c7c3034d556ac12911bd8018e |
|
23-Dec-2017 |
Yangster-mac <yanglu@google.com> |
1/ Support nested message and repeated fields in statsd. 2/ Filter gauge fields by FieldMatcher. 3/ Wire up wakelock attribution chain. 4/ e2e test: wakelock duration metric with aggregated predicate dimensions. 5/ e2e test: count metric with multiple metric condition links for 2 predicates and 1 non-sliced predicate. Test: statsd unit test passed. Change-Id: I89db31cb068184a54e0a892fad710966d3127bc9
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
d5aa01b3716e07463019fa772f07a40613f9e39e |
|
20-Dec-2017 |
Yao Chen <yaochen@google.com> |
Remove the hacky HashableDimensionKey. + Add a real HashableDimensionKey as a wrapper of the dimension. So we can get rid of the maps that we kept. Pay down technical debt and reduce memory usage. Test: statsd_test & manual Change-Id: I233280cf1e2ce93da6a8cd4e8514abb066f4016d
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
e6abcbed993c81562cddb4122235fc2bcffff8e8 |
|
17-Dec-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Turn off verbose logging, remove the fake config."
|
d9dfda76e0aa8b8aa4d2562a7ff4259f4500e355 |
|
12-Dec-2017 |
Chenjie Yu <cjyu@google.com> |
add feature: GaugeMetricProducer now takes repeated list of fields bug fix: GaugeMetricProducer now works better with pulled events. unit test also includes GaugeMetricProducer_test Test: unit test Change-Id: Ic60f09342d14cfb107be2130d445b323a56909e0
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
3c0b95ceb520c6b23871da90c23f89c55b76b560 |
|
16-Dec-2017 |
Yao Chen <yaochen@google.com> |
Turn off verbose logging, remove the fake config. Test: statsd_test & manual Change-Id: I43068c8db006cbbeccacaa9d8426ab4d0394313a
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
f09569f848ca0b81a21a74e9f4dd8bd9a886151a |
|
14-Dec-2017 |
Yao Chen <yaochen@google.com> |
Further reduce statsd memory usage. + Remove the protobuf *Metric object from MetricProducers -- This saves ~150 bytes per metric. + Remove the StatsdConfig from ConfigManager -- This saves us xKB per config. + Also remove alerts from fake config to avoid crash (Bug: 70627390) + Other misc fixes too. Test: statsd_test & manual Change-Id: Ied4eb3fa31c50599817b3a5e1caf5077c487fad2
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
a7259abde4e89fd91404b14b4845113cd313d1ec |
|
10-Dec-2017 |
Chenjie Yu <cjyu@google.com> |
use running sum for ValueMetricProducer bucket simplify ValueMetricProducer logic for pulled data Test: unit test Change-Id: Ic0a21a543166cc5c34c1fa505dba08d1fc2f510a
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
288c60001330a5a924a47c0eebd6097ae3ee5d67 |
|
12-Dec-2017 |
Yao Chen <yaochen@google.com> |
Only create ProtoOutputStream when onGetData() is called. The exception is EventMetricProducer. Each EventMetricProducer will still have a ProtoOutputStream Because LogEvent comes as a fixed 4K, it's more memory efficient to have an 8k ProtoOutputStream for storing the events. Also removed finish() api in MetricProducer, which was intended to use with Dropbox. Test: statsd_test & dogfood app Bug: 70393808 Change-Id: I2efe4ecc76a88060a9aa5eb49d1fa6ea60bc5da8
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
5c5eebca0e50f5ceb08ad271e4f25731a5b5f95c |
|
07-Dec-2017 |
Yao Chen <yaochen@google.com> |
Fix a deadlock in statsd. Test: manual Change-Id: I7676713f604699737d819ac67fe49bc5b5d8cf98
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
971c8ca6b13a3fd9cfc75c4f9fa037ac6b7bb550 |
|
02-Dec-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "bug fixes * add timestamp to those pull from StatsCompanionService * GaugeMetricProducer unregister from StatsPullerManager when dismissed"
|
032fefc3b547726e675a112baa8d1b6c550ac192 |
|
02-Dec-2017 |
Chenjie Yu <cjyu@google.com> |
bug fixes * add timestamp to those pull from StatsCompanionService * GaugeMetricProducer unregister from StatsPullerManager when dismissed Test: cts test Change-Id: I930179979c146a7407aec3df7e76833f51e9b346
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
f2bee6fec965fd42ab223f1a3aa705f07ba79aea |
|
29-Nov-2017 |
Yangster <yanglu@google.com> |
1/ Only expose thread-safe interfaces in metric producer. 2/ Simplify lock logic. 3/ Add test for duration metric producer. Test: all unit test passsed. Change-Id: If6ee2e69a17f12406f4b3ea3553b14642cd636d6
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
6a8c799d901cbd166aa6463d7dea231bcf594a1e |
|
29-Nov-2017 |
Yao Chen <yaochen@google.com> |
Revert "Thread-safe metric producers." This reverts commit 8de6939c494da838f6dbbda0631f66425dbbd25b. Change-Id: Ieae841bfc5339b569f0fca909a6066de72806617
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
8de6939c494da838f6dbbda0631f66425dbbd25b |
|
27-Nov-2017 |
Yangster <yanglu@google.com> |
Thread-safe metric producers. Test: unit test passed Change-Id: Ie47404e8649b63ee8ac32e40189a47f6cb7a9def
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
b356151e63140085cb96fa16804ee18b3862a4fc |
|
22-Nov-2017 |
Yao Chen <yaochen@google.com> |
Add StatsdStats and guardrail. + StatsdStats is the global class that tracks the stats about statsd. + Added guardrail for classes that have a map which could potentially grow unboundedly with the number of logs. TODO: add unit tests & CTS for StatsdStats, and guardrail add stats for pulled atoms. Test: statsd_test Change-Id: I0ea562de4dd3f6162f7923a9c193420b482c1d51
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
7c334a129e93e405a72e8299a1cd928af079d14f |
|
22-Nov-2017 |
Yangster <yanglu@google.com> |
Make member function as const whenever possible. Test: unit tests passed. Change-Id: I751cabf305a4b5aa2095853cc951837da0df4c78
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
1ff4f4325882d812ded4f75ee6c2b6d352a85c9e |
|
17-Nov-2017 |
Yao Chen <yaochen@google.com> |
Statsd test app. Features: + Push baseline config to statsd + Have buttons to write events to StatsLog (plug/unplug, screen on/off, wake locks) + Dump stats log report, and display it on screen (currently support DurationMetricData display). Test: manual Change-Id: Ia58d215d30ed7570c0aa1b0627d3b88f8355d425
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
e2cd6d509b17894b95d14523ae3e7c4c7a9a74e3 |
|
10-Nov-2017 |
Yangster-mac <yanglu@google.com> |
1/ Duration anomaly tracker with alarm. 2/ Init anomaly from config based on the public language. 3/ Unit tests for anomaly detection in count/gauge producer. 4/ Revisit the duration tracker logic. Test: unit test passed. Change-Id: I2423c0e0f05b1e37626954de9e749303423963f2
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
d1815dc7b82f99259f6c41cfacc44972b867ef2d |
|
14-Nov-2017 |
Yangster-mac <yanglu@google.com> |
Sync statsd to the public proto changes: 1/ use string id/name for all metrics/configs/matchers. 2/ move alerts out of metric proto. Test: unit test passed. Change-Id: I08269f47be30f83f6dbadf873e7d62213449932b
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
b0378b093d9b937fe9a731a601d670d50f263078 |
|
10-Nov-2017 |
yro <yro@google.com> |
1. Add FIELD_COUNT_REPEATED bit masks to repeated fields that were previously missing 2. Resolve segfault when serializing proto into vector of uint8_t 3. Add a local byte size variable for EventMetric data as we cannot call size() of ProtoOutputStream before we finish writing. 4. Replace hardcoded conversion of second to nano second with NS_PER_SEC Test: statsd, statsd_test Change-Id: I47a2ce2b05e6191c18596489682118edcb41e945
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
17adac9cf3e03ad95372eb8657b26909d0414ac0 |
|
09-Nov-2017 |
yro <yro@google.com> |
Finish migrating to use ProtoOutputStream. This change will take the outputs of each MetricProducer's and merge the results into ConfigMetricsReport which holds ConfigKey, repeated field of StatsLogReport, and UidMap. The data will be represented as vector<uint8_t> which can be passed down to binder call for clients to pick up. Also, all unnecessary dependencies to stats_log proto have been removed. Test: statsd, statsd_test Change-Id: Ia69137cbc8613644a892e6be1e87b4858bd39fe3
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
2b0f88678b2877a8e9f83cea60f097322b078367 |
|
06-Nov-2017 |
yro <yro@google.com> |
Migrate all remaining MetricProducers to use ProtoOutputStream Test: statsd, statsd_test Change-Id: I1087e1c1ffb372ca288dfc575cb7a372b11ce8c5
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
93fe3a34a02c673eaee4a2d18565ba8df20685cb |
|
02-Nov-2017 |
Yao Chen <yaochen@google.com> |
Add unit tests for CountMetricProducer, EventMetricProducer And other miscellaneous fixes. + clang-format + 2 bug fixes, one in dump-report command, one in ResourcePowerManagerPuller Test: statsd_test Change-Id: Ibd164d948ad62adcc529d813df1210781e38be47
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|
1d4d686001b220e114df737154f143ffabc212f1 |
|
31-Oct-2017 |
Yangster <yanglu@google.com> |
Gauge metric producer. Test: manual tests passed for pushed device temperature. Change-Id: I7592a4c04666606b745cdb41db8f9d8a96a966da
/frameworks/base/cmds/statsd/src/metrics/GaugeMetricProducer.cpp
|