)]}'
{
  "log": [
    {
      "commit": "21a039cb8ba0544bbebb04c5b9069f38e8ad1802",
      "tree": "d479688328830e069dd34239419d6448ae37ed6b",
      "parents": [
        "e20cd739c8da023f3e472ee7b6084665c668b523"
      ],
      "author": {
        "name": "Howard Ro",
        "email": "yro@google.com",
        "time": "Mon Aug 06 14:55:47 2018 -0700"
      },
      "committer": {
        "name": "Howard Ro",
        "email": "yro@google.com",
        "time": "Mon Aug 06 14:55:47 2018 -0700"
      },
      "message": "Move GenericAtom from pulled atom group to pushed atom group\n\nTest: no test needed\nChange-Id: I67fb88e6707a8196d379d37d170aa1199abf849a\n"
    },
    {
      "commit": "4c3b325d7b70446e0e87740b0446ae86d8fbceb0",
      "tree": "3eab650db763ce8c364ca2a7c91275efe690d235",
      "parents": [
        "395fd37509b90f9d7624768d457fbef76c672a15",
        "c3f0077cfca33546e215c25e9e2642b989d12d01"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jul 30 16:28:08 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 30 16:28:08 2018 +0000"
      },
      "message": "Merge \"make proto change backwards compatible\""
    },
    {
      "commit": "4481c7c2f54d172878d76f0bb2bab0cb8625b4d4",
      "tree": "b8855f160a9c1ab2ccc370c8c1037ffd7ad5e8a3",
      "parents": [
        "ac70654f9de8eba97cb897aabb999da3516c7eb9",
        "e1361ed422b43c2d097b7bcdef55728e56994c76"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jul 27 21:28:38 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 27 21:28:38 2018 +0000"
      },
      "message": "Merge \"Adjust 1st bucket start time\""
    },
    {
      "commit": "f94dcd98180b83af193cd6a2602676a06f2978e9",
      "tree": "7fed9b54130ad586d16e85f675fd3855089fc5a6",
      "parents": [
        "2866912853d5ed1750c28e200c4b3f12bfcb1c90",
        "de7130bbbb5f95fd84e36c74fe4139ded7428d7f"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jul 27 19:26:46 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 27 19:26:46 2018 +0000"
      },
      "message": "Merge \"Update GenericAtom definition to decouple from metrics_constants proto\""
    },
    {
      "commit": "de7130bbbb5f95fd84e36c74fe4139ded7428d7f",
      "tree": "7a63d84adc1ef8ccfa23920dd3c962844fa29167",
      "parents": [
        "ddc0f7eedc14881cfa4286272f258179e84249a8"
      ],
      "author": {
        "name": "Howard Ro",
        "email": "yro@google.com",
        "time": "Fri Jul 27 10:23:09 2018 -0700"
      },
      "committer": {
        "name": "Howard Ro",
        "email": "yro@google.com",
        "time": "Fri Jul 27 11:01:55 2018 -0700"
      },
      "message": "Update GenericAtom definition to decouple from metrics_constants proto\n\nBug: 110537998\nTest: statsd, statsd_test\nChange-Id: Ib82b90731f7c49a9e27ceff5d5fdb8e2cd6fb4e6\n"
    },
    {
      "commit": "e1361ed422b43c2d097b7bcdef55728e56994c76",
      "tree": "996a52596b67b404e4de2b6127173b2afcb07324",
      "parents": [
        "f0c438c35968ff9a83abbe6c71f73acd92919ea7"
      ],
      "author": {
        "name": "Chenjie Yu",
        "email": "cjyu@google.com",
        "time": "Mon Jul 23 17:33:09 2018 -0700"
      },
      "committer": {
        "name": "Chenjie Yu",
        "email": "cjyu@google.com",
        "time": "Fri Jul 27 10:53:38 2018 -0700"
      },
      "message": "Adjust 1st bucket start time\n\nadjust 1st bucket start time for a partial bucket\nalso make valuemetric and gauge metric pull on first bucket\n\nBug: 111607838\nBug: 111660710\nBug: 111842941\n\nTest: unit test\nChange-Id: I5932c2258f8deac57e7abbf26f3214f87914a964\n"
    },
    {
      "commit": "c3f0077cfca33546e215c25e9e2642b989d12d01",
      "tree": "6990ce98b7e91195911c33c81187eeaff70c0ae7",
      "parents": [
        "f0c438c35968ff9a83abbe6c71f73acd92919ea7"
      ],
      "author": {
        "name": "Chenjie Yu",
        "email": "cjyu@google.com",
        "time": "Thu Jul 26 13:50:58 2018 -0700"
      },
      "committer": {
        "name": "Chenjie Yu",
        "email": "cjyu@google.com",
        "time": "Thu Jul 26 13:54:38 2018 -0700"
      },
      "message": "make proto change backwards compatible\n\nuse [deprecated] rather than reserved as this change is for Q and we\nexpect data from P to come in for a long time.\n\nBug: 111889247\nTest: cts tests that rely on this proto works correctly\nChange-Id: Id64b40ab1566f02fc0e19f617ac58bab3adafab5\n"
    },
    {
      "commit": "6f52d1572daade5e436ed32240757ccb066b086b",
      "tree": "f5f9b2f337573004dda08c6e04d653f29642cef3",
      "parents": [
        "4471744e714e8d26b31126ba8fb7551fbe7cceff"
      ],
      "author": {
        "name": "Olivier Gaillard",
        "email": "gaillard@google.com",
        "time": "Wed Jul 25 12:13:12 2018 +0100"
      },
      "committer": {
        "name": "Olivier Gaillard",
        "email": "gaillard@google.com",
        "time": "Wed Jul 25 23:43:19 2018 +0100"
      },
      "message": "Pull more data from binder calls.\n\nExceptions counts by class name and few new fields for binder calls.\n\n\u003e adb shell cmd stats pull-source 10023\nPull from 10023: { 1532528725000000000 49754068496 (10023)0x10000-\u003ejava.lang.SecurityException[S] 0x20000-\u003e2[I]  }\nPull from 10023: { 1532528725000000000 49754068496 (10023)0x10000-\u003ejava.lang.IllegalArgumentException[S] 0x20000-\u003e16[I]  }\n\nTest: manual\nChange-Id: I4d24528a7df8edde87f629837fb3117a0504d09e\n"
    },
    {
      "commit": "9ea238d2a4641a658d0ca6cbb22a6def0ae8614f",
      "tree": "e05203fe74ea29a30904184dc8b6cacd2a00cfad",
      "parents": [
        "77ad379195cdef01ae0290051622a4c56444180f"
      ],
      "author": {
        "name": "Olivier Gaillard",
        "email": "gaillard@google.com",
        "time": "Tue Jul 24 10:26:31 2018 +0100"
      },
      "committer": {
        "name": "Olivier Gaillard",
        "email": "gaillard@google.com",
        "time": "Tue Jul 24 18:31:37 2018 +0100"
      },
      "message": "Update BinderCalls and add BinderCallsExceptions.\n\nAdd a new field recorded_call_count since binder calls now supports\nrandom sampling.\n\nAdd BinderCallsExceptions to track which exception classes are thrown by\nbinder calls.\n\nTest: n/a (proto changes only)\nChange-Id: I8f9f9a027fd950706112a9deef39ac01cacaa24d\n"
    },
    {
      "commit": "bd1a28f45c5b31409ec2d67a25dd0ffd3fd01448",
      "tree": "6c8db9619407fb00f737ef2f7af525cdf45fa971",
      "parents": [
        "2e8c7670b12ce7075bcc34c1502d268a71f99a0d"
      ],
      "author": {
        "name": "Chenjie Yu",
        "email": "cjyu@google.com",
        "time": "Tue Jul 17 14:55:19 2018 -0700"
      },
      "committer": {
        "name": "Chenjie Yu",
        "email": "cjyu@google.com",
        "time": "Mon Jul 23 14:22:45 2018 -0700"
      },
      "message": "Atoms for ProcStats duration and pss  metrics\n\natom and logging for statsd to mimic procstats process duration metrics.\n\nActivityManagerSleepStateChanged\nMemoryFactorStateChanged\nExcessiveCpuUsageReported\nCachedKillReported\nProcessStateChanged\nProcessMemoryStatReported\n\nSome of the enums will need to use frameworks proto. It is blocked by\nother cls that are cleaning namespace, etc.\n\nBug: 110784286\nBug: 110538804\nBug: 110539297\nBug: 111561536\nBug: 111685402\nBug: 111128767\n\nTest: cts test\nChange-Id: I7502eb0bb36b90f43493b147a35bee48bad1b000\n"
    },
    {
      "commit": "65c72fc53c742ff69743546af215fb6e5e567274",
      "tree": "18d84f295c9dfbef83969dc2b5ceb034750d6073",
      "parents": [
        "4560b6fd1cafce92ec916afd1617be434d54ecd1"
      ],
      "author": {
        "name": "Primiano Tucci",
        "email": "primiano@google.com",
        "time": "Tue Jul 17 16:53:14 2018 +0100"
      },
      "committer": {
        "name": "Primiano Tucci",
        "email": "primiano@google.com",
        "time": "Thu Jul 19 22:46:23 2018 +0000"
      },
      "message": "Remove unnecessary perfetto/perfprofd messages from statsd_config proto\n\nThis change simplifies the on-device statsd_config.proto when\nit comes to handling perfetto and perfprofd configs.\nIn both cases statsd doesn\u0027t need to deserialize or know the schema\nof the nested perfetto/perfprofd configs, because it just passes\nthe binary-encoded message to the corresponding daemons.\nThis change replaces the submessage with a generic \"bytes\" field.\n\nAs per https://developers.google.com/protocol-buffers/docs/proto#updating\n\"Embedded messages are compatible with bytes if the bytes contain an\nencoded version of the message.\"\n\nAdvantages:\n* One less copy of perfetto/perfprofd config around, reducing the risk\n  of getting that out of sync and the corresponding maintenance cost.\n* Reduce the risk of failures within statsd if trying to parse an invalid\n  or outdated config proto.\n* Reduce the CPU usage of statsd, by avoiding deserialization and\n  re-encoding of the config protos.\n* Avoid bugs like b/111448265 where the binary size of statsd inflates\n  if the config protos are too big.\n* Reflect what happens in the statsd code, specifically the fact that\n  statsd only sees the bytes of the config but doesn\u0027t touch/alter its\n  contents.\n\nThis change depends on: aosp/718808 and ag/4569627\n\nBug: 111448265\nTest: Manual + CTS (atest AnomalyDetectionTests#testPerfetto)\nChange-Id: I6ede5fa07c3ab3f71d29d38f2a40a90e88a16fd6\n"
    },
    {
      "commit": "a6b034c093198ac372034d9186cbe695f09417d7",
      "tree": "17b206785da9585e21b55e5f3717171d7ad23fc3",
      "parents": [
        "48a67a4ae714b1cc44e2c24954423fdd6895ae5c",
        "f4be88f780aae009d17244049786cac57701aec0"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jul 17 00:38:36 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 17 00:38:36 2018 +0000"
      },
      "message": "Merge \"Fix timestamp error in GaugeMetric\""
    },
    {
      "commit": "f4be88f780aae009d17244049786cac57701aec0",
      "tree": "13f9ed72a45ed3a65fdf280b4e85585ef3c4e7c5",
      "parents": [
        "c304ce502a699315b5c090a1351a4e85c90dbf3a"
      ],
      "author": {
        "name": "Yao Chen",
        "email": "yaochen@google.com",
        "time": "Mon Jul 16 15:39:18 2018 -0700"
      },
      "committer": {
        "name": "Yao Chen",
        "email": "yaochen@google.com",
        "time": "Mon Jul 16 15:39:18 2018 -0700"
      },
      "message": "Fix timestamp error in GaugeMetric\n\nBug: 111516208\nTest: unit tests pass, manually tested too\nChange-Id: Ia268d3a38c331daab0f96c33461bb7dc794ce610\n"
    },
    {
      "commit": "b4fc58bab7d503939128a154ac5a1851b630a324",
      "tree": "0c8bafa52c16a62518353863145b4d619892a1c3",
      "parents": [
        "e4478825cb8675183ebb9d85d810e780e7381af5",
        "cb767f659c5f3e3350d1619c019ccbff67ad16d2"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Jul 14 09:45:12 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jul 14 09:45:12 2018 +0000"
      },
      "message": "Merge \"Definition of GenericAtom\""
    },
    {
      "commit": "cb767f659c5f3e3350d1619c019ccbff67ad16d2",
      "tree": "373bcfc7b70dee2d20aca2d02da1443770b4b8e2",
      "parents": [
        "af93684515f177975844706f27e8ae1d62a30e2d"
      ],
      "author": {
        "name": "Howard Ro",
        "email": "yro@google.com",
        "time": "Tue Jun 19 19:58:05 2018 -0700"
      },
      "committer": {
        "name": "Howard Ro",
        "email": "yro@google.com",
        "time": "Fri Jul 13 14:41:26 2018 -0700"
      },
      "message": "Definition of GenericAtom\n\nTest: no test is necessary as it only adds a field to atoms.proto\nChange-Id: If4e7c9497d1a4a8ba0fda3e8fb1ef67c525d6e64\nBug: 110537998\n"
    },
    {
      "commit": "a0f0224906059ef4b08656567566654636cdc507",
      "tree": "67446223b2f941cf94438bcbde51376ef7858905",
      "parents": [
        "141d67c3a7b2429db48785b74ef7b6a7fa841254"
      ],
      "author": {
        "name": "Chenjie Yu",
        "email": "cjyu@google.com",
        "time": "Fri Jul 06 16:14:34 2018 -0700"
      },
      "committer": {
        "name": "Chenjie Yu",
        "email": "cjyu@google.com",
        "time": "Fri Jul 13 10:24:41 2018 -0700"
      },
      "message": "ValueMetric supports multiple aggregation types\n\n1. Add support for MIN, MAX, AVG\n2. ValueMetric also allow floats now, in addition to long data type.\nAnomalyDetection still takes long only. I am not sure if it makes\nsense to do anomaly on AVG. I will leave that for later.\n3. ValueMetric supports sliced condition change for pushed events.\nI don\u0027t think it makes sense for pulled events to have sliced condition\nchanges so leave it for now.\n\nTest: unit test\nChange-Id: I8bc510d98ea9b8a6eb16d04ff99dce6b574249cd\n"
    },
    {
      "commit": "00bfb1b95a72ed0798c10bc12f9309422e6ab0bf",
      "tree": "1d80c93ccb24d9100d674132745d1c90dfc0b868",
      "parents": [
        "89b325a9b9127a43a96be1df1992a84404217d23"
      ],
      "author": {
        "name": "Olivier Gaillard",
        "email": "gaillard@google.com",
        "time": "Tue Jul 10 11:25:09 2018 +0100"
      },
      "committer": {
        "name": "Olivier Gaillard",
        "email": "gaillard@google.com",
        "time": "Wed Jul 11 10:44:49 2018 +0100"
      },
      "message": "Collects binder call stats data through WestWorld.\n\nWe require binder calls detailed tracking to be enabled to collect the\nstats (in addition to enabling it in WestWorld).\n\nTest: unit test + manual\n\nadb shell cmd stats pull-source 10022\nPull from 10022: { 1531240941000000000 25807560798 (10022)0x10000-\u003e0[I]\n0x20000-\u003ecom.android.server.StorageManagerService$3[S]\n0x30000-\u003eonVolumePathChanged[S] 0x40000-\u003e1[L] 0x50000-\u003e0[L]\n0x60000-\u003e18490[L] 0x70000-\u003e18490[L] 0x80000-\u003e2611[L] 0x90000-\u003e2611[L]\n0xa0000-\u003e0[L]  } ...\n\nChange-Id: I07cad5d8678426cdac45872cda028ea7a85d7d81\n"
    },
    {
      "commit": "3e2e1ae482d763cb2ec7dfab05adab7f740f5ae3",
      "tree": "4424de1931e005eaee8763e5acfba3db2cb0abc0",
      "parents": [
        "93fae901a2c6910885c78e262f53a8bb557c16e1",
        "5bfffb54daf4ccfd55d78a19a697d675c3df0dbc"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jun 26 17:40:06 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 26 17:40:06 2018 +0000"
      },
      "message": "Merge \"Clean up TODOs in statsd\""
    },
    {
      "commit": "5bfffb54daf4ccfd55d78a19a697d675c3df0dbc",
      "tree": "415ccac383d5a4b9e013a1727f4586e430969a88",
      "parents": [
        "54d7032b78e3b457aa618eb74ae644b95844ca54"
      ],
      "author": {
        "name": "Yao Chen",
        "email": "yaochen@google.com",
        "time": "Thu Jun 21 16:58:51 2018 -0700"
      },
      "committer": {
        "name": "Yao Chen",
        "email": "yaochen@google.com",
        "time": "Mon Jun 25 11:08:04 2018 -0700"
      },
      "message": "Clean up TODOs in statsd\n\n+ Created bugs for those TODOs that are still relevant.\n+ Remove obsolete TODOs.\n\nTest: no code change.\nChange-Id: I41c2a89a882f087817ee6cbc3f095e1d80e1928e\n"
    },
    {
      "commit": "9e4e689f8f9f0b10056a201989f3cab25b206298",
      "tree": "17f5b17fc662c83451ec0675400cca95ca32ab88",
      "parents": [
        "79e27cd27d0d0403da1d0ba22d7cb7e65d0ec8af"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Jun 25 09:59:26 2018 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Jun 25 09:59:26 2018 -0700"
      },
      "message": "Statsd: Update perfprofd config proto location\n\nLink to new location.\n\nBug: 110555909\nTest: m\nChange-Id: I306e1dc740886d1227787604a48158d9f0c3c40a\n"
    },
    {
      "commit": "e22192071d0abccd52091eb3bff07176f4bfb84c",
      "tree": "cdcc9c07db06d19bae63754922e6aa78389e86ae",
      "parents": [
        "b5e98161ddc8f5e5e88719dc4004204832facc31"
      ],
      "author": {
        "name": "Chenjie Yu",
        "email": "cjyu@google.com",
        "time": "Fri Jun 08 10:07:51 2018 -0700"
      },
      "committer": {
        "name": "Chenjie Yu",
        "email": "cjyu@google.com",
        "time": "Thu Jun 14 15:46:54 2018 -0700"
      },
      "message": "StatsPullerManager not use singleton\n\nThis is to be consistent with other patterns such as UidMap.\nThis also makes unit test simpler.\n\nChange-Id: I1558cd609e470481f269ecf2ae616277a95cfbf0\nBug: 72722120\nTest: unit test\n"
    },
    {
      "commit": "6976b764add638c4e29921e18cdbc3f4169850c2",
      "tree": "b4b7127a858343a05932f9e1e340e53fbed7e0af",
      "parents": [
        "ced516b80511cdc9463d2eef5b63a6d2308e6037",
        "0b028b1dc00bdadecd317c930ec01e88b6f2f91d"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jun 05 19:57:10 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 05 19:57:10 2018 +0000"
      },
      "message": "Merge \"Wean Statsd off BatteryStats: Network Power\""
    },
    {
      "commit": "4e0524bf32202848c866693d19f3fd8927128063",
      "tree": "3ed4cc1e66dc6e53f01b0e3c5e9bca0599737988",
      "parents": [
        "f90662feb2808bf0171ab09442faaf7e1f5ae1e8",
        "48f98323ce8c868aa28229c5835a0e7bd5915792"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jun 05 16:40:19 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 05 16:40:19 2018 +0000"
      },
      "message": "Merge changes Iebe457a5,If32da8e6\n\n* changes:\n  Statsd: Add perfprofd call\n  Statsd: Add perfprofd_config proto\n"
    },
    {
      "commit": "0b028b1dc00bdadecd317c930ec01e88b6f2f91d",
      "tree": "a984c6e41916c9ebe34bc117cdd887105045c631",
      "parents": [
        "a5ed99a7ac74116617289b612bed9f8de0a91940"
      ],
      "author": {
        "name": "Bookatz",
        "email": "bookatz@google.com",
        "time": "Thu May 31 16:51:17 2018 -0700"
      },
      "committer": {
        "name": "Bookatz",
        "email": "bookatz@google.com",
        "time": "Fri Jun 01 10:52:36 2018 -0700"
      },
      "message": "Wean Statsd off BatteryStats: Network Power\n\nStatsd calls were sometimes made from BatteryStats, instead of directly\nfrom the source, as a way of getting it running quickly in P. These must\nnow be done properly and separately.\nNote that Statsd needs to be independent of BatteryStats, in preparation\nfor deprecating large parts of BatteryStats.\n\nBug: 80308558\nTest: cts-tradefed run cts-dev -m CtsStatsdHostTestCases\nChange-Id: I54fa54a2dc59dfa68f0e063d7063fac423bf0bf4\n"
    },
    {
      "commit": "3c64886a46ff5419100a49e6cf7d64e9f35a6919",
      "tree": "ebb715490749163b30d1d421cdf86bb9097b42b9",
      "parents": [
        "56b20ec67564e54f283293b50eaf8de04ad48f81"
      ],
      "author": {
        "name": "Bookatz",
        "email": "bookatz@google.com",
        "time": "Fri May 25 13:32:43 2018 -0700"
      },
      "committer": {
        "name": "Bookatz",
        "email": "bookatz@google.com",
        "time": "Fri May 25 14:24:52 2018 -0700"
      },
      "message": "Statsd: ISOLATED_UID_CHANGED out of batterystats\n\nMoves the calls to StatsLog.write for ISOLATED_UID_CHANGED to the\ncalling functions, rather than batterystatsimpl.\n\nBug: 80308558\nTest: none?\nChange-Id: I6fe389c536b2a456907c8a87fae61e9c3434004d\n"
    },
    {
      "commit": "c038bfeebd20737b0bed0761baefcb6614e42144",
      "tree": "2202a1196245d5845d97cdd1e09ceb078bc9b5fa",
      "parents": [
        "10b0fc15a8adeafa22e4bd8929b517da72cdbb6c",
        "02b40158ab970ed334a3387f52e112a2fe79fd71"
      ],
      "author": {
        "name": "Yangster-mac",
        "email": "yanglu@google.com",
        "time": "Mon May 21 12:27:13 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon May 21 12:27:13 2018 -0700"
      },
      "message": "Merge \"Add a field in config to disable/enable the string hashing in metric report.\" into pi-dev am: 76cb7fe2f6\nam: 02b40158ab\n\nChange-Id: I7445eb13283b007738182e2a5ac4808a87124a11\n"
    },
    {
      "commit": "1c58f04cd34291584b7bf2b45a54427e0ef650c8",
      "tree": "dab5a4012531878d059e505525814ae09fa443f4",
      "parents": [
        "644c94f1251b57e9a08196fb660ab909e9afe5a8"
      ],
      "author": {
        "name": "Yangster-mac",
        "email": "yanglu@google.com",
        "time": "Thu May 17 15:52:51 2018 -0700"
      },
      "committer": {
        "name": "Yangster-mac",
        "email": "yanglu@google.com",
        "time": "Fri May 18 10:39:50 2018 -0700"
      },
      "message": "Add a field in config to disable/enable the string hashing in metric report.\n\nStatsd hashes (using its own hashing function) raw strings to reduce the\nupload data size when there are duplicate strings in the report. And in cloud,\nthe clearcut translator would backfill the strings.\n\nIn a few droidfood users, we find the translator was unable to do that. While\ndebugging the root cause, we first decided to provide an option to disable\nthe hashing from the cloud.\n\nTest: statsd unit test, CTS test, tested manually\n\nBUG: b/79943763\nChange-Id: If0359c8cf3f3cf83a2938db9ebf95ea7906f0b0c\n"
    },
    {
      "commit": "cded731bcca5dc92c02a833d78577300ed42ea0e",
      "tree": "ad2885aad83fdb5be4693ec8965321229238d594",
      "parents": [
        "cae068a81c53e2ae1b99f379efac528b6542662d",
        "dcc56f980aba15250366425729bb0c49ead8a2b6"
      ],
      "author": {
        "name": "Chenjie Yu",
        "email": "cjyu@google.com",
        "time": "Thu May 17 16:01:25 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu May 17 16:01:25 2018 -0700"
      },
      "message": "Merge \"ValueMetric pushed events should check condition\" into pi-dev am: 644c94f125\nam: dcc56f980a\n\nChange-Id: I96f45a327004da4f476c0cb017e532c28a5b4a6d\n"
    },
    {
      "commit": "021e25307d815452ceee7e189b36c7072b53c1df",
      "tree": "caa3684afb08cc12867aace6e7da051ece9bf988",
      "parents": [
        "98c2f7f9de9ada08b8d27243a243a17748282813"
      ],
      "author": {
        "name": "Chenjie Yu",
        "email": "cjyu@google.com",
        "time": "Wed May 16 12:23:07 2018 -0700"
      },
      "committer": {
        "name": "Chenjie Yu",
        "email": "cjyu@google.com",
        "time": "Wed May 16 14:50:11 2018 -0700"
      },
      "message": "ValueMetric pushed events should check condition\n\n+ fix unit test flakiness\n\nBug: 79873404\nChange-Id: I15b52a79b18c05603640781e4450e7b62fac24ba\nFix: 79873404\nTest: unit test\n"
    },
    {
      "commit": "48f98323ce8c868aa28229c5835a0e7bd5915792",
      "tree": "777c688d7d0615e2142f070efffb3bfca9b3a9a7",
      "parents": [
        "ca1fb02e0c67b4d0fd01b7b682148634697c1fd1"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue May 08 10:34:55 2018 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed May 16 09:21:17 2018 -0700"
      },
      "message": "Statsd: Add perfprofd call\n\nAdd the binder call to perfprofd to start profiling.\n\nBug: 73175642\nTest: mmma frameworks/base/cmds/statsd\nChange-Id: Iebe457a5fd2f42ed86fbb5cd075bea32965234d1\n"
    },
    {
      "commit": "ca1fb02e0c67b4d0fd01b7b682148634697c1fd1",
      "tree": "55c954ef0b73bdad78ffda22ffebc2d830eb2af0",
      "parents": [
        "39e3d378d70ec99e7fda48cb0010e6a43aaf1111"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon May 07 09:10:21 2018 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed May 16 09:21:17 2018 -0700"
      },
      "message": "Statsd: Add perfprofd_config proto\n\nUse a link until the configuration is moved to blueprint, at which\npoint a filegroup should be used.\n\nBug: 73175642\nTest: mmma frameworks/base/cmds/statsd\nChange-Id: If32da8e614a2308f473d0cbd9d8b7ab441905619\n"
    },
    {
      "commit": "56bd86bfdaa8a630cf08ac3b7dc2a773d4f9636f",
      "tree": "defb3f21f9522fb074976db2bd209204a3daf8a2",
      "parents": [
        "9ba45e0216727a539f7c76ca5c9c5aea8e745bed",
        "fcac66945b375159696a405780e0771a9a0306a0"
      ],
      "author": {
        "name": "David Chen",
        "email": "dwchen@google.com",
        "time": "Tue May 15 19:54:54 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue May 15 19:54:54 2018 -0700"
      },
      "message": "Merge \"Fixes Value metrics in statsd and app upgrades.\" into pi-dev am: c9076fac9b\nam: fcac66945b\n\nChange-Id: I69ec35986b48e33b61a93dca78b0aa4dff2a9ce8\n"
    },
    {
      "commit": "c9076fac9beecc54a72ed29199efe7ccbf99a8ba",
      "tree": "8627ffc663285b770d06e05faedf30ebb092cabe",
      "parents": [
        "a0b6b5033da5db04e7a2de86265f5186544a5890",
        "092a5a9b85782afc2045087f9f29dfda16070f13"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed May 16 02:27:37 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 16 02:27:37 2018 +0000"
      },
      "message": "Merge \"Fixes Value metrics in statsd and app upgrades.\" into pi-dev"
    },
    {
      "commit": "092a5a9b85782afc2045087f9f29dfda16070f13",
      "tree": "bedbd5b08c5213a32ce0d643a7bdf4ff663163ce",
      "parents": [
        "4fd9dc11d018901714e08e5c040558da6d886d54"
      ],
      "author": {
        "name": "David Chen",
        "email": "dwchen@google.com",
        "time": "Tue May 15 17:50:32 2018 -0700"
      },
      "committer": {
        "name": "David Chen",
        "email": "dwchen@google.com",
        "time": "Tue May 15 17:51:47 2018 -0700"
      },
      "message": "Fixes Value metrics in statsd and app upgrades.\n\nPulled value metrics with conditions had a subtle bug that caused\nus to leave the condition on even if it should\u0027ve been false.\n\nBug: 79778783\nTest: Added unit-test and verified on marlin-eng.\nChange-Id: I31f34791118319b3471f7a6ea8a024e2d511cfe7\n"
    },
    {
      "commit": "fc5e3bc1a7fbee889f0a0a94f8bf54cf584971db",
      "tree": "1f529c2e038835035ae16ff67ba2273448324326",
      "parents": [
        "66acf8d4a29d499351741956974a80c613088f67",
        "315211c74bcd0c68730e0b7f678d8e5215f2f919"
      ],
      "author": {
        "name": "Chenjie Yu",
        "email": "cjyu@google.com",
        "time": "Mon May 14 16:10:18 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon May 14 16:10:18 2018 -0700"
      },
      "message": "Merge \"Configurable data error action in value metric\" into pi-dev am: 5ca38cafe8\nam: 315211c74b\n\nChange-Id: Iafca516e23b063bab59e751cecbea9ef9e25c1bd\n"
    },
    {
      "commit": "47234644caf0f2a1aac3a1db8c548b1a25b1cfe2",
      "tree": "836fc5ffa2330e667f558a26a6949712f8953886",
      "parents": [
        "d19cc3d7ea8784b1468e4d91d727bab34a354a30"
      ],
      "author": {
        "name": "Chenjie Yu",
        "email": "cjyu@google.com",
        "time": "Mon May 14 10:14:16 2018 -0700"
      },
      "committer": {
        "name": "Chenjie Yu",
        "email": "cjyu@google.com",
        "time": "Mon May 14 13:50:25 2018 -0700"
      },
      "message": "Configurable data error action in value metric\n\nRight now in value metric, if a later pull produces a smaller number\nthan the previous one, we use absolute value of the current value.\nThis is not correct for some atoms as listed in the CL, which should\njust take 0.\nFor some other atoms, this is unexpected error and should just dump\nstale data.\n\nTest: manual test\nBug: 79265262\nChange-Id: I59fbfd96cbb57be22cd8d21cb57a7c60ca6856ee\n"
    },
    {
      "commit": "ef68bf057fd0fad4613dd12873f35eb36197f144",
      "tree": "8b0047e578e9f0a4425a3d0ab8188ecf11e9677b",
      "parents": [
        "bf0f709aa49b8b52c12c55af51014707bcff0905",
        "2d41c7d382e7eac84ecfaefed20855f1fd5375f6"
      ],
      "author": {
        "name": "Yangster-mac",
        "email": "yanglu@google.com",
        "time": "Fri May 11 20:23:49 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri May 11 20:23:49 2018 -0700"
      },
      "message": "Merge \"Guardrail the max gauge atoms per dimension in one bucket.\" into pi-dev am: 67cee97754\nam: 2d41c7d382\n\nChange-Id: I59c218fe5048f2d9e828f6f4f621b031cd424acd\n"
    },
    {
      "commit": "67cee97754fc7fa7810baafdf1c94302384d90f3",
      "tree": "56aafbc428211e04bc02257355fe5f9c947bceb2",
      "parents": [
        "50a5e71bf3079b415b270f8aedf06d2471d34203",
        "50b0c9a6082417034514d68a079248ce09957027"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat May 12 03:03:01 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat May 12 03:03:01 2018 +0000"
      },
      "message": "Merge \"Guardrail the max gauge atoms per dimension in one bucket.\" into pi-dev"
    },
    {
      "commit": "bf0f709aa49b8b52c12c55af51014707bcff0905",
      "tree": "65eaaade5be235b46a93645bc14eebafd550e3bc",
      "parents": [
        "ccc10afddf4085554952294302990d4429750b99",
        "efe26104b30218ffe0d4b7b14055d4c758c66fae"
      ],
      "author": {
        "name": "David Chen",
        "email": "dwchen@google.com",
        "time": "Fri May 11 20:01:47 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri May 11 20:01:47 2018 -0700"
      },
      "message": "Merge \"Fixes statsd reports missing strings and SCS.\" into pi-dev am: 50a5e71bf3\nam: efe26104b3\n\nChange-Id: Ied3e488c357ce30206aa80179a8d204204ff07a4\n"
    },
    {
      "commit": "50b0c9a6082417034514d68a079248ce09957027",
      "tree": "5a1b06aeba3077358f0a03ced79686be3f168c64",
      "parents": [
        "733826f8e3b342616ca44bf95aecef9f9295b8e6"
      ],
      "author": {
        "name": "Yangster-mac",
        "email": "yanglu@google.com",
        "time": "Thu May 10 17:13:12 2018 -0700"
      },
      "committer": {
        "name": "Yangster-mac",
        "email": "yanglu@google.com",
        "time": "Fri May 11 17:15:44 2018 -0700"
      },
      "message": "Guardrail the max gauge atoms per dimension in one bucket.\n\nTest: statsd\nBUG: b/78603347\nChange-Id: Ide77cc8ff0cde6cf6cc9e56034727ed27dd7be88\n"
    },
    {
      "commit": "56ae0d9a48212c6e886e5887a6f9191f3020af40",
      "tree": "bd522d30960d154169b65791791b1bccecd5e6b3",
      "parents": [
        "26111fc8997ef36ff9c7a368a09ab1e9aefe21b1"
      ],
      "author": {
        "name": "David Chen",
        "email": "dwchen@google.com",
        "time": "Fri May 11 16:00:22 2018 -0700"
      },
      "committer": {
        "name": "David Chen",
        "email": "dwchen@google.com",
        "time": "Fri May 11 17:04:56 2018 -0700"
      },
      "message": "Fixes statsd reports missing strings and SCS.\n\nReports written to disk don\u0027t contain the strings used, which will\nmake this report unusable if there are strings that don\u0027t show up\nagain. We should always include the strings, so this option is\nremoved entirely.\n\nAlso, we hard-coded the wrong number of fields when pulling\nModemActivityInfo. There are actually 10 fields, not 6.\n\nBug: 79601503\nTest: Tested unit-tests pass on marlin-eng.\nChange-Id: I6834b096ced77418a9cc2ddd79b08d1c9c447fae\n"
    },
    {
      "commit": "0353819e3eb4f4af23d3e79f3815b218b9a66fd4",
      "tree": "6f65db83dda9ed3479942862ae514170462aba4d",
      "parents": [
        "932499631223e5d03af61e48b399e4efd37a38d5",
        "018765f4caabfe8e36339a45310ca1839486b6d3"
      ],
      "author": {
        "name": "Yangster-mac",
        "email": "yanglu@google.com",
        "time": "Wed May 09 20:03:55 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed May 09 20:03:55 2018 -0700"
      },
      "message": "Merge \"Fix the gauge metric data size estimation.\" into pi-dev am: 3b592910c5\nam: 018765f4ca\n\nChange-Id: Ie878c5b50a2c11f85283d1108a6af08b071110b6\n"
    },
    {
      "commit": "932499631223e5d03af61e48b399e4efd37a38d5",
      "tree": "3fccf73dfd67c1a1584461cbb3686298c8f5dd7b",
      "parents": [
        "205fbfd22038a84b9449c625a2741c046498fbd1",
        "85d7b2a060c7b0a6036fcf30b46eabdfb611833a"
      ],
      "author": {
        "name": "Yang Lu",
        "email": "yanglu@google.com",
        "time": "Wed May 09 19:59:14 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed May 09 19:59:14 2018 -0700"
      },
      "message": "Merge \"Add a sampling method to pull gauge when condition changes to true.\" into pi-dev am: c2f44a19b2\nam: 85d7b2a060\n\nChange-Id: I0ca761b2a13c95c86c604873d80597ba91a3d8bb\n"
    },
    {
      "commit": "3b592910c50856a3b28a07a735c31e19f44bc460",
      "tree": "9e6bec6f184b360cd32c7579823a3dee95f487b3",
      "parents": [
        "c2f44a19b29ba7cbe1e114b7233a99ef70dedbb5",
        "b2532daf4d9922b706054705b8dbf94a9df6a191"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu May 10 02:43:20 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 10 02:43:20 2018 +0000"
      },
      "message": "Merge \"Fix the gauge metric data size estimation.\" into pi-dev"
    },
    {
      "commit": "c2f44a19b29ba7cbe1e114b7233a99ef70dedbb5",
      "tree": "46393e53cde72db4d1de9bfc3f99489358b3f6af",
      "parents": [
        "3f57b16deb78134cf4690819a844f4d941c01710",
        "ec3c7a3e58757a23afbb494b5fd9f1a1081fa495"
      ],
      "author": {
        "name": "Yang Lu",
        "email": "yanglu@google.com",
        "time": "Thu May 10 02:37:49 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 10 02:37:49 2018 +0000"
      },
      "message": "Merge \"Add a sampling method to pull gauge when condition changes to true.\" into pi-dev"
    },
    {
      "commit": "54db2eb0cfe2b491ca5699b8542cd8c1aa9e02fa",
      "tree": "c0ef060cb5fbe27ccce4555c5e6a0b9f3138b29c",
      "parents": [
        "715b5be177fbda0bc44e658700100f421d74abc1",
        "ef16759cdd104963fdad9550c43013d3ea2c4e14"
      ],
      "author": {
        "name": "yro",
        "email": "yro@google.com",
        "time": "Wed May 09 19:24:10 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed May 09 19:24:10 2018 -0700"
      },
      "message": "Merge \"Skip writing metrics to disk if it\u0027s entirely composed of no_report_metric\" into pi-dev am: 3f57b16deb\nam: ef16759cdd\n\nChange-Id: I68f6ff7f259acd0ac43c7e34bf259e35bcc2fd1a\n"
    },
    {
      "commit": "3f57b16deb78134cf4690819a844f4d941c01710",
      "tree": "e15347c22a5db1dea81921f49c20ccb3f544fc0b",
      "parents": [
        "7c3c4d38a9e0e39c1c4e2a9ed812465690c530bc",
        "028091cb15f5e8290eed77a222582162d19a3d87"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu May 10 02:02:37 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 10 02:02:37 2018 +0000"
      },
      "message": "Merge \"Skip writing metrics to disk if it\u0027s entirely composed of no_report_metric\" into pi-dev"
    },
    {
      "commit": "b2532daf4d9922b706054705b8dbf94a9df6a191",
      "tree": "2a2f4e30358e63847a4405dec478412ee5168717",
      "parents": [
        "689866352b2e36fb10128244c19a671b4bc1fdc5"
      ],
      "author": {
        "name": "Yangster-mac",
        "email": "yanglu@google.com",
        "time": "Wed Apr 11 13:55:04 2018 -0700"
      },
      "committer": {
        "name": "Yang Lu",
        "email": "yanglu@google.com",
        "time": "Wed May 09 23:14:26 2018 +0000"
      },
      "message": "Fix the gauge metric data size estimation.\n\nTest: statsd test\nBUG: b/77906846\nChange-Id: Ie5ab54771acadde1e825289fe5ec491cc2225458\n"
    },
    {
      "commit": "028091cb15f5e8290eed77a222582162d19a3d87",
      "tree": "fcb1aaa08f739b685bd137e2f033ad0bea8d5404",
      "parents": [
        "414be0b1cb5df6da8d595b63db85bc918a864192"
      ],
      "author": {
        "name": "yro",
        "email": "yro@google.com",
        "time": "Wed May 09 16:03:27 2018 -0700"
      },
      "committer": {
        "name": "yro",
        "email": "yro@google.com",
        "time": "Wed May 09 16:03:27 2018 -0700"
      },
      "message": "Skip writing metrics to disk if it\u0027s entirely composed of\nno_report_metric\n\nTest: unit test, cts\nBug: 79488249\nChange-Id: I3e13a6271cc36665a43d0f09d8663e5996224477\n"
    },
    {
      "commit": "ec3c7a3e58757a23afbb494b5fd9f1a1081fa495",
      "tree": "e5c9f499c1a51f20483323299b7b02b811ff03a0",
      "parents": [
        "64307ea578b102215f77d28b1669621bcadd5fc1"
      ],
      "author": {
        "name": "Yangster",
        "email": "yanglu@google.com",
        "time": "Wed May 09 15:51:07 2018 -0700"
      },
      "committer": {
        "name": "Yangster",
        "email": "yanglu@google.com",
        "time": "Wed May 09 16:02:35 2018 -0700"
      },
      "message": "Add a sampling method to pull gauge when condition changes to true.\n\nTest: statsd test\n\nBUG: b/79490890\nChange-Id: I82ed6681151f8a217e74bd0d855f817b4fa0619c\n"
    },
    {
      "commit": "21f0b3abeafb507a176e32900ec5d6f261149a74",
      "tree": "e831c936795250d189aa17871c9fe3c668133fe5",
      "parents": [
        "3183470221f88a7171c62eb001a5fb2dad3cc6e4",
        "b0828d55e5a738a9300f73da366aba0846a4ea10"
      ],
      "author": {
        "name": "Chenjie Yu",
        "email": "cjyu@google.com",
        "time": "Tue May 08 18:15:01 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue May 08 18:15:01 2018 -0700"
      },
      "message": "Merge \"fix cts error on x86 simulator\" into pi-dev am: 9743fae2d9\nam: b0828d55e5\n\nChange-Id: Id25dc7960e984e99328fcbbdc729c29021677e3e\n"
    },
    {
      "commit": "9743fae2d97909f83e9f3a1338f7811bce95f120",
      "tree": "979e922cfe305e4eb092de4af3aef892c10fc1e5",
      "parents": [
        "0d3a6dee7fb31db268368e5048bca826fdcdd7c4",
        "3b3adcd8b617803e276b793112f55494a84a89df"
      ],
      "author": {
        "name": "Chenjie Yu",
        "email": "cjyu@google.com",
        "time": "Wed May 09 00:53:09 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 09 00:53:09 2018 +0000"
      },
      "message": "Merge \"fix cts error on x86 simulator\" into pi-dev"
    },
    {
      "commit": "3183470221f88a7171c62eb001a5fb2dad3cc6e4",
      "tree": "cc1adae3475e39e140c568be5efb637331710768",
      "parents": [
        "b48b876969425e0eef0f9be81c60a0216c404d29",
        "30b2280bbe2477beff256906b8c1c975cbad1b14"
      ],
      "author": {
        "name": "android-build-team Robot",
        "email": "android-build-team-robot@google.com",
        "time": "Tue May 08 17:42:52 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue May 08 17:42:52 2018 -0700"
      },
      "message": "Merge \"Fix statsd returning uidmap with empty reports.\" into pi-dev am: 0d3a6dee7f\nam: 30b2280bbe\n\nChange-Id: I27d74b551c56552542a2f56c64fb8326fabb9a9a\n"
    },
    {
      "commit": "0d3a6dee7fb31db268368e5048bca826fdcdd7c4",
      "tree": "18daea12cd850b1ab656e2887f1eb128cc43d3bf",
      "parents": [
        "64307ea578b102215f77d28b1669621bcadd5fc1",
        "9e6dbbdadf8de3bcc58a6c26784219217cd35b53"
      ],
      "author": {
        "name": "android-build-team Robot",
        "email": "android-build-team-robot@google.com",
        "time": "Wed May 09 00:25:31 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 09 00:25:31 2018 +0000"
      },
      "message": "Merge \"Fix statsd returning uidmap with empty reports.\" into pi-dev"
    },
    {
      "commit": "1515a28eeda9d557b083addd06fbce721f97036b",
      "tree": "24f01590a015b58650d08f0ad3645d209d2b9dcd",
      "parents": [
        "47c658c034563cfd18fa9739289d31ba541173ad",
        "6a748eee30e15b9202e0b5264723aa5c3f5f43cd"
      ],
      "author": {
        "name": "android-build-team Robot",
        "email": "android-build-team-robot@google.com",
        "time": "Tue May 08 16:55:17 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue May 08 16:55:17 2018 -0700"
      },
      "message": "Merge \"Should not use the absolute value when the value does not change.\" into pi-dev am: 64307ea578\nam: 6a748eee30\n\nChange-Id: I8c3a1f81ef65bc0af8fcb8dbbb832c5cf2b80285\n"
    },
    {
      "commit": "3b3adcd8b617803e276b793112f55494a84a89df",
      "tree": "274c49b860264fe5c3f02fcfe23836ae1f7a25d5",
      "parents": [
        "ac10be860f922039169c8e6655f0816568fc8b25"
      ],
      "author": {
        "name": "Chenjie Yu",
        "email": "cjyu@google.com",
        "time": "Wed Apr 18 16:25:36 2018 -0700"
      },
      "committer": {
        "name": "Chenjie Yu",
        "email": "cjyu@google.com",
        "time": "Tue May 08 15:40:01 2018 -0700"
      },
      "message": "fix cts error on x86 simulator\n\nBug: 78242568\nFix: 78242568\n\nTest: cts test\nChange-Id: I235991c7c5b7c5a0d660ebaaff1356cc69fd1854\n"
    },
    {
      "commit": "613a7e2a7dc7f7e9f215390fd5138187c7d17b3c",
      "tree": "c887da8c968ab4f43d67490a82051218c2fa1e68",
      "parents": [
        "8ea760c8158b27129a9838338d209d8841be0cc0"
      ],
      "author": {
        "name": "Yangster",
        "email": "yanglu@google.com",
        "time": "Tue May 08 15:12:30 2018 -0700"
      },
      "committer": {
        "name": "Yangster",
        "email": "yanglu@google.com",
        "time": "Tue May 08 15:12:30 2018 -0700"
      },
      "message": "Should not use the absolute value when the value does not change.\n\nTest: statsd test\n\nBUG: b/79265262\nChange-Id: Ic654e1a07a505ec0e073a41fb41bcd38a29b125e\n"
    },
    {
      "commit": "88daf748ac170b186f2e0097c98272ca1606e777",
      "tree": "3bcace7006c405bbaeb7f1209026e81526ac79d6",
      "parents": [
        "8e44dc88e40484e5fa3050a74852e978aa2ba87d",
        "0e4b1c1bee4a399a9644b7c66aa9ad1c9a3242b5"
      ],
      "author": {
        "name": "Yang Lu",
        "email": "yanglu@google.com",
        "time": "Mon May 07 18:51:22 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon May 07 18:51:22 2018 -0700"
      },
      "message": "Merge \"Fixes statsd returning too much data at once.\" into pi-dev am: cdb093e080\nam: 0e4b1c1bee\n\nChange-Id: Ia470a56187612d4607737410f1abfc8ffac17581\n"
    },
    {
      "commit": "9e6dbbdadf8de3bcc58a6c26784219217cd35b53",
      "tree": "19a27b3f7e37ef8bddb6eb17d871246a6d93075f",
      "parents": [
        "efaec53af9722b5c3282f8f41f6e9aa764eb0b07"
      ],
      "author": {
        "name": "David Chen",
        "email": "dwchen@google.com",
        "time": "Mon May 07 17:52:29 2018 -0700"
      },
      "committer": {
        "name": "David Chen",
        "email": "dwchen@google.com",
        "time": "Mon May 07 18:07:19 2018 -0700"
      },
      "message": "Fix statsd returning uidmap with empty reports.\n\nWe notice devices uploading a bunch of bytes for the uidmap even if\nthe device is running an empty config, so there are no actual metrics\nto report. This hardcodes some logic to skip the inclusion of the\nuidmap if there are exactly 0 metrics.\n\nBug: 79381210\nTest: Tested unit-tests on marlin-eng\nChange-Id: I96348235341a7faf15ff57d4d1eccac635a3a999\n"
    },
    {
      "commit": "76e3dbf0bdc3e5b995767f5d88324ffb953405dc",
      "tree": "daada0e6fe8e7d7486524dad4e88b78790ecd8bd",
      "parents": [
        "02e10178d662520eb72c65765dd1f1efaa7d935f",
        "e68a729b083d702893fa1c391852b44870204b7c"
      ],
      "author": {
        "name": "Howard Ro",
        "email": "yro@google.com",
        "time": "Mon May 07 17:12:11 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon May 07 17:12:11 2018 -0700"
      },
      "message": "Merge \"Re-enable the logging of APP_BREADCRUMB_REPORTED atom\" into pi-dev am: 7ca1b03ece\nam: e68a729b08\n\nChange-Id: Ie15622ace2952c7ab30047b7935a1d03bfa31a1c\n"
    },
    {
      "commit": "cdb093e080cb84b1a656e0a994a6c73b2f5657b7",
      "tree": "d24be778e3e57d35234cf30f7cb717651f6b633a",
      "parents": [
        "35424828755937b9457f5f8c0972793b4b6945ff",
        "48944901f7e6334724efadda6c6b27d9e88fc9e2"
      ],
      "author": {
        "name": "Yang Lu",
        "email": "yanglu@google.com",
        "time": "Mon May 07 23:49:54 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon May 07 23:49:54 2018 +0000"
      },
      "message": "Merge \"Fixes statsd returning too much data at once.\" into pi-dev"
    },
    {
      "commit": "be6d7f90e8487f16e9459011f3b85ca354429f14",
      "tree": "7b4cb67d6fab0687ea10421fcce3313aa5d09977",
      "parents": [
        "f7416d1fe0f906d7bec1db767de2ab1ec4bb1026"
      ],
      "author": {
        "name": "yro",
        "email": "yro@google.com",
        "time": "Fri May 04 13:02:53 2018 -0700"
      },
      "committer": {
        "name": "yro",
        "email": "yro@google.com",
        "time": "Sun May 06 22:25:05 2018 -0700"
      },
      "message": "Re-enable the logging of APP_BREADCRUMB_REPORTED atom\n\nBug: 78613419\nTest: manual, cts, unit tests\nChange-Id: I279158c8031eda3ee648053ae6a0d13fde7f1176\n"
    },
    {
      "commit": "48944901f7e6334724efadda6c6b27d9e88fc9e2",
      "tree": "10a4c19530b68bd17727694622f3d712c74aeae4",
      "parents": [
        "11969b49191cfa156ada8d5034d5d39c2b77dc69"
      ],
      "author": {
        "name": "David Chen",
        "email": "dwchen@google.com",
        "time": "Thu May 03 10:29:11 2018 -0700"
      },
      "committer": {
        "name": "Yao Chen",
        "email": "yaochen@google.com",
        "time": "Fri May 04 17:09:16 2018 -0700"
      },
      "message": "Fixes statsd returning too much data at once.\n\nWe observe a single ConfigMetricsReportList can be greater than the\nsafe size for the binder transaction buffer since we only check the\nsize of the current metrics in progress, but we also return the\nprevious reports stored on disk.\n\nThis change will attempt to send another ConfigMetricsReportList\nas soon as possible if there\u0027s already a report on disk.\n\nAlso fixes a bug when trying to trigger data fetch before the client\nhas registered the corresponding dataFetchOperation.\n\nBug: 79201869\nTest: Tested manually on marlin-eng\nChange-Id: I2d3677162804a27e7a7a95d482d80c46bd994a67\n"
    },
    {
      "commit": "46ab2531f3a4644659c238984989aa845f40042b",
      "tree": "b8e57b5f50f34b19dc3779d8830c19fd447617c4",
      "parents": [
        "441d76894f96eebb36dd3c7f900406c3107889a2",
        "60bb3fe68dc5710d4a80b619c964452e01fab08b"
      ],
      "author": {
        "name": "Yao Chen",
        "email": "yaochen@google.com",
        "time": "Fri May 04 13:55:30 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri May 04 13:55:30 2018 -0700"
      },
      "message": "Merge \"Add cmd to let statsd print all logs it received for debugging.\" into pi-dev am: a62ae51ba9\nam: 60bb3fe68d\n\nChange-Id: If312f25ecbb27385b9b6ecc4a3e73ee7e90522bc\n"
    },
    {
      "commit": "a62ae51ba91bd6bd9dc4327aa8dd5e61f721faff",
      "tree": "6503370d00402b9b6cc98f947c487b4dfb6744bc",
      "parents": [
        "dcd71294a40262f38b11e26c470a4f470925b7fd",
        "876889cb760e99221c2fd77c7d67d5409bda0bc7"
      ],
      "author": {
        "name": "Yao Chen",
        "email": "yaochen@google.com",
        "time": "Fri May 04 20:21:18 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 04 20:21:18 2018 +0000"
      },
      "message": "Merge \"Add cmd to let statsd print all logs it received for debugging.\" into pi-dev"
    },
    {
      "commit": "b096a34428b5b599f409afeadef7fdbe625ab270",
      "tree": "242548813ce16a8fb40dd64a6c1ac6a0739b79aa",
      "parents": [
        "7b744af70f9a1d9b0ca1c133f5e5c7e0551c9111",
        "c1d985cf8b1390b5154710b8b324990073145de9"
      ],
      "author": {
        "name": "android-build-team Robot",
        "email": "android-build-team-robot@google.com",
        "time": "Thu May 03 20:15:56 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu May 03 20:15:56 2018 -0700"
      },
      "message": "Merge \"Reset statsd and correctly record the dump reason when system server restarts/crashes.\" into pi-dev am: ec41a069fd\nam: c1d985cf8b\n\nChange-Id: I4df0cd841757ed13a9f7bf0f5bbf4d2df8ff0fb2\n"
    },
    {
      "commit": "7b744af70f9a1d9b0ca1c133f5e5c7e0551c9111",
      "tree": "0abc9b8a754ddf1e32485b4a4f89ce54d63cc0d0",
      "parents": [
        "93e1c0e5d083c46771288a17f7bc653667c3003d",
        "77e1d3fc958bf67d242cd8c4847c12d146bac1af"
      ],
      "author": {
        "name": "android-build-team Robot",
        "email": "android-build-team-robot@google.com",
        "time": "Thu May 03 20:07:48 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu May 03 20:07:48 2018 -0700"
      },
      "message": "Merge \"Turns DEBUG to false in statsd.\" into pi-dev am: 1e9761df82\nam: 77e1d3fc95\n\nChange-Id: I59e2723e423748e24a5985d7db8377ce0588aef0\n"
    },
    {
      "commit": "ec41a069fd30d02de6d6b1db6aa150e94ade504d",
      "tree": "656a7640594fa66d0cb1dc12a5021551870a88a1",
      "parents": [
        "1e9761df822b012fb4b64d9e07d333ff3751fdfb",
        "892f3d32293b8358c72da4a94633827abbda640b"
      ],
      "author": {
        "name": "android-build-team Robot",
        "email": "android-build-team-robot@google.com",
        "time": "Fri May 04 02:43:03 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 04 02:43:03 2018 +0000"
      },
      "message": "Merge \"Reset statsd and correctly record the dump reason when system server restarts/crashes.\" into pi-dev"
    },
    {
      "commit": "892f3d32293b8358c72da4a94633827abbda640b",
      "tree": "25f503d7970defa87309883fa7cd22adbcb58cd7",
      "parents": [
        "ee18fb21120b32036222770ba541c43613fbae3d"
      ],
      "author": {
        "name": "Yangster-mac",
        "email": "yanglu@google.com",
        "time": "Wed May 02 14:16:48 2018 -0700"
      },
      "committer": {
        "name": "Yangster-mac",
        "email": "yanglu@google.com",
        "time": "Thu May 03 17:05:24 2018 -0700"
      },
      "message": "Reset statsd and correctly record the dump reason when system\nserver restarts/crashes.\n\nTest: statsd test\nBUG: b/79161505\nChange-Id: I0646c764964f6eafde91f9ae0179a1c837af320d\n"
    },
    {
      "commit": "754e29edd76e2d927619e83c660c0d93e98211c8",
      "tree": "2e3bb5468be2113e5eab1c6538b53dce56828608",
      "parents": [
        "ee18fb21120b32036222770ba541c43613fbae3d"
      ],
      "author": {
        "name": "Yangster-mac",
        "email": "yanglu@google.com",
        "time": "Wed May 02 12:23:17 2018 -0700"
      },
      "committer": {
        "name": "Yang Lu",
        "email": "yanglu@google.com",
        "time": "Thu May 03 21:19:39 2018 +0000"
      },
      "message": "Turns DEBUG to false in statsd.\n\nTest: statsd test\nBUG: b/79161505\nChange-Id: Ic6eee527d625b10aa86b2beb4b4c4fc05b051c7d\n"
    },
    {
      "commit": "876889cb760e99221c2fd77c7d67d5409bda0bc7",
      "tree": "ea86d233ba592b4b0d48c621646d993fae940bed",
      "parents": [
        "f8f6e5af75ea57edd83a9b2df9d5b896ec62ab46"
      ],
      "author": {
        "name": "Yao Chen",
        "email": "yaochen@google.com",
        "time": "Wed May 02 11:16:16 2018 -0700"
      },
      "committer": {
        "name": "Yao Chen",
        "email": "yaochen@google.com",
        "time": "Thu May 03 10:53:27 2018 -0700"
      },
      "message": "Add cmd to let statsd print all logs it received for debugging.\n\nIt only works on eng build. And all code is behind a build flag, so the\ncode will be stripped out in production builds.\n\nBug: 78239479\nTest: manual\nChange-Id: I20ee51822d18e6c77ca324a5327712cbed09593e\n"
    },
    {
      "commit": "890db383f9c19d489d61d1af4853197e77eb634d",
      "tree": "d58b2106f312e947cf7db8ddf84290d9dc32d596",
      "parents": [
        "5bc59492d057e0e855a1649315963877441c79c7",
        "2eccd835de086ed16dde83b8303eb653fb27d376"
      ],
      "author": {
        "name": "Yang Lu",
        "email": "yanglu@google.com",
        "time": "Wed May 02 14:31:12 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed May 02 14:31:12 2018 -0700"
      },
      "message": "Merge \"Lock the pulling alarm handler.\" into pi-dev am: 493bb2b119\nam: 2eccd835de\n\nChange-Id: I4c488e49c74021459b4a86ba9d596bed2e2007c1\n"
    },
    {
      "commit": "493bb2b1195e71455a8df4dfe3aa46fd12001950",
      "tree": "3fe2cc5af7cdeec7805f4500e96cbd77aee2a22b",
      "parents": [
        "0b96d863c6e71ea1d6688d361a817746da68ad6f",
        "6df5fcc12646b8695fe1dc9944af4df37cfe5bf5"
      ],
      "author": {
        "name": "Yang Lu",
        "email": "yanglu@google.com",
        "time": "Wed May 02 18:25:18 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 02 18:25:18 2018 +0000"
      },
      "message": "Merge \"Lock the pulling alarm handler.\" into pi-dev"
    },
    {
      "commit": "b5371d441fa88e2ff513dae377476ff39438e088",
      "tree": "9ddb8c4ee0d7e2c4e7a24394246ff9118aa101fd",
      "parents": [
        "55c98ece4cd8d04836163160d9f12a6f38ba7ca9",
        "f308d98f79f2081ba3810b1e1f6269a05337b35e"
      ],
      "author": {
        "name": "android-build-team Robot",
        "email": "android-build-team-robot@google.com",
        "time": "Tue May 01 18:05:39 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue May 01 18:05:39 2018 -0700"
      },
      "message": "Merge \"Reduce statsd log data size.\" into pi-dev am: b85e5616df\nam: f308d98f79\n\nChange-Id: I2ac1c09c4473eb31ed163395272b6ccfaba51917\n"
    },
    {
      "commit": "b85e5616dfa153eea1e61e99427164c5102dbbd3",
      "tree": "f3f1fbb1dffe1541c7682788a342d6ae7408adff",
      "parents": [
        "f841f8190a501e480a9c54947ea7b9f73e517ab2",
        "9def8e3995b1034d943a0fd22b6e512bfacdab77"
      ],
      "author": {
        "name": "android-build-team Robot",
        "email": "android-build-team-robot@google.com",
        "time": "Wed May 02 00:45:51 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 02 00:45:51 2018 +0000"
      },
      "message": "Merge \"Reduce statsd log data size.\" into pi-dev"
    },
    {
      "commit": "c1b66305a627199e69ae78e977e2e256c399aef2",
      "tree": "af93b20f36622d7e0d2013fb3f3a2142ff930e85",
      "parents": [
        "16e62bd46ca5fab3526fbfd6bcf32b2c4f880081",
        "80c93aed29f307b46549ced0960faa57418c03a9"
      ],
      "author": {
        "name": "android-build-team Robot",
        "email": "android-build-team-robot@google.com",
        "time": "Tue May 01 14:39:36 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue May 01 14:39:36 2018 -0700"
      },
      "message": "Merge \"Increase the bytes per config threshold to avoid too frequent uploading.\" into pi-dev am: e442db3e40\nam: 80c93aed29\n\nChange-Id: I9580a5cdccda24c7e5d7c586e783be90703c3de0\n"
    },
    {
      "commit": "e442db3e40b4323930708d264eabe3168fed9305",
      "tree": "2be712dc8d9f9f5b8c1f8e96e88b6aa673bba891",
      "parents": [
        "4ca34d7bd7e4436abb434496272a9bae6cc7acda",
        "db185c94cc4c2e7e4dfd8e089709587b15e6d61e"
      ],
      "author": {
        "name": "android-build-team Robot",
        "email": "android-build-team-robot@google.com",
        "time": "Tue May 01 21:02:32 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 01 21:02:32 2018 +0000"
      },
      "message": "Merge \"Increase the bytes per config threshold to avoid too frequent uploading.\" into pi-dev"
    },
    {
      "commit": "f370ee41fc533ba33bd2898e6a68a4fe8157e266",
      "tree": "f02c22e474b3dd5d8b1415cf4675a3895ce53525",
      "parents": [
        "fdbe17a17d71db85b45f42d07383febae1d5b6af",
        "6e7821ec66c0ad3748e32876d8547b749640d272"
      ],
      "author": {
        "name": "android-build-team Robot",
        "email": "android-build-team-robot@google.com",
        "time": "Mon Apr 30 17:42:46 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Apr 30 17:42:46 2018 -0700"
      },
      "message": "Merge \"Clear the past buckets for no-report metrics\" into pi-dev am: c0775117c4\nam: 6e7821ec66\n\nChange-Id: Ief582aa48afcfb0c6fe5b683bfa5b4ffa20ac80a\n"
    },
    {
      "commit": "9def8e3995b1034d943a0fd22b6e512bfacdab77",
      "tree": "d58200532a17ab2c47e23e46769f877ce9f82b79",
      "parents": [
        "c76929eb926a4ba506a4dfa986ea33443e1df58a"
      ],
      "author": {
        "name": "Yangster-mac",
        "email": "yanglu@google.com",
        "time": "Tue Apr 17 13:55:51 2018 -0700"
      },
      "committer": {
        "name": "Yangster-mac",
        "email": "yanglu@google.com",
        "time": "Thu Apr 26 04:30:18 2018 -0700"
      },
      "message": "Reduce statsd log data size.\n\n1. Hash the strings in metric dimensions.\n2. Optimize the timestamp encoding in bucket.\n   Use bucket num for full bucket and millis for\n   partial bucket.\n3. Encode the dimension path per metric and avoid\n   deduping it across dimensons.\n\nTest: statsd test\nChange-Id: I18f69654de85edb21a9c835c73edead756295e05\nBUG: b/77813755\n"
    },
    {
      "commit": "a802d73da625ac72f6a0211aab017f365139112d",
      "tree": "793244987e17335b906829ea13efd52d10b1dcdf",
      "parents": [
        "87f521ffe91fb5e728eb358ddddb9b2159ea4be2"
      ],
      "author": {
        "name": "Yangster-mac",
        "email": "yanglu@google.com",
        "time": "Tue Apr 24 07:50:38 2018 -0700"
      },
      "committer": {
        "name": "Yangster-mac",
        "email": "yanglu@google.com",
        "time": "Tue Apr 24 08:07:20 2018 -0700"
      },
      "message": "Clear the past buckets for no-report metrics\n\nTest: statsd tests.\nBUG: b/78503732\nChange-Id: I3de855929ad05677769cffaae4fea2db0d2f32da\n"
    },
    {
      "commit": "ef8262cedf23d29faacc97143aa0377a0b8f175d",
      "tree": "7327c75f2cfaede32ea77f9ccfbbde1581e36353",
      "parents": [
        "d86e8c5d80b8fda6492e68df7b9d3cf0d1c93eb5"
      ],
      "author": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Mon Apr 23 09:32:41 2018 -0700"
      },
      "committer": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Mon Apr 23 10:18:34 2018 -0700"
      },
      "message": "[statsd] Fix a memory leak\n\nReported by the static analyzer:\nframeworks/base/cmds/statsd/src/main.cpp:81:16: warning: Potential leak\nof memory pointed to by \u0027data\u0027 [clang-analyzer-cplusplus.NewDeleteLeaks]\n\nBug: None\nTest: Built with the static analyzer; warning disappeared.\nChange-Id: Icf2cfb4bc4b397d8664e91ddb6c6e346c33ec4ac\n"
    },
    {
      "commit": "49954cd681fc4c1013c39cd502408af770286730",
      "tree": "cdae24322c35e99ecfe506c999caf63dc61b2463",
      "parents": [
        "f7bc6ab7fa21f849250d0f5ee2849f9e49a8d436"
      ],
      "author": {
        "name": "Yao Chen",
        "email": "yaochen@google.com",
        "time": "Wed Apr 18 13:48:02 2018 -0700"
      },
      "committer": {
        "name": "Yao Chen",
        "email": "yaochen@google.com",
        "time": "Fri Apr 20 17:41:25 2018 -0700"
      },
      "message": "Add socket listener to statsd. And remove Davey atom.\n\n+ The socket listener is behind a flag. It\u0027s disabled until we get sepolicy changes in.\n+ Data parsing code is from logd, because we use the same format.\n\n+ Removed Davey from JankTracker because it violates our new sepolicy\n\nTest: manually\nBug: 78239479\n\nChange-Id: Ib17729fbc362cdb13385f780e2d636a95adf9bc3\n"
    },
    {
      "commit": "db185c94cc4c2e7e4dfd8e089709587b15e6d61e",
      "tree": "b7a8c8adb9b2d893d0de2bb117a909514ecc1397",
      "parents": [
        "a194a6bee36365b7aa2cdf3e86fe26e600ef338b"
      ],
      "author": {
        "name": "Yangster-mac",
        "email": "yanglu@google.com",
        "time": "Thu Apr 19 10:54:30 2018 -0700"
      },
      "committer": {
        "name": "Yangster-mac",
        "email": "yanglu@google.com",
        "time": "Thu Apr 19 11:31:03 2018 -0700"
      },
      "message": "Increase the bytes per config threshold to avoid\ntoo frequent uploading.\n\nBUG: b/77813755\nTest: statsd test\nChange-Id: I2b7b9292edf2c7d607f1ae6af4d52b104cd8443a\n"
    },
    {
      "commit": "a194a6bee36365b7aa2cdf3e86fe26e600ef338b",
      "tree": "e710e149f289cf80a22cb2ce107b614e8d746776",
      "parents": [
        "3d0ff90649ece3f42306dad36c77f69eca07f5b5",
        "e36018b2724b5ae40180f956b16c3e276855b99b"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Apr 18 20:35:29 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 18 20:35:29 2018 +0000"
      },
      "message": "Merge \"add dump report reason to reports\" into pi-dev"
    },
    {
      "commit": "e36018b2724b5ae40180f956b16c3e276855b99b",
      "tree": "4e933cd656f001c91e36213289e71b92dc489d7a",
      "parents": [
        "89b1a4ee0ff9c5b174ae1a229029edcdbc34b74f"
      ],
      "author": {
        "name": "Chenjie Yu",
        "email": "cjyu@google.com",
        "time": "Mon Apr 16 15:18:30 2018 -0700"
      },
      "committer": {
        "name": "Chenjie Yu",
        "email": "cjyu@google.com",
        "time": "Wed Apr 18 20:19:21 2018 +0000"
      },
      "message": "add dump report reason to reports\n\n+ also change uidmapping version numbers to int64_t\n\nBug: 78132855\nChange-Id: Iac7ea93e4bf651bd65bd03383e7ab4971af4fc29\nFix: 78132855\nTest: gts test\n"
    },
    {
      "commit": "2abcea2b8ac1980fee28bc94f0683379c0cec0b8",
      "tree": "0b9cf1bc8734ad69cfa8a07a3e8740719373bce5",
      "parents": [
        "27cd1f7e20d3d3df29b14f553e18cf775699d4f7",
        "728d52a6db0897502b0e60c870b718a5e3a91244"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Apr 18 17:07:13 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 18 17:07:13 2018 +0000"
      },
      "message": "Merge \"Fix merge isolated uid to host uid\" into pi-dev"
    },
    {
      "commit": "728d52a6db0897502b0e60c870b718a5e3a91244",
      "tree": "f6312a0183150af7a48ddc9a844a51a2647165a1",
      "parents": [
        "0f0c9243bed51385d0e28719103c9b20fcb89ad7"
      ],
      "author": {
        "name": "Chenjie Yu",
        "email": "cjyu@google.com",
        "time": "Tue Apr 17 15:20:21 2018 -0700"
      },
      "committer": {
        "name": "Chenjie Yu",
        "email": "cjyu@google.com",
        "time": "Tue Apr 17 15:24:52 2018 -0700"
      },
      "message": "Fix merge isolated uid to host uid\n\nBug: 78190783\nFix: 78190783\nTest: unit test\nChange-Id: I71b5c575bf3c226509ebf088cb5dd961acd93459\n"
    },
    {
      "commit": "bbc057444f825ed84ccd3b1b68e89a12249fc76e",
      "tree": "6669733ec63ab5950a2cd5fc8480afdda8e51fa9",
      "parents": [
        "c3116634e13f0f6455fbac36c99eed259a2f4f7c",
        "81245fd53a0bd627fa87e3a69dd667c7d6696ede"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Apr 17 19:12:33 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 17 19:12:33 2018 +0000"
      },
      "message": "Merge \"Adds option to drop small buckets for statsd.\" into pi-dev"
    },
    {
      "commit": "81245fd53a0bd627fa87e3a69dd667c7d6696ede",
      "tree": "f1f736cb97473d604159206545a24b9b046b8e4d",
      "parents": [
        "34a0b18a5c730e4fa16e27c63ed0cd79a6df188e"
      ],
      "author": {
        "name": "David Chen",
        "email": "dwchen@google.com",
        "time": "Thu Apr 12 14:33:37 2018 -0700"
      },
      "committer": {
        "name": "David Chen",
        "email": "dwchen@google.com",
        "time": "Mon Apr 16 18:42:14 2018 -0700"
      },
      "message": "Adds option to drop small buckets for statsd.\n\nWe notice that some of the pulled metrics have a ton of data, and\nduring app upgrades, we\u0027re forming partial buckets that represent\nsmall periods of time but require many bytes of data. We now have an\noption to drop these buckets that are too short. Note that we still\nhave to pull the data to keep the metrics for the next bucket\ncorrect. We include a new field in the value and gauge metric outputs\nso that it\u0027s easy to tell when a bucket was dropped.\n\nWe drop the partial buckets also from anomaly detection since we\nshould be computing anomalies from the same data that is reported.\n\nTest: Added unit-tests for value and gauge metrics.\nBug: 77925710\nChange-Id: Ic370496377c6afd380e02278a6c1ed8b521a2731\n"
    },
    {
      "commit": "abdf6e8039c56f181c52e535f350ab11254e1f2a",
      "tree": "804154bc9e4b0fd693bbf649c29f82359b29b95e",
      "parents": [
        "84745ebe11d085fe805ab9156db872731e0ac790",
        "dd83d703712bfa004a6bb71ddd19780b2d0b79ba"
      ],
      "author": {
        "name": "Tej Singh",
        "email": "singhtejinder@google.com",
        "time": "Tue Apr 17 01:34:47 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 17 01:34:47 2018 +0000"
      },
      "message": "Merge \"Enforce dump permission in stats service\" into pi-dev"
    },
    {
      "commit": "936c0868f8e5d71d61449b94e16a56e1ceaea424",
      "tree": "9051ff0f1b5a730ad02a38563e739107ffd16993",
      "parents": [
        "82c0b73e98a81e4b2d2f50da44112381bcef6755",
        "6b649257377b4ba2dd8a2a02b8dd692a72a2cc1e"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Tue Apr 17 00:04:53 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 17 00:04:53 2018 +0000"
      },
      "message": "Merge \"Protect usage data with OP_GET_USAGE_STATS.\" into pi-dev"
    },
    {
      "commit": "dd83d703712bfa004a6bb71ddd19780b2d0b79ba",
      "tree": "0958729aa8bbe5c071f2e8831e8596775aebc804",
      "parents": [
        "5000367d38154428f9e57dbb0097cbaca7b7c0c4"
      ],
      "author": {
        "name": "Tej Singh",
        "email": "singhtejinder@google.com",
        "time": "Tue Apr 10 17:24:50 2018 -0700"
      },
      "committer": {
        "name": "Tej Singh",
        "email": "singhtejinder@google.com",
        "time": "Mon Apr 16 15:04:28 2018 -0700"
      },
      "message": "Enforce dump permission in stats service\n\nEnforces the dump permission in stats service and fixes a typo in an\nenum name.\n\nBug: b/77723108\nTest: adb shell dumpsys stats as root and not root\nTest: build success on marlin (and cts build success)\nChange-Id: I131f97fe4fd370d50bc4ad369377f6adcca5f6ae\n"
    },
    {
      "commit": "6b649257377b4ba2dd8a2a02b8dd692a72a2cc1e",
      "tree": "f06149447b480ee548d00896ec5847adee3896a8",
      "parents": [
        "167032ab002714d26a14735bbcdc072c5fa693b7"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Apr 16 09:50:22 2018 -0600"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Apr 16 12:44:32 2018 -0600"
      },
      "message": "Protect usage data with OP_GET_USAGE_STATS.\n\nAPIs that return package usage data (such as the new StatsManager)\nmust ensure that callers hold both the PACKAGE_USAGE_STATS permission\nand the OP_GET_USAGE_STATS app-op.\n\nAdd noteOp() method that can be called from native code.\n\nAlso add missing security checks on command interface.\n\nBug: 77662908, 78121728\nTest: builds, boots\nChange-Id: Ie0d51e4baaacd9d7d36ba0c587ec91a870b9df17\n"
    },
    {
      "commit": "d37bc23f5094ebb803abe93c9e3ca27698da35a9",
      "tree": "af887d4bd22a84f0fb416c923f408be51a472bdf",
      "parents": [
        "4558c77d5d2f197d697a18c41ea1716ffc65db28"
      ],
      "author": {
        "name": "David Chen",
        "email": "dwchen@google.com",
        "time": "Thu Apr 12 18:05:11 2018 -0700"
      },
      "committer": {
        "name": "David Chen",
        "email": "dwchen@google.com",
        "time": "Fri Apr 13 17:01:13 2018 -0700"
      },
      "message": "Adds a code when statsd sends intent to getData.\n\nIf the data receiver is experiencing delays, there may be a queue of\nmultiple intents to collect the same data. This timestamp makes it\neasy in the receiver to de-dupe these requests to call getData.\n\nAlso, we update how StatsCompanionService gets the snapshot by\nrequesting data for all known apps. I notice that Keep seems to have\na uid active even when it appears uninstalled.\n\nBug: 77981668\nTest: Flashed marlin-eng and manually verified.\nChange-Id: I509e19383ec4a5da8746dd0c76ac71a948c6877d\n"
    },
    {
      "commit": "6df5fcc12646b8695fe1dc9944af4df37cfe5bf5",
      "tree": "62b70e5d9f05087d728b90083d51502ed084cac9",
      "parents": [
        "d532ff3397c1bd7e2b6571e399c2065accfe6241"
      ],
      "author": {
        "name": "Yangster",
        "email": "yanglu@google.com",
        "time": "Thu Apr 12 11:04:29 2018 -0700"
      },
      "committer": {
        "name": "Yangster",
        "email": "yanglu@google.com",
        "time": "Fri Apr 13 09:03:20 2018 -0700"
      },
      "message": "Lock the pulling alarm handler.\n\nTest: statsd test\n\nBUG: b/77906846\n\nChange-Id: I414771a20babfb2324e47dd8ddbb44eaa088d199\n"
    },
    {
      "commit": "6b317915e8ffa28066744e597fd5404a09240f22",
      "tree": "35031577fccd8ab3250be79f6905727ce94308ed",
      "parents": [
        "87646514be50390c251e00e21b31b32f2eb10f1c",
        "4f71629002ae1da22ca1c07ce11b9cca9b272d97"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Apr 11 17:02:06 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 11 17:02:06 2018 +0000"
      },
      "message": "Merge \"StatsManager throws exceptions\" into pi-dev"
    },
    {
      "commit": "163d2602dbc79133096b3dec7920ee157ff1a88b",
      "tree": "ea8f68e27b820748af245db7c90e36ff92a99bf8",
      "parents": [
        "5f91d5ee942ed2af54349a2a78f635237a84dbb4"
      ],
      "author": {
        "name": "Yao Chen",
        "email": "yaochen@google.com",
        "time": "Tue Apr 10 10:39:53 2018 -0700"
      },
      "committer": {
        "name": "Yangster",
        "email": "yanglu@google.com",
        "time": "Tue Apr 10 22:06:03 2018 -0700"
      },
      "message": "Handle logd reconnect.\n\nWhen statsd reconnects to logd, statsd will read all logs from buffer again. To prevent us from\nreprocessing old events, we do the following:\n\n1. At any given moment, record the largest timestamp(T_max) and last timestamp (check point) that\n   we\u0027ve seen before.\n2. When reconnection happens, we look for the check point until we see a new log with a timestamp\n   larger than T_max.\n   -\u003e If we found the CP, resume after the CP. Success\n   -\u003e If we can\u0027t find CP, there is definitely log loss. We reset all configs.\n\nNote:\n1. Logd has an API to read logs after a certain timestamp. But this api is vulnerable to\ntime changes from Settings. So we cannot rely on it.\n\n2. If logd inserts a new log (with older timestamp) before CP, we cannot detect it. It\u0027s not\n   possible to detect it without record all timestamps we have seen.\n\nTest: statsd_test\nBug: 77813113\n\nChange-Id: Ic3fdb47230807606ab11dc994cb162194adb8448\n"
    },
    {
      "commit": "15f6bbc24f4d7a3d4481d90a18df33d402ddacba",
      "tree": "cb4aa2c4131209f4fa8e2d623a951ce9b4cae0fd",
      "parents": [
        "4df92ef6f1fd4bc20c02a499b58d0fbe6fa1e20d"
      ],
      "author": {
        "name": "Yangster-mac",
        "email": "yanglu@google.com",
        "time": "Sun Apr 08 11:52:26 2018 -0700"
      },
      "committer": {
        "name": "Yangster-mac",
        "email": "yanglu@google.com",
        "time": "Tue Apr 10 20:25:13 2018 -0700"
      },
      "message": "Flush the bucket when creating the metric producer.\nUse int64 for value field.\nE2e test for gauge/value metric.\n\nBUG: b/74445671\n\nTest: statsd test.\nChange-Id: I823a0bade8f89834bdfb9cf48864852a47d7b63b\n"
    },
    {
      "commit": "4f71629002ae1da22ca1c07ce11b9cca9b272d97",
      "tree": "9df07317b627a0be00312edbb17969699da95b4f",
      "parents": [
        "135d82ac4526e2d5fa56484e80bce86dd10431ea"
      ],
      "author": {
        "name": "Bookatz",
        "email": "bookatz@google.com",
        "time": "Tue Apr 10 17:15:12 2018 -0700"
      },
      "committer": {
        "name": "Bookatz",
        "email": "bookatz@google.com",
        "time": "Tue Apr 10 19:07:32 2018 -0700"
      },
      "message": "StatsManager throws exceptions\n\nWhen StatsManager fails to connect to statsd, it now throws an exception\nfor the caller to catch. It also throws an exception of the config being\nadded is of an unreadable format.\n\nDue to backwards compatibility issues, the old APIs could not be\nchanged, so new ones were made to replace the old ones. The old ones are\nnow temporary and will be removed when the compatibility issue is\nresolved.\n\nBug: 77648233\nTest: gts-tradefed run gts-dev --module GtsStatsdHostTestCases\nChange-Id: Ibea05883a29b9b3ef9927d2f8fe295eb99832ab7\n"
    },
    {
      "commit": "ae63b0af946d921ca20aaf1916b12af593ec0e1d",
      "tree": "711c5a291b914b721f65d1be4af2fb761974a926",
      "parents": [
        "627596f6a50d77594f9d665bc563008a51b83caa"
      ],
      "author": {
        "name": "Chenjie Yu",
        "email": "cjyu@google.com",
        "time": "Tue Apr 10 14:59:31 2018 -0700"
      },
      "committer": {
        "name": "Chenjie Yu",
        "email": "cjyu@google.com",
        "time": "Tue Apr 10 14:59:31 2018 -0700"
      },
      "message": "Drop value if the bucket is totally tainted\n\nBug: 77870358\nChange-Id: Ia96970a3254de08f94b91ad53be2fdb9f4db7eb4\nFix: 77870358\nTest: unit test\n"
    }
  ],
  "next": "c63fdfe02c1de3b6c08a22a7f2c0d82b36d60976"
}
