Added unavailable count display in uptime view.

This commit is contained in:
Christian P. MOMON 2021-06-12 11:20:27 +02:00
parent 95006f3569
commit e365513e94
6 changed files with 305 additions and 3 deletions

View file

@ -134,6 +134,7 @@ public class UptimeView
data.setContent("alertCount", last.getAlertCount()); data.setContent("alertCount", last.getAlertCount());
data.setContent("errorCount", last.getErrorCount()); data.setContent("errorCount", last.getErrorCount());
data.setContent("voidCount", last.getVoidCount()); data.setContent("voidCount", last.getVoidCount());
data.setContent("unavailableCount", last.getUnavailableCount());
for (int dayCount = 0; dayCount < 22; dayCount++) for (int dayCount = 0; dayCount < 22; dayCount++)
{ {

View file

@ -0,0 +1,261 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://web.resource.org/cc/"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="48px"
height="48px"
id="svg1377"
sodipodi:version="0.32"
inkscape:version="0.45"
sodipodi:docbase="/home/dobey/Projects/gnome-icon-theme/scalable/status"
sodipodi:docname="dialog-warning.svg"
inkscape:output_extension="org.inkscape.output.svg.inkscape">
<defs
id="defs1379">
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient5060"
id="radialGradient6719"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(-2.774389,0,0,1.969706,112.7623,-872.8854)"
cx="605.71429"
cy="486.64789"
fx="605.71429"
fy="486.64789"
r="117.14286" />
<linearGradient
inkscape:collect="always"
id="linearGradient5060">
<stop
style="stop-color:black;stop-opacity:1;"
offset="0"
id="stop5062" />
<stop
style="stop-color:black;stop-opacity:0;"
offset="1"
id="stop5064" />
</linearGradient>
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient5060"
id="radialGradient6717"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(2.774389,0,0,1.969706,-1891.633,-872.8854)"
cx="605.71429"
cy="486.64789"
fx="605.71429"
fy="486.64789"
r="117.14286" />
<linearGradient
id="linearGradient5048">
<stop
style="stop-color:black;stop-opacity:0;"
offset="0"
id="stop5050" />
<stop
id="stop5056"
offset="0.5"
style="stop-color:black;stop-opacity:1;" />
<stop
style="stop-color:black;stop-opacity:0;"
offset="1"
id="stop5052" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5048"
id="linearGradient6715"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(2.774389,0,0,1.969706,-1892.179,-872.8854)"
x1="302.85715"
y1="366.64789"
x2="302.85715"
y2="609.50507" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient6525"
id="linearGradient3948"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.996047,0,-4.335762e-3,1.035255,2.669417e-2,-0.617581)"
x1="8.5469341"
y1="30.281681"
x2="30.85088"
y2="48.301884" />
<linearGradient
y2="56.052299"
x2="47.319698"
y1="11.1133"
x1="4.1914001"
gradientUnits="userSpaceOnUse"
id="linearGradient6525">
<stop
id="stop6529"
style="stop-color:#ffffff;stop-opacity:1;"
offset="0" />
<stop
id="stop6531"
style="stop-color:#ffffff;stop-opacity:0.34020618;"
offset="1" />
</linearGradient>
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666"
borderopacity="0.30980392"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="1"
inkscape:cx="63.159044"
inkscape:cy="28.890318"
inkscape:current-layer="g7435"
showgrid="false"
inkscape:grid-bbox="true"
inkscape:document-units="px"
inkscape:window-width="1105"
inkscape:window-height="1084"
inkscape:window-x="452"
inkscape:window-y="89"
gridempspacing="4"
inkscape:showpageshadow="false" />
<metadata
id="metadata1382">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title>Warning</dc:title>
<dc:date />
<dc:creator>
<cc:Agent>
<dc:title>Jakub Steiner</dc:title>
</cc:Agent>
</dc:creator>
<dc:contributor>
<cc:Agent>
<dc:title />
</cc:Agent>
</dc:contributor>
<dc:subject>
<rdf:Bag>
<rdf:li>dialog</rdf:li>
<rdf:li>warning</rdf:li>
<rdf:li>caution</rdf:li>
</rdf:Bag>
</dc:subject>
<cc:license
rdf:resource="http://creativecommons.org/licenses/GPL/2.0/" />
</cc:Work>
<cc:License
rdf:about="http://creativecommons.org/licenses/GPL/2.0/">
<cc:permits
rdf:resource="http://web.resource.org/cc/Reproduction" />
<cc:permits
rdf:resource="http://web.resource.org/cc/Distribution" />
<cc:requires
rdf:resource="http://web.resource.org/cc/Notice" />
<cc:permits
rdf:resource="http://web.resource.org/cc/DerivativeWorks" />
<cc:requires
rdf:resource="http://web.resource.org/cc/ShareAlike" />
<cc:requires
rdf:resource="http://web.resource.org/cc/SourceCode" />
</cc:License>
</rdf:RDF>
</metadata>
<g
id="layer1"
inkscape:label="Layer 1"
inkscape:groupmode="layer">
<g
transform="matrix(1.566667,0.000000,0.000000,1.566667,-8.925566,-23.94764)"
id="g7435">
<g
style="display:inline"
transform="matrix(1.508284e-2,0,0,1.391344e-2,34.42474,40.95434)"
id="g6707">
<rect
style="opacity:0.40206185;color:black;fill:url(#linearGradient6715);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
id="rect6709"
width="1339.6335"
height="478.35718"
x="-1559.2523"
y="-150.69685" />
<path
style="opacity:0.40206185;color:black;fill:url(#radialGradient6717);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
d="M -219.61876,-150.68038 C -219.61876,-150.68038 -219.61876,327.65041 -219.61876,327.65041 C -76.744594,328.55086 125.78146,220.48075 125.78138,88.454235 C 125.78138,-43.572302 -33.655436,-150.68036 -219.61876,-150.68038 z "
id="path6711"
sodipodi:nodetypes="cccc" />
<path
sodipodi:nodetypes="cccc"
id="path6713"
d="M -1559.2523,-150.68038 C -1559.2523,-150.68038 -1559.2523,327.65041 -1559.2523,327.65041 C -1702.1265,328.55086 -1904.6525,220.48075 -1904.6525,88.454235 C -1904.6525,-43.572302 -1745.2157,-150.68036 -1559.2523,-150.68038 z "
style="opacity:0.40206185;color:black;fill:url(#radialGradient6719);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
</g>
<g
id="g3952"
transform="matrix(1.508284e-2,0,0,1.391344e-2,34.42474,40.95434)"
style="display:inline">
<rect
y="-150.69685"
x="-1559.2523"
height="478.35718"
width="1339.6335"
id="rect3954"
style="opacity:0.40206185;color:black;fill:url(#linearGradient6715);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
<path
sodipodi:nodetypes="cccc"
id="path3956"
d="M -219.61876,-150.68038 C -219.61876,-150.68038 -219.61876,327.65041 -219.61876,327.65041 C -76.744594,328.55086 125.78146,220.48075 125.78138,88.454235 C 125.78138,-43.572302 -33.655436,-150.68036 -219.61876,-150.68038 z "
style="opacity:0.40206185;color:black;fill:url(#radialGradient6717);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
<path
style="opacity:0.40206185;color:black;fill:url(#radialGradient6719);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
d="M -1559.2523,-150.68038 C -1559.2523,-150.68038 -1559.2523,327.65041 -1559.2523,327.65041 C -1702.1265,328.55086 -1904.6525,220.48075 -1904.6525,88.454235 C -1904.6525,-43.572302 -1745.2157,-150.68036 -1559.2523,-150.68038 z "
id="path3958"
sodipodi:nodetypes="cccc" />
</g>
<path
style="fill:#f57900;fill-opacity:1;fill-rule:nonzero;stroke:#ce5c00;stroke-width:0.63829809;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 34.661531,40.883147 L 22.706683,18.443515 C 22.363065,17.820192 21.741298,17.473902 21.048838,17.473902 C 20.356376,17.473902 19.731421,17.889449 19.382581,18.512773 L 7.5167568,40.952406 C 7.2374515,41.506471 7.2342608,42.26831 7.5781714,42.822375 C 7.9220807,43.37644 8.4748902,43.653472 9.167352,43.653472 L 32.988021,43.653472 C 33.680481,43.653472 34.305147,43.307182 34.584454,42.753116 C 34.933004,42.199051 34.935904,41.506471 34.661531,40.883147 z "
id="path6485"
inkscape:r_cx="true"
inkscape:r_cy="true" />
<path
inkscape:r_cy="true"
inkscape:r_cx="true"
id="path6496"
d="M 12.350235,39.643509 C 12.169549,39.94119 12.347947,40.179336 12.646973,40.179336 L 29.512056,40.179336 C 29.811084,40.179336 29.991516,39.94119 29.813372,39.643509 L 21.328843,23.806857 C 21.150698,23.509176 20.911478,23.509176 20.790595,23.806857 L 12.350235,39.643509 z "
style="fill:#fcaf3e;fill-rule:nonzero;stroke:none;stroke-miterlimit:4" />
<path
style="opacity:0.5;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient3948);stroke-width:0.63829821;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 33.589554,40.372476 L 22.40647,19.408588 C 21.930192,18.505487 21.759362,18.215736 21.035555,18.215736 C 20.413025,18.215736 20.087298,18.63772 19.637426,19.490174 L 8.5784665,40.437181 C 7.9362948,41.613232 7.8674918,41.919785 8.176589,42.437412 C 8.4856845,42.95504 8.8825484,42.926847 10.348923,42.960612 L 32.084644,42.960612 C 33.449812,42.977494 33.757327,42.873453 34.008507,42.355827 C 34.32194,41.838198 34.188623,41.427523 33.589554,40.372476 z "
id="path1325"
sodipodi:nodetypes="ccsccscccc"
inkscape:r_cx="true"
inkscape:r_cy="true" />
<g
style="fill:#121312;fill-opacity:1;fill-rule:nonzero;stroke:black;stroke-width:0.98018837;stroke-miterlimit:4"
transform="matrix(0.561759,0,0,0.570854,7.608308,17.60115)"
id="g6498"
inkscape:r_cx="true"
inkscape:r_cy="true">
<path
style="fill:#121312;fill-opacity:1;stroke:none"
d="M 23.9,36.5 C 22.6,36.5 21.6,35.5 21.6,34.2 C 21.6,32.8 22.5,31.9 23.9,31.9 C 25.3,31.9 26.1,32.8 26.2,34.2 C 26.2,35.5 25.3,36.5 23.9,36.5 L 23.9,36.5 z M 23.167629,29.066754 L 21.9,19.1 L 25.9,19.1 L 24.632371,30.709518 L 23.167629,29.066754 z "
id="path6500"
inkscape:r_cx="true"
inkscape:r_cy="true"
sodipodi:nodetypes="csscccccccc" />
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 12 KiB

View file

@ -0,0 +1,17 @@
https://commons.wikimedia.org/wiki/File:Gnome-dialog-warning.svg
Gnome-dialog-warning.svg
An icon from the GNOME-icon-theme.
GNOME Project
Creative Commons Attribution-Share Alike 3.0
Gnome-dialog-warning.svg [[File:Gnome-dialog-warning.svg|Gnome-dialog-warning]]
January 12, 2008
48 × 48
image/svg+xml

View file

@ -852,21 +852,28 @@ table > tfoot > tr > th.danger
text-align: center; text-align: center;
} }
.uptimeCounts ul li .uptimeCounts > ul > li
{ {
display: inline-block; display: inline-block;
list-style-type:none; list-style-type:none;
padding: 0 5px 5px 5px; padding: 0 5px 5px 5px;
} }
.uptimeCounts img .uptimeCounts > ul > li > img
{ {
height: 18px; height: 18px;
width: 11px; width: 11px;
vertical-align: bottom; vertical-align: bottom;
} }
.uptimeCounts ul li span .uptimeCounts > ul > li:last-child img
{
height: 18px;
width: 18px;
vertical-align: bottom;
}
.uptimeCounts > ul > li > span
{ {
padding-left : 5px; padding-left : 5px;
padding-right : 5px; padding-right : 5px;

View file

@ -37,6 +37,7 @@
<li><img src="status-alert.png" title="" /><span id="alertCount">n/a</span></li> <li><img src="status-alert.png" title="" /><span id="alertCount">n/a</span></li>
<li><img src="status-error.png" title="" /><span id="errorCount">n/a</span></li> <li><img src="status-error.png" title="" /><span id="errorCount">n/a</span></li>
<li><img src="status-void.png" title="" /><span id="voidCount">n/a</span></li> <li><img src="status-void.png" title="" /><span id="voidCount">n/a</span></li>
<li><img src="dialog-warning.svg" title="" /><span id="unavailableCount">n/a</span></li>
</ul> </ul>
</div> </div>
<table id="uptimeTable" class="center_table table_classic left uptimeTable"> <table id="uptimeTable" class="center_table table_classic left uptimeTable">

View file

@ -107,6 +107,21 @@ public class UptimeStat
return result; return result;
} }
/**
* Gets the unavailable count.
*
* @return the unavailable count
*/
public int getUnavailableCount()
{
int result;
result = this.errorCount + this.alertCount + this.voidCount;
//
return result;
}
public int getVoidCount() public int getVoidCount()
{ {
return this.voidCount; return this.voidCount;