Add free memory / swap as well as the kill reason to better understand
and diagnose lmkd behaviour in the field
Test: build with corresponding lmkd change
Bug: 168117803
Merged-In: I190f70758daa442b8605e17960c74574676fa3ae
Change-Id: I190f70758daa442b8605e17960c74574676fa3ae
Define a new pulled atom which will be logged in MediaProvider.
The atom collects general access stats for external storage:
* Total number of accesses
* Total number of file path accesses
* Total number of secondary storage accesses
* List of accesses mime types
Test: build
Test: make statsd_testdrive ; ./out/host/linux-x86/bin/statsd_testdrive \
-p com.google.android.providers.media.module 10085
Bug: 149669087
Change-Id: Ic0ebb040a05ec06603f1a617f290af6a2f21916d
Right now, if an alarm fires exactly on time (within 1 second), or
exactly on a multiple of its period, statsd will reset the alarm for the
same time, which can result a loop of statsd setting an alarm, the alarm
firing, statsd setting an alarm at the same time, etc.
The fix is that if an alarm fires on time, we should move to the next
period.
Test: atest statsd_test (added to a test, which would fail without the
code change)
Bug: 159098080
Change-Id: I150538cb1d3d5a2b943df2a32d92f8f84bb96626
Introduce strategy which uniformly samples OPs, without biasing in
favour of specific ops.
Use this strategy half of the time.
Test: atest RuntimeMessageCollectionTest && statsd_testdrive 10069
Bug: 143519689
Change-Id: I481d3a9ef9c66f04577b57432cecdf2c02055e58
Without this, RANDOM_ONE_SAMPLE would result in statsd dropping all bar the
first shard. Adding the shard id as a dimension field preserves all the
data.
Bug: 158294266
Test: manual build & test
Change-Id: I94ffb610ef3651f460600e3df6b32c87fc430594
This is for migrating keystore logging to use statsd.
Test: Adding tests for logging is yet to be decided.
Change-Id: I66fbc2b8ed98a34f243387f8550b6523b13cb9a2
Bug: 157664923
Previously, if the condition was unknown for the entire bucket, the
bucket would be annotated with a NO_DATA rather than being dropped
because CONDITION_UNKNOWN. This updates all the buckets to be dropped
due to CONDITION_UNKNOWN. Note that this will make the condition unknown
problem appear worse, when in reality it is making our bucket drop
reasons more correct and should not have any impact on the true
CONDITION_UNKNOWN.
Also fix an issue where a test was failing due to a previous test
leaving data persisted to disk. This fix is a hack for now, and should
be properly fixed later.
Bug: 158897179
Test: atest statsd_test
Change-Id: Ic703600d37aa1873ec67cb1a279dcf349d48fc9f
Don't skip buckets with MULTIPLE_SKIPPED_BUCKETS reason for pushed
metric that is not diffed.
Fixes: 156690892
Test: atest --rerun-until-failure=100
CtsStatsdHostTestCases: android.cts.statsd.metric.ValueMetricsTests#testValueMetriccts.statsd.metric.ValueMetricsTests#testValueMetric
Change-Id: Ic14198d38ab63d99700a4df9e9e7ae04181f5139
Use vector<int> instead of vector<bool>.
vector<bool> is not thread-safe:
https://en.cppreference.com/w/cpp/container#Thread_safety
Fixes: 156690351
Test: atest --iterations=500
statsd_test:MultiConditionTrigger#TestMultipleConditions
Change-Id: I9121747ffbee0864afbff993e7fe417104827952
This is to avoid value metrics skipping buckets due to
DUMP_REPORT_REQUESTED, since if the metric needs to include the current
bucket under time constraints and needs to pull, it will drop the bucket
since it cannot pull.
Test: atest statsd_test
Bug: 158879346
Change-Id: Ia61e69530456ce2b3530add03ec6e068ffb25fb5
This would allow StatsLogManager in Launcher to log these events without UiEventLogger.
Test: manual(lunch coral-userdebug && make )
Bug: 158218197
Change-Id: Ifb3a478ad775a594980942d95a51461b1b404873
Change-Id: Ibbd3cbfe361488e9f20e82db12c7522f61f45a8e
Here are some new atoms we added.
1. NetworkIpProvisioningReported
2. NetworkDhcpRenewReported
3. NetworkValidationReported
4. NetworkStackQuirkReported
Test: Run statsd_testdrive
Bug: 151796056
Change-Id: I1268bdbee11a704705d466567e8ba09748b03bb6
Right now if we receive an invalid config update, we keep the existing
config in memory. This makes us remove the existing config so that we
don't have any config for the invalid config key.
Test: atest statsd_test
Bug: 158617758
Change-Id: I9daecb1c96e3a63fea3a45b07d1295f3b4ba452a