)]}'
{
  "log": [
    {
      "commit": "d1c2bf5e7c739bc5a7eeac602b477edb9f6630c2",
      "tree": "bb1773a20a92fc11856a19ab993f4bf3d1bcc991",
      "parents": [
        "1f5d6c0abba7c18dc809a68ed893a6e8f77b207a"
      ],
      "author": {
        "name": "Rodolfo Alonso Hernandez",
        "email": "ralonsoh@redhat.com",
        "time": "Wed Nov 02 16:43:41 2022 +0100"
      },
      "committer": {
        "name": "Rodolfo Alonso Hernandez",
        "email": "ralonsoh@redhat.com",
        "time": "Mon Nov 07 08:21:34 2022 +0000"
      },
      "message": "Add new service \"file_tracker\"\n\nThis new service periodically tracks the file open in the system.\n\nCloses-Bug: #1995502\nChange-Id: I02e097fef07655ff571af9f35bf258b2ed975098\n"
    },
    {
      "commit": "95634d990572fdaf94e199e06a2b3b04f7c27b3a",
      "tree": "291658cdf2810520b5f9a48e3b5fb2888ead753b",
      "parents": [
        "2ecd1823850ae0e00ad0ecebbbceb312be60ccf4"
      ],
      "author": {
        "name": "Jens Harbott",
        "email": "j.harbott@x-ion.de",
        "time": "Thu Feb 21 12:24:17 2019 +0000"
      },
      "committer": {
        "name": "Jens Harbott (frickler)",
        "email": "j.harbott@x-ion.de",
        "time": "Wed Jul 08 14:11:18 2020 +0000"
      },
      "message": "Re-enable memory_tracker\n\nThe old peakmem_tracker service has been disabled in [0], now enable\nthe replacement memory_tracker.\n\nAlso fail when the old service is still configured, otherwise\nconsumers might never notice.\n\nDepends-On: https://review.opendev.org/739995\nChange-Id: I583caf3f36a8ff41d7d4106dabc6c5f24243085e\n"
    },
    {
      "commit": "19e4d972884e422d691c4cc1fe9e7ed3a03a2c01",
      "tree": "4a816c9a2d558a0067d1064d6236534bf8977e3d",
      "parents": [
        "761663dbfbddad4bc11d03e71e514c0f43c15668"
      ],
      "author": {
        "name": "Federico Ressi",
        "email": "fressi@redhat.com",
        "time": "Fri Jan 24 11:44:46 2020 +0100"
      },
      "committer": {
        "name": "Federico Ressi",
        "email": "fressi@redhat.com",
        "time": "Mon Jan 27 08:08:59 2020 +0000"
      },
      "message": "Install psutil required by tools/mlock_report.py script\n\n\u0027tools/mlock_report.py\u0027 script requires \u0027psutil\u0027 package to be\ninstalled. This ensures it is done before memory_peak service is\nstarted.\n\nPartial-Bug: #1860753\nChange-Id: I7b2b6eaf9856c6057e1a4a0054d15074150a6cb6\n"
    },
    {
      "commit": "0eebeb415ada3437b598d0ceb6952dc7ad9134d9",
      "tree": "c14ecf238bd797caca6535240a5e13b34a818c1f",
      "parents": [
        "cdba1b371628aa0e8bc5b687351c5ee9b39e9bc6"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Wed Aug 30 14:16:58 2017 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Fri Sep 01 15:08:17 2017 -0400"
      },
      "message": "clean up screen and tail_log references\n\nChange-Id: I6bcfa09931ed1f70e071ccb16688c15c7ef2898f\n"
    },
    {
      "commit": "5edae54855b6b9af4283cef07e0b0d1a0f90cd3e",
      "tree": "38a1c4516ffc6f472f455363fac5bd24c5b65425",
      "parents": [
        "fb73a8fc6fa8cdc826b10c47490bc47cd0e6776a"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Tue Mar 21 20:50:24 2017 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Tue Mar 28 07:19:15 2017 -0400"
      },
      "message": "initial work to enable systemd service running\n\nDuring the PTG there was a discussion that the screen developer\nworkflow wasn\u0027t nearly as useful as it once was. There were now too\nmany services to see them all on one screen, and one of the most\ncommon service restart scenarios was not restarting one service, but a\nbunch to get code to take effect.\n\nThis implements a 3rd way of running services instead of direct\nforking via bash, or running under screen, which is running as systemd\nunits.\n\nLogging is adjusted because it\u0027s redundant to log datetime in oslo.log\nwhen journald has that.\n\nSwift needed to have services launched by absolute path to work.\n\nThis is disabled by default, but with instructions on using it. The\nlong term intent is to make this the way to run devstack, which would\nbe the same between both the gate and local use.\n\nSome changes were also needed to run_process to pass the run User\nin. A hack around the keystone uwsgi launcher was done at the same\ntime to remove a run_process feature that only keystone uwsgi uses.\n\nChange-Id: I836bf27c4cfdc449628aa7641fb96a5489d5d4e7\n"
    },
    {
      "commit": "5ae945244ec22634f95897cb50e44fb7c2da43a6",
      "tree": "31daaf13b6291ed83bdd1409c270c0a2b61c729f",
      "parents": [
        "d18d7c86581b419541b291990173f5fb33a45445"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Thu Mar 23 12:45:29 2017 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Thu Mar 23 12:45:29 2017 -0400"
      },
      "message": "run memory_tracker as root\n\nIn order to get memlocked pages this needs to be run as root, just\nstart it as root so that we don\u0027t have issues with the inability to\nrun sudo later in the run.\n\nChange-Id: I7adab8cbb6d89d4717e427aec22e316d27bea075\n"
    },
    {
      "commit": "2b4735f1b3ac2834fa46a288ba5d09290acfbf3d",
      "tree": "8e3c579a0ed167d6921a1804f5c5ca4ccc9b445f",
      "parents": [
        "23d03b697fd9f2ee428abbcfe90b4a89d739cd4f"
      ],
      "author": {
        "name": "Ihar Hrachyshka",
        "email": "ihrachys@redhat.com",
        "time": "Fri Feb 10 06:17:37 2017 +0000"
      },
      "committer": {
        "name": "Ihar Hrachyshka",
        "email": "ihrachys@redhat.com",
        "time": "Sun Mar 05 15:50:59 2017 +0000"
      },
      "message": "Added list of mlock-using processes to peakmem_tracker output\n\nThe change makes peakmem_tracker list processes that lock memory pages\nfrom swapping to disk. It may be helpful when debugging oom-killer job\nfailures in gate in case when dstat shows that swap is not fully used\nwhen oom-killer is triggered.\n\nThe peakmem_tracker service was renamed into memory_tracker to reflect\nits new broader scope.\n\nNeeded-By: I5862d92478397eac2e61b8a61ce3437b698678be\nChange-Id: I1dca120448ee87930fe903fd81277b58efaefc92\n"
    },
    {
      "commit": "523f48803609b35350b624244fa73b1030c1d5fa",
      "tree": "17f99ab223f42eec58523fa89a49f243efba754b",
      "parents": [
        "307730acd9d271bc4c3d44f2dfed0eab67e1657d"
      ],
      "author": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Tue Oct 13 11:03:03 2015 +1100"
      },
      "committer": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Fri Nov 27 15:36:04 2015 +1100"
      },
      "message": "Namespace XTRACE commands\n\nI noticed this when debugging some grenade issues failures.\n\nAn include of grenade/functions stores the current value of XTRACE\n(on) and disables xtrace for the rest of the import.\n\nWe then include devstack\u0027s \"functions\" library, which now overwrites\nthe stored value of XTRACE the current state; i.e. disabled.\n\nWhen it finishes it restores the prior state (disabled), and then\ngrenade restores the same value of XTRACE (disabled).\n\nThe result is that xtrace is incorrectly disabled until the next time\nit just happens to be turned on.\n\nThe solution is to name-space the store of the current-value of xtrace\nso when we finish sourcing a file, we always restore the tracing value\nto what it was when we entered.\n\nSome files had already discovered this.  In general there is\ninconsistency around the setting of the variable, and a lot of obvious\ncopy-paste.  This brings consistency across all files by using\n_XTRACE_* prefixes for the sotre/restore of tracing values.\n\nChange-Id: Iba7739eada5711d9c269cb4127fa712e9f961695\n"
    },
    {
      "commit": "a83e90b56080d1c86f98e66d146f781c19d150c5",
      "tree": "2bd523cfdf8fbfe3653ae3b2a64e391b1ac6356c",
      "parents": [
        "5751017ae3c9150eac03f03257f45ca2356b8484"
      ],
      "author": {
        "name": "Tim Buckley",
        "email": "timothy.jas.buckley@hp.com",
        "time": "Wed Aug 05 10:25:00 2015 -0600"
      },
      "committer": {
        "name": "Tim Buckley",
        "email": "timothy.jas.buckley@hp.com",
        "time": "Fri Aug 14 09:51:09 2015 -0600"
      },
      "message": "Enable CSV logging output for DStat.\n\nFuture work toward visualization of DevStack and devstack-gate performance\nwould benefit greatly from the availability of machine-parsable DStat output.\nThis patch outputs an additional logfile to $LOGDIR, `dstat-csv.log`, using\nDStat\u0027s built-in CSV logging functionality.\n\nAn additional instance of DStat is started during start_dstat that outputs\nto CSV-formatted text without `--top-cpu-adv` and `-top-io-adv` enabled, as\nthese plugins are currently incompatible with CSV output. To facilitate this,\na new `dstat.sh` script is added to $TOP_DIR/tools/ to act as a daemon to\nmanage the two processes.\n\nChange-Id: I826c94c35b6a109308b4f132c181ff7a1f63bc7b\nDepends-On: I534fb1f9356a7948d2fec0aecc7f275e47362a11\n"
    },
    {
      "commit": "72a8be60cd6b6efd32ebe2d81346ece48434510f",
      "tree": "ebae8ea9109faf34995b1d84dc03b94a661fe44b",
      "parents": [
        "c00d2a53136d4d37a519829c4c9cad668fa69a44"
      ],
      "author": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Thu Apr 09 13:51:23 2015 +1000"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Mon Apr 20 12:27:32 2015 -0400"
      },
      "message": "Add a peak memory tracker to dstat\n\nWe can see at-a-glance memory usage during the run with dstat but we\nhave no way to break that down into an overview of where memory is\ngoing.\n\nThis adds a peer-service to dstat that records snapshots of the system\nduring peak memory usage.  It checks periodically if there is less\nmemory available than before and, if so, records the running processes\nand vm overview.\n\nThe intent is to add logic into the verify-pipeline jobs to use this\nreport and send statistics on peak memory usage to statsd [1].  We can\nthen build a picture of memory-usage growth over time.  This type of\nreport would have allowed better insight into issues such as\nintroduced by Idf3a3a914b54779172776822710b3e52e751b1d1 where\nmemory-usage jumped dramatically after switching to pip versions of\nlibraries.  Tracking details of memory usage is going to be an\nimportant part of future development.\n\n[1] http://graphite.openstack.org/\n\nChange-Id: I4b0a8f382dcaa09331987ab84a68546ec29cbc18\n"
    },
    {
      "commit": "c00d2a53136d4d37a519829c4c9cad668fa69a44",
      "tree": "c1d89a019db631dcceae0fb41d13ad8370a197d7",
      "parents": [
        "156244df1cf444de212140a1c16e8e989b4be611"
      ],
      "author": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Thu Apr 09 19:57:13 2015 +1000"
      },
      "committer": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Tue Apr 14 09:42:23 2015 +1000"
      },
      "message": "run dstat with run_process\n\nIt is not clear to me why this can\u0027t use run_process?  Currently we\nend up with two log-files both with the same thing\n\n- dstat.txt.gz which comes from the \"tee\" and is symlinked into\n  SCREEN_LOGDIR, so gets picked-up by the gate scripts\n- screen-dstat.txt.gz which comes from screen_it\n\nChange-Id: I00b9e09b8d44f72ff14e69dc6e4a4bd5e2a0439e\n"
    },
    {
      "commit": "dc97cb71e85fc807d2cce6f054c785922d322eb9",
      "tree": "86affcfbc7054c209c2ab0a4c3f7955d5e1bf16f",
      "parents": [
        "9720239618189c13734aa32aabee9252707f2db9"
      ],
      "author": {
        "name": "Dean Troyer",
        "email": "dtroyer@gmail.com",
        "time": "Sat Mar 28 08:20:50 2015 -0500"
      },
      "committer": {
        "name": "Dean Troyer",
        "email": "dtroyer@gmail.com",
        "time": "Sat Mar 28 14:35:12 2015 -0500"
      },
      "message": "Mostly docs cleanups\n\nFix documentation build errors and RST formatting\n\nChange-Id: Id93153400c5b069dd9d772381558c7085f64c207\n"
    },
    {
      "commit": "9a413abcd4bb0a7527b37fcaab4a16c9aa7cd938",
      "tree": "bc5f7b1b9ea3ec7744d207a7902cbe26d2308efe",
      "parents": [
        "fdae448a05942d70f20f9de63a56877d11f89c08"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Wed Feb 04 12:44:18 2015 -0500"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Wed Feb 11 06:10:38 2015 -0500"
      },
      "message": "add gating up/down script for devstack\n\nThis adds the test infrastructure for testing that unstack.sh and\nclean.sh do the right thing, and actually stop what\u0027s expected. This\nis designed to be used in upstream testing to make unstack and clean a\nbit more certain.\n\nIt includes numerous fixes to make these pass in an errexit\nenvironment with the gate config. The scripts still don\u0027t run under\nerrexit because we don\u0027t assume we\u0027ve handled all possible cleanup safely.\n\nChange-Id: I774dfb2cc934367eef2bb7ea5123197f6da7565b\n"
    },
    {
      "commit": "901dbecd4ca2d851cfb929b18aec546481699978",
      "tree": "080b74cb2550ca2be3369264fb20efd54413840d",
      "parents": [
        "b9a7d3b5e4f01d932709633f2b5b9461ecdbd0cb"
      ],
      "author": {
        "name": "Daniel P. Berrange",
        "email": "berrange@redhat.com",
        "time": "Fri Jan 30 17:03:32 2015 +0000"
      },
      "committer": {
        "name": "Daniel P. Berrange",
        "email": "berrange@redhat.com",
        "time": "Fri Jan 30 17:03:32 2015 +0000"
      },
      "message": "dstat: avoid creating self-referential symlink\n\nIf the SCREEN_LOGDIR and LOGDIR environment variables point to the\nsame location, devstack creates a dstat.log which is a symlink\npointing to itself. The second invokation of devstack then fails\ntrying to reference this broken symlink\n\nChange-Id: I1de2bb7983e7535b41b28f526083a0d77312ff85\n"
    },
    {
      "commit": "dde41d0797f0b085099cd5c9ff1e0110d5ae3fbd",
      "tree": "61e097d1a0e501b381d41f99681c755b8ca77bd8",
      "parents": [
        "9e84d095f2fc5549186097f00c678f916941bf69"
      ],
      "author": {
        "name": "Dean Troyer",
        "email": "dtroyer@gmail.com",
        "time": "Tue Dec 09 17:47:57 2014 -0600"
      },
      "committer": {
        "name": "Dean Troyer",
        "email": "dtroyer@gmail.com",
        "time": "Tue Jan 20 16:08:22 2015 -0600"
      },
      "message": "Deprecate SCREEN_LOGDIR in favor of LOGDIR\n\nThis is the first step in the log file cleanup.  If SCREEN_LOGDIR\nis still set, symlinks will be created in the old screen log directory\nso things like the devstack-gate log collector continues to work.\n\nbp:logging-and-service-names\nChange-Id: I3ac796e322a18dbd0b8b2310a08310ca159d7613\n"
    },
    {
      "commit": "ad5cc986d86e9deff506c0451409f26fc8e86efe",
      "tree": "58ba49325e93574a35f98010414bccc0740b738c",
      "parents": [
        "116f9f826effd3682c8b70cde8550727161c3384"
      ],
      "author": {
        "name": "Dean Troyer",
        "email": "dtroyer@gmail.com",
        "time": "Wed Dec 10 16:35:32 2014 -0600"
      },
      "committer": {
        "name": "Dean Troyer",
        "email": "dtroyer@gmail.com",
        "time": "Fri Jan 16 13:58:25 2015 -0600"
      },
      "message": "Rename screen logfiles\n\nThis renames the log files in logs/screen that contain timestamps to put\nthe timestamp after \u0027.log\u0027 and \u0027.log.summary\u0027 in the names.  This will\nsimplify devstack-gate\u0027s search for log files to copy to \u0027*.log\u0027.\n\ndstat.txt is also renamed to dstat.log\n\nMake LOGDIR and LOGFILE local\n\nbp:devstack-logging-and-service-names\nChange-Id: I02aba9ca82c117a1186dafc1d3c07aa04ecd1dde\n"
    },
    {
      "commit": "06005723922dcecff9be67685345e02f8f173ca8",
      "tree": "0b13f4bbe4ce9aec66610435832e89d0dcce0670",
      "parents": [
        "69ef526ac9fbb83c9b6e0cf6d5fc6e65f20fcf54"
      ],
      "author": {
        "name": "Joe Gordon",
        "email": "joe.gordon0@gmail.com",
        "time": "Tue Jan 13 16:36:43 2015 +1300"
      },
      "committer": {
        "name": "Joe Gordon",
        "email": "joe.gordon0@gmail.com",
        "time": "Tue Jan 13 16:36:43 2015 +1300"
      },
      "message": "log dstat top io\n\nWe aren\u0027t always cpu bound, track top io usage as well.\n\nChange-Id: I3c16b851ebab61ef96a6e3016237a294038561de\n"
    },
    {
      "commit": "e263c82e48a431e502bd6baceb6dfcfdc1750cbb",
      "tree": "5ca592e668dedb4debc6c7170f3abf37cc4bc0c6",
      "parents": [
        "2f8e08b5728f4272b415b1c0aab8ff62eae29b06"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Fri Dec 05 14:25:28 2014 -0500"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Wed Dec 10 11:28:05 2014 -0500"
      },
      "message": "add shebang lines to all lib files\n\nWith gerrit 2.8, and the new change screen, this will trigger syntax\nhighlighting in gerrit. Thus making reviewing code a lot nicer.\n\nChange-Id: Id238748417ffab53e02d59413dba66f61e724383\n"
    },
    {
      "commit": "2d7f19627771680d4872eb77e06ceccf3cdd7b1b",
      "tree": "7928d93e8140df8f59c2ec052d35dbfcfb4332ef",
      "parents": [
        "aa29090fe2eeb5ad933b1ad57ed1cb6287a2751c",
        "44f4e205aa81f8fdb0b47b354192b4bb44efad56"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Nov 19 13:20:32 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Nov 19 13:20:33 2014 +0000"
      },
      "message": "Merge \"lib/dstat: Include page stats\""
    },
    {
      "commit": "44f4e205aa81f8fdb0b47b354192b4bb44efad56",
      "tree": "aa22ec95ddae9e5f06004e00939155c44c343e32",
      "parents": [
        "9bfdea87a6ceea667a3c674215099ce8a967a3c2"
      ],
      "author": {
        "name": "YAMAMOTO Takashi",
        "email": "yamamoto@valinux.co.jp",
        "time": "Tue Nov 18 13:03:08 2014 +0900"
      },
      "committer": {
        "name": "YAMAMOTO Takashi",
        "email": "yamamoto@valinux.co.jp",
        "time": "Tue Nov 18 13:03:08 2014 +0900"
      },
      "message": "lib/dstat: Include page stats\n\nAdd -g option for dstat.\n\nFrom the man page:\n\n       -g, --page\n              enable page stats (page in, page out)\n\nChange-Id: I865304483af0a529ea8722ed0a9f35ab350670d2\n"
    },
    {
      "commit": "42373c7bfe68302922feb76015534a16d8c00bf5",
      "tree": "893e3d270fa2ee6e68010303575fcdc8ad8719b3",
      "parents": [
        "9bfdea87a6ceea667a3c674215099ce8a967a3c2"
      ],
      "author": {
        "name": "YAMAMOTO Takashi",
        "email": "yamamoto@valinux.co.jp",
        "time": "Tue Nov 18 12:30:16 2014 +0900"
      },
      "committer": {
        "name": "YAMAMOTO Takashi",
        "email": "yamamoto@valinux.co.jp",
        "time": "Tue Nov 18 12:30:58 2014 +0900"
      },
      "message": "lib/dstat: Fix a comment\n\nApparently this file was copied from lib/apache.\n\nChange-Id: Ie89d423ca225c697122820a1d9e859769aea9f86\n"
    },
    {
      "commit": "e0b08d04ab41f9aca96997c87bd9fa13feba2536",
      "tree": "929d6624b29363e0506459864ab38c632aee180c",
      "parents": [
        "11d6bde264a90fde1d8bb8b15e9229f7af808840"
      ],
      "author": {
        "name": "Joe Gordon",
        "email": "joe.gordon0@gmail.com",
        "time": "Wed Aug 20 00:34:55 2014 -0700"
      },
      "committer": {
        "name": "Joe Gordon",
        "email": "joe.gordon0@gmail.com",
        "time": "Tue Aug 26 17:10:52 2014 -0700"
      },
      "message": "Pull dstat logic into its own function so grenade can use it\n\nIn order to use dstat on the new side of grenade, pull dstat code into\nits own lib with the function start_dstat\n\nChange-Id: I5c908d594a6f3a90ed4b3f744002bf606841cf07\n"
    }
  ]
}
