After the flot update the xaxis labels aren't meaningful to humans (in
fact I'm not quite sure what they were showing us). We can explicitly
state the input type as milliseconds and the label render format. Doing
this gives us labels that are meaningful to humans.
Change-Id: I7912a536f3de2756404f8c7e7f31d8bd5890ab22
For both the integrated_gate.html and others.html template, both tabs
for those pages were highlighted with the active class. Fix this.
Change-Id: Ib43910f7036eecc0b5afa9afba458b95eedfdaec
In the recent change to split the uncategorized page we were
inconsistent in our use of other and others for the second page.
To make everything consistent and actually work this commit updates
the last references of other and other.html to others and others.html.
Change-Id: If6a4331f5cb7d0a362a89c87fdeebf4891f603b9
This commit fixes the filename for the others uncategorized failure
template. The script looks for others.html and it doesn't find anything
because the file is named other.html. This corrects the filename to fix
the issue.
Change-Id: I8232d184f8effb41654628c67d0900df618d1209
We recently landed a patch to split the uncategorized page into 2 for
integrated gate jobs and everything else. However, that patch neglected
to update the links on the other html files to reflect the new
filenames. This commit fixes the oversight.
Change-Id: I10f05ae6fb9c31bcfc87ff47d878c3af58176734
When stackforge was compacted into the openstack/ git namespace this
broke our filtering on just integrated gate projects. This commit does
2 things to handle this. First it takes a list of the projects using
the integrated gate job template from zuul's layout.yaml and uses that
to be the filter. This way we actual have a view of the integrated gate
again. It then makes a second page for all the other projects failures
which can be used by those to track uncategorized failures. A future
next step will be to add a config file to make the functional split of
these views configurable so that we can more easily adjust the split
as the interactions between projects change.
Change-Id: I41c8ae1e75e8a3d8893f6af5af7c283b5f5c1bcf
This uses the ES health API to get the cluster health status
and pretty it up in our index/gate graph pages.
The cluster health API is documented here:
https://www.elastic.co/guide/en/elasticsearch/reference/current/cluster-health.html
Also add a note to the readme on how to view the openstack
ES cluster health.
Change-Id: I3df833cf5024af7282e2602e7dfa5db9c3384b6a
Commit e456a7afca added the
'allow-nonvoting' key to query yaml files so that we can
show non-voting job failures in the graph.
This change builds on that by displaying in the graph,
for non-voting job queries only based on that key, when a
job is non-voting with a simple "Voting: False" line.
Since the default behavior is to filter out non-voting
job results in all of the queries, we don't show anything
special in the graph for voting jobs since it would just
clutter up the output (non-voting is the exceptional case
we want to display).
Change-Id: Ibd75c6244abd10ad7cc491b4453339ad326a11ed
Change I1f3c2a65104db39fdd7d786d421cded1b436a5f6 added the 'voting'
field which has been tracking results for a couple of weeks now, so
let's use it to filter the initial set of results for the uncategorized
bugs page.
Change-Id: If66c9f5f2f0dea344f941a6a072ff0c30a86e7f2
Make the crrently hardcoded database, elastic search,
and logstash uris configurable using a conf file.
Use the configured logstash url in the the web gate.html
and index.html.
Change-Id: I282745796a40f10955e0c9893e817779b2d4d55a
This makes use of the kibana3 logstash dashboard's query and from
parameters to link in queries similar to how we linked in kibana2
queries with base64 encoding. This however uses a saner urlencode
instead of base64 so you should be able to read them as a human.
Note we shouldn't land this until we have switched logstash.o.o over to
kibana3.
Change-Id: Idc1d637db7e1142a24adab2d21bc747d3002dd56
Depends-On: I176148c3bdaf603a1703d215ac2086101ecabe21
When filtering the uncategorized page by a time window, completely hide
jobs that have no uncategorized failures in said time window.
Hide entries in the menu that have no hits in the window as well.
This patch doesn't dynamically update any numbers to only show what is
visible in the window.
Also add debug info to web_server script.
Change-Id: I2fd792a1a202a70a3dedd20316b3c4fdd8fcdc6e
The http://ci.openstack.org/ documentation site has been deprecated,
replaced by redirects to corresponding paths within
http://docs.openstack.org/infra/ where other Project Infrastructure
documentation already resides.
Change-Id: I9d6aea24ead002391991b50781a3a61dfd895801
The last change failed to account for the fact that bug is a hash, and
hence was not building the correct anchors ever. This fixes that.
This was also actually actually tested using the new test_server.py,
which makes live testing these changes much much better.
Change-Id: Id340bdc3e2046dde7273bccc7fe97f42e1db07b9
The previous fix to make #target work correctly failed in an infinite
loop on the null case where no hash was set. Trying a more targeted
approach.
Change-Id: I7deaee9b8a3a3ba815640c7cb2faea84032387bb
Sharing hash urls (pointing to specific graphs) currently doesn't work
as expected because the hash portion is processed before the div
that's being referenced exists. The following forces their
reprocessing after loading the page.
Change-Id: Icaabd48ac12c0349b179d2d67caf83b5ca831048
A long awaited feature for ER, actually support linking directly to a
specific bug, which is far more helpful in having conversations with
people.
Change-Id: I70f5658f1885a0e7d9d6276bbd4dbc0c768d761d
If there are no actual fails, we shouldn't show the graph area at all,
this makes the page smaller length wise. As an additional hint that
there is nothing to see here for the no hit bugs, set the div opacity
to 0.5 to make them fade away a bit.
Change-Id: I0e06d4df4de3e2d726c58e21aa9aa0d011d36510
This converts all the inline building of javascript structures into
using handlebars.js templates. It dramatically improves the
readability of the html snippets, and should make it much easier for
people to propose changes to content structure without being js
experts.
Additionally change the rendering order to render the plots
asynchronously so that we end up painting the main screen far faster,
which appears as a speed up to users.
This does mean we have a copy/paste of the template in both index and
gate files, eventually we can probably refactor that to an external
template file.
Change-Id: Ia54ce3b85d760f2948b04e88468c0627ade6884b
This makes the web ui support some additional timestamps that will be
brought in from the json data. It's done in a compatible way so that
if this change lands before the data payload updates land it won't
break horribly.
This will let us display how far behind we are with our data
generation.
Change-Id: If4926879569a36cdd29d7e261ef556ef1a64b39d
The Elasticsearch blog post includes a video and several graphs
explaining how elastic-recheck works, adding this link to the
main web dashboard.
Change-Id: I6f8a194639b865fa2b22c7f3d54f41c6add9e5ed
It's somewhat unclear what the "Unclassified failed jobs" in the
web UI actually represents, document this.
Change-Id: Ia4dafe1481ffa156ef20c48f41d0dc614ea7d2de
Adding code to add in links to crm114 logstash queries
for those entries on the uncategorized page.
We only add a link if results were found during page
production. This is to not waste human time on empty
queries. However, this is a nice-to-have and can
be removed should any objection exist.
We also add some verbiage at the top of the uncategorized
page that describes what the crm114 links are as well
as including links to more in-depth docs, which are added
with change I086b2dfa68ca2239d70cec6db0b22951e6786ed7.
Change-Id: Ie572ef90a3393b43d28608b95a8a9b24bd014962
List open gerrit reviews on the elastic_recheck status page. Listing the
reviews here can help us prioritize reviews of them. Currently one has
to manually dig through the launchpad notes for gerrit review links,
this automates that process.
Instead of looking for jenkins comments in launchpad about open patches,
directly query gerrit for open patches related to the bug on hand. Since
gerrit only supports string matching and not regex for messages, just
look for the bug number in the commit message. Our bug numbers are long
enough that it unlikely the number will come up in other cases.
Change-Id: Ida2144ccc5f0fdf91e2bd70714de80c83f4c1200
In I4e47ece38e68d4ee19ee61b9a107bba9f12abf8c we began the process to
make elastic-recheck reflect the fact that our Elastic Search index is
only now 10 days. This patch finishes up those changes.
Change-Id: I6df756f7c1a90b059487c7504443a70b7d3b7f35
At jog0's request, this bit of javascript for the list of
Uncategorized failed jobs adds a feature to limit the time period of
failures displayed (without reloading the page) to 24 hours, 2 days,
or 1 week, in addition to the usual 2 week limit.
Change-Id: I0b6e9b0ea8d0a8eb1ba6d2e1c47beb0803e3ec33
Put the tabs in a container so that they obey the page margins.
Change "Queue" to "Pipeline" since that's the correct Zuul
terminology.
Change-Id: I6a7d5614710f4eac55d7321a77183f8afd17a3e6
The 'Gate Queue' tab will only count hits that have caused gate failures
This, along with the overall categorization rate, help us have better
insight into what is causing the gate to reset.
Note: This needs a config patch to land before this can work. The
expected location of the output of elastic-recheck-graph has changed.
Co-Authored-By: Michael Krotscheck<krotscheck@gmail.com>
Change-Id: I23ed8d945c9517221622e1ca215c80539bb07bbd
the old classification rate is clearly wrong, though why the total
calculation is wrong is beyond me right now. Fix this to be sane.
Can't wait to retire all this code for something that's not a
bunch of iteration loops.
Change-Id: Ibafc1fa396ae21115931b051ba3f27cb44dffea3
done waiting for I354f6cfd7105a1d9df0d0ae19bd68745336f29ed to
land. If people want this back, please go nudge on that one.
Change-Id: I8ed7f3f2c39d662289ebe00b9d128cae52b165ed