Age | Commit message (Collapse) | Author |
|
BUG: 175318992
Test: TH
Merged-In: Ia6463c8f6a801cd9db54afa30df0aa3f16b09891
Change-Id: I81324b83802dc2b06081600282bb73491f29473b
Exempt-From-Owner-Approval: cleanup CL
|
|
Bug: 161812407
Test: `m statslog-framework-java-gen`
Test: `m statslog-telephony-java-gen`
Test: `m stats-log-api-gen-test && out/host/linux-x86/nativetest/stats-log-api-gen-test/stats-log-api-gen-test`
Change-Id: Id68982e306fbc379ed8e90b33a38b8a6604e66ad
|
|
Currently, stats-log-api-gen allows statsd clients to send events for
pushed atoms to statsd using a simple auto-generated function call.
Allow support for pulled atoms so that clients no longer have to
hand-construct StatsEvent objects by calling StatsEvent write methods
directly and also making sure that the appropriate annotations are
added. This support is for Java clients only for now.
Bug: 160368804
Test: Ran `m statslog-framework-java-gen` and completed successfully
Test: Ran `m` and completed successfully
Test: Ran `m stats-log-api-gen-test && out/host/linux-x86/nativetest/stats-log-api-gen-test/stats-log-api-gen-test`
Test: Ran `atest CtsStatsdHostTestCases:android.cts.statsd.atom` and all passed except for CTS tests related to a SIM card because the testing device does not have a SIM card
Change-Id: Ie2cbb298690ce71ff7fe7457b17b9d7bdbb24f6b
|
|
Test: m statslog-docsui-java-gen
Bug: 146235828
Change-Id: I5b1a2e0fa356368b91548bd050ec2c493b72f37c
|
|
- Add AnnotationId enum stats-log-api-gen
- Rename RESET_STATE annotation to TRIGGER_STATE_RESET. Also rename the proto annotation.
Bug: 152412767
Test: stats-log-api-gen-test
Test: m statslog-framework-java-gen
Change-Id: I2c12ea0b9222ef28b8cc11ea36b272e518a96259
|
|
Use constant names instead of literals when writing annotations to
increase readability.
FrameworkStatsLog.java: https://paste.googleplex.com/4789132691767296
statslog.h: https://paste.googleplex.com/4986214782337024
statslog.cpp: https://paste.googleplex.com/4856851575341056
Bug: 151786433
Test: m statslog-framework-java-gen
Test: m libstatslog
Change-Id: I47111fe02319bebf41f429642fb675f7a856710b
|
|
Only send reset state annotation when reset state occurs.
Bug: 151776731
Test: m libstatslog
Change-Id: I6f6b4d784d3741c0059085421565eba81db5527c
|
|
Group annotations for the same atom id inside one if-block in generated
code.
Use shared_ptr to store AtomDecls in multiple data structures.
Store a mapping of field numbers to atoms that have annotations at
corresponding field numbers in Collation.h
Bug: 151744250
Test: stats-log-api-gen-test
Test: m stats-log-api-gen
Test: m libstatsmetadata
Test: m statslog-framework-java-gen
Test: m libstatslog
Change-Id: I874696cfb5c27141017b4293bec809ab510ceb98
|
|
Bug: 152253223
Test: m stats-log-api-gen
Test: stats-log-api-gen-test
Change-Id: Iad76baea8cc9ae7b3978f1133ab94d8e96bbbafe
|
|
Mark privacy-sensitive atoms with truncate_timestamp annotation.
Factor out annotation collation to a helper method.
Add truncate_timestamp annotation support in stats-log-api-gen.
Add writeAnnotation* calls in Java and native generated code for
atom id annotations.
TODO: remove kTruncatingTimestampAtoms from atoms_info.
TODO: use truncate_timestamp annotation inside statsd.
Bug: 151111680
Test: stats-log-api-gen-test
Test: m statslog-framework-java-gen
Test: m libstatsmetadata
Change-Id: I3db5f4ffbf959bd36c62f890cc88606912798d40
|
|
Autogenerate annotations for atoms logged in java.
generated FrameworkStatsLog.java:
https://paste.googleplex.com/4789132691767296
Bug: 151102209
Test: m stats-log-api-gen
Test: m statslog-framework-java-gen
Change-Id: I50b01feaacfcb8ad5d0236432ceb0e97c8c907ab
|
|
- Only collate atoms in the specified module.
- Replace signature_to_modules with signatureInfoMap. This maps each
signature to another map keyed by field number and whose values are vector of
annotations.
Bug: 151102006
Test: stats-log-api-gen-test
Change-Id: I25bbe4883c8f7f86a06d04d27cd425367b6d65a0
|
|
Bug: 145100015
Test: m
Change-Id: Idbbe35fbce0d751a5973128406596678e1ead5d3
|
|
As part of getting rid of StatsLogInternal and moving every atom to be
logged from a module, this CL addresses 2 issues:
1. Add WorkSource logging to modules.
2. Gate WorkSource logging via a CLI flag to prevent WorkSource methods
from being included in modules that are Mainline modules and can't have
@hide calls.
Bug: 147541828
Test: m
Test: atest android.cts.statsd.atom.UidAtomTests
Change-Id: Icce2f6ed7298be5e5ceebfb05d87e6fa7cd6bdbb
|
|
API Review requested to remove unneeded allocations so pass null for
arguments that are empty when writing KeyValuePairs
Bug: 146383532
Test: m
Change-Id: Ic1788f65e8c7f837d6800d59c186519a82882bf7
|
|
Don't use Build.VERSION.CODENAME to check for R.
Use Build.VERSION.SDK_INT > Q || (Build.VERSION.SDK_INT == Q &&
Build.VERSION.PREVIEW_SDK_INT > 0)
Bug: 146235828
Test: m DocumentsUIGoogle
Change-Id: I59e327d4e92d41a93b6bea145b8497fd4f85108c
|
|
Add support to generate Q schema code generation only for modules that
ship to Q.
Bug: 145606209
Test: m
Test: flashes successfully
Test: adb logcat "*:S statsd:*"
Change-Id: I978ac321415f1e8d76e4ec73445894965845aaea
|
|
New code generation implementation is flag guarded by
STATS_SCHEMA_LEGACY
Support for Q schema can be added by passing --supportQ flag in
stats_log_api_gen. (Only needed for statslog_resolv.cpp)
Q schema is supported through StatsEventCompat.
Generated R schema statslog.h:
https://paste.googleplex.com/4986214782337024
Generated R schema statslog.cpp:
https://paste.googleplex.com/4856851575341056
Generated R schema statslog_resolv.h:
https://paste.googleplex.com/6062978921136128
Generated R schema statslog_resolv.cpp:
https://paste.googleplex.com/4752329251225600
Generated Q schema statslog.h:
https://paste.googleplex.com/4766729873915904
Generated Q schema statslog.cpp:
https://paste.googleplex.com/5018563779756032
Generated Q schema statslog_resolv.h:
https://paste.googleplex.com/5338897498243072
Generated Q schema statslog_resolv.cpp:
https://paste.googleplex.com/5191011011657728
Test: m -j
Test: flashes successfully
Test: adb logcat inspection
Change-Id: I5675a80c03ca3fbd5cd4a02c04a4b9cb89ec32ab
|
|
|
|
Add usePooledBuffer flag to the Builder which determines whether to reuse
the Buffer's byte array in StatsEvent or use a copy.
The build() function also calls release() on the Buffer
if a copy of the Buffer's byte array is passed to StatsEvent.
Also, for pushed events, release the StatsEvent object and consequently,
the Buffer in StatsLog.write(StatsEvent)
Fixes: 145026572
Fixes: 144126444
Test: bit FrameworksCoreTests:android.util.StatsEventTest
Change-Id: I1cdaf0027b69281cb7cb6f3c8ca923d03829b4dd
|
|
Bug: 143979391
Test: m -j
Change-Id: I93146faa1976cac195c2250832d12ee4a09ae969
|
|
The change is guarded by STATS_SCHEMA_LEGACY flag in the autogenerator
Android.bp.
The flag can only be removed once rest of statsd switches over to the
new socket schema.
The new autogeneration uses StatsEvent for both Mainline module
clients and the default platform client. For Mainline modules, the
autogenerated code uses a runtime dessert version check to use new
socket schema on R+ platforms and the legacy schema on the older
platforms.
The legacy schema is encapsulated in a separate autogenerated inner
class called QLogger.
generated DocumentsStatsLog.java: https://paste.googleplex.com/4665805503463424
generated StatsLogInternal.java: https://paste.googleplex.com/5955095055302656
generated android_util_StatsLogInternal.cpp:
https://paste.googleplex.com/6737331711115264
Bug: 142811546
Test: m -j && m -j DocumentsUIGoogle
Test: Flashes successfully and events are logged to statsd
Change-Id: I4c804eaf4d5ae78001146c89ebe46dfb0a453853
|