blob: 5a2abbb2f69dcc828c585dfaf7c8a87df77efc9c [file] [log] [blame]
This component contains the base classes for the metrics service and only
depends on //base. It is used by ChromeOS as the base for a standalone service
that will upload the metrics when ChromeOS is not installed (headless install).
This is the first step towards the componentization of metrics that will happen
later this spring.
A proposed structure for the metrics component is:
//components/metrics/base,
Depends on base only. Contains the protobuf definitions.
//components/metrics/core
Depends on everything iOS depends on
//components/metrics/content
Depends on content
Ideally, the component would abstract the network stack and have a clean
separation between the metrics upload logic (protbuf generation, retry, etc...),
the chrome part (gathering histogram from all the threads, populating the
log with hardware characteristics, plugin state, etc.).
It is a plus if the code currently in the component (i.e., the code that can
depend only on //base) stays in a single directory as it would be easier
for ChromeOS to pull it :).