Compare commits

..

2 Commits

Author SHA1 Message Date
0b4ae61c12 fix icon for drs 2023-05-26 08:49:43 +00:00
1d1d14c656 fix icons for gaussdb 2023-05-26 07:57:37 +00:00
37 changed files with 3 additions and 1474 deletions

View File

@ -1,12 +0,0 @@
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve" width="132px" height="132px">
<style type="text/css">
.st0{fill:#040000;}
</style>
<g>
<path class="st0" d="M47,33.2c0-1.6-1.3-3-3-3c-1.6,0-3,1.3-3,3c0,1.3,0.9,2.4,2.1,2.8H43v5.2c0,1.1-0.9,1.8-2,1.8H7&#10;&#9;&#9;c-1.1,0-2-0.7-2-1.8V24.1c0,0,0,0,0,0s0,0,0,0V24h0c-0.1-0.5-0.5-0.9-1-0.9S3,23.5,3,24h0v0.1c0,0,0,0,0,0s0,0,0,0v17.1&#10;&#9;&#9;C3,43.4,4.8,45,7,45H41c2.2,0,4-1.6,4-3.8V36h-0.1C46.1,35.6,47,34.5,47,33.2z M44,35.2c-1.1,0-2-0.9-2-2s0.9-2,2-2&#10;&#9;&#9;c1.1,0,2,0.9,2,2S45.1,35.2,44,35.2z"/>
<path class="st0" d="M6.9,14.2c0-1.3-0.8-2.4-2-2.8V7.2C5,6.1,5.9,5,7,5H41c1.1,0,2,1.1,2,2.2V24h0c0,0,0,0.1,0,0.1&#10;&#9;&#9;c0,0.6,0.4,1,1,1c0.6,0,1-0.4,1-1c0,0,0-0.1,0-0.1h0V7.2C45,5,43.2,3,41,3H7C4.8,3,3,5,3,7.2v4.2c-1.1,0.4-2,1.5-2,2.8&#10;&#9;&#9;c0,1.6,1.3,3,3,3S6.9,15.8,6.9,14.2z M2,14.2c0-1.1,0.9-2,2-2s2,0.9,2,2s-0.9,2-2,2S2,15.2,2,14.2z"/>
<polygon class="st0" points="36,30 37,30 37,23.5 37,22.4 37,18 37,17 36.5,17 36,17 &#9;"/>
<path class="st0" d="M25.3,17h-0.5H24v13h1v-6h6.6c1.3,0,2.4-1.6,2.4-3v-1.4c0-1.4-1.1-2.6-2.4-2.6H25.3z M33,19.6V21&#10;&#9;&#9;c0,0.8-0.7,2-1.4,2H25v-5h6.6C32.3,18,33,18.8,33,19.6z"/>
<path class="st0" d="M17.3,17h-1.1c-2,0-2.6,1.8-2.8,2.4L11,30h1.1l1.4-6H20v0l1.4,6h1.1l-2.3-10.6C19.9,18.8,19.3,17,17.3,17z&#10;&#9;&#9; M19.8,23h-6.1l0.7-3.3c0.4-1.2,1-1.7,2-1.7H17c1,0,1.6,0.5,2,1.8L19.8,23z"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -1,3 +0,0 @@
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve" width="132px" height="132px">
<path d="M42,21.1c-0.6,0-1,0.4-1,1v10c0,1.5-1.2,3.4-2.6,4.2l-12.8,7.1c-1.4,0.8-3.8,0.8-5.2,0L7.6,36.3C6.2,35.5,5,33.6,5,32.1&#10;&#9;V17.9c0-1.5,1.2-3.4,2.6-4.2l12.8-7.1c1.4-0.8,3.8-0.8,5.2,0c0.5,0.3,1.1,0.1,1.4-0.4s0.1-1.1-0.4-1.4c-2-1.1-5.2-1.1-7.2,0&#10;&#9;L6.6,11.9C4.5,13,3,15.6,3,17.9v14.2c0,2.3,1.5,4.8,3.6,6l12.8,7.1c1,0.6,2.3,0.8,3.6,0.8s2.6-0.3,3.6-0.8l12.8-7.1&#10;&#9;c2.1-1.1,3.6-3.7,3.6-6v-10C43,21.6,42.6,21.1,42,21.1z M44.9,10.6l-2-2c-0.2-0.2-0.5-0.2-0.7,0l-2,2c-0.2,0.2-0.2,0.5,0,0.7l2,2&#10;&#9;c0.1,0.1,0.2,0.1,0.4,0.1c0.2,0,0.3,0,0.4-0.1l2-2C45,11.2,45,10.8,44.9,10.6z M30.5,14.2c0.1,0.1,0.2,0.1,0.4,0.1&#10;&#9;c0.2,0,0.3-0.1,0.4-0.1l1.1-1.1l2.1,2.1l-1.2,1.2c-0.2,0.2-0.2,0.5,0,0.7l1.1,1.1l-2.9,1.6l-8.3-4.7c-0.2-0.1-0.3-0.1-0.5,0&#10;&#9;l-8.5,4.8c-0.2,0.1-0.3,0.3-0.3,0.4v9.5c0,0.2,0.1,0.3,0.3,0.4l8.5,4.8c0.1,0,0.2,0.1,0.2,0.1s0.2,0,0.2-0.1l8.5-4.8&#10;&#9;c0.2-0.1,0.3-0.3,0.3-0.4v-9.2l3.1-1.7l1,1c0.1,0.1,0.2,0.1,0.4,0.1c0.2,0,0.3,0,0.4-0.1l2.8-2.8c0.2-0.2,0.2-0.5,0-0.7l-2.8-2.8&#10;&#9;c-0.2-0.2-0.5-0.2-0.7,0l-0.9,0.9L33,12.4l1.1-1.1c0.1-0.1,0.1-0.2,0.1-0.4c0-0.1-0.1-0.3-0.1-0.4l-1-1l2-2l1.1,1.1&#10;&#9;c0.1,0.1,0.2,0.1,0.4,0.1c0.2,0,0.3-0.1,0.4-0.1l2.8-2.8c0.2-0.2,0.2-0.5,0-0.7L37,2.3c-0.2-0.2-0.5-0.2-0.7,0l-3,2.7&#10;&#9;c-0.2,0.2-0.2,0.5,0,0.7l1.1,1.1l-2,2l-1.1-1.1c-0.2-0.2-0.5-0.2-0.7,0l-2.8,2.8c-0.2,0.2-0.2,0.5,0,0.7L30.5,14.2z M22.5,33.6&#10;&#9;L15,29.5v-8.3l7.5,4.2V33.6z M23,24.4l-7.5-4.2L23,16l7.5,4.2L23,24.4z M31,29.5l-7.5,4.2v-8.3l7.5-4.2V29.5z M36.5,14.6l2.1,2.1&#10;&#9;l-2.1,2.1l-2.1-2.1L36.5,14.6z M36.5,3.2l2.1,2.1l-2.1,2.1L35.1,6l-0.7-0.7L36.5,3.2z M30.8,8.9L33,11l-2.1,2.1L28.7,11L30.8,8.9z"/>
</svg>

Before

Width:  |  Height:  |  Size: 1.9 KiB

View File

@ -1,3 +0,0 @@
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve" width="132px" height="132px">
<path d="M34.9,19.8c0.1,0.1,0.2,0.2,0.4,0.2h5.3c0.2,0,0.3-0.1,0.4-0.2l2.6-4.5c0.1-0.1,0.1-0.3,0-0.4l-2.6-4.5&#10;&#9;C41,10.1,40.8,10,40.6,10h-5.3c-0.2,0-0.3,0.1-0.4,0.2l-2.6,4.5c-0.1,0.1-0.1,0.3,0,0.4L34.9,19.8z M35.6,10.9h4.7l2.4,4.1l-2.4,4.1&#10;&#9;h-4.7L33.3,15L35.6,10.9z M44.8,4.3l-2-1.2c-0.2-0.1-0.4-0.1-0.5,0l-2,1.2C40.1,4.4,40,4.6,40,4.8v2.5c0,0.2,0.1,0.3,0.2,0.4l2,1.2&#10;&#9;C42.3,9,42.4,9,42.5,9s0.2,0,0.3-0.1l2-1.2C44.9,7.6,45,7.4,45,7.2V4.8C45,4.6,44.9,4.4,44.8,4.3z M44,7l-1.5,0.9L41,7V5l1.5-0.9&#10;&#9;L44,5V7z M21.3,14.8c0.1,0.2,0.3,0.2,0.4,0.2h6.6c0.2,0,0.3-0.1,0.4-0.3l3.2-5.5c0.1-0.2,0.1-0.3,0-0.5l-3.2-5.5&#10;&#9;C28.7,3.1,28.5,3,28.3,3h-6.6c-0.2,0-0.3,0.1-0.4,0.2l-3.3,5.5c-0.1,0.2-0.1,0.4,0,0.5L21.3,14.8z M22.1,4h6l2.9,5L28,14H22l-2.9-5&#10;&#9;L22.1,4z M39.9,23.5c-0.2-0.3-0.5-0.5-0.9-0.5h-7.3l-3.6-6.5C28,16.2,27.7,16,27.3,16H20l-3.6-6.5C16.2,9.2,15.9,9,15.5,9H7.7&#10;&#9;C7.3,9,7,9.2,6.8,9.5l-3.7,7c-0.2,0.3-0.2,0.7,0,1l3.4,6L3.1,30c-0.1,0.3-0.2,0.6,0,0.9l3.7,7.5C6.9,38.8,7.3,39,7.7,39H15l3.6,5.5&#10;&#9;c0.2,0.3,0.5,0.5,0.8,0.5h7.9c0.3,0,0.7-0.2,0.8-0.5l3.6-5.5h7.3c0.4,0,0.7-0.2,0.9-0.5l3.9-7c0.2-0.3,0.2-0.7,0-1L39.9,23.5z&#10;&#9; M26.7,18l3.6,6.5c0,0,0,0,0,0L27,30h-7.3l-3.6-6.4l3.4-5.6H26.7z M5.1,17l3.1-6h6.7l3.6,6.5c0,0,0,0,0,0L15.3,23H8.6c0,0,0,0,0,0&#10;&#9;L5.1,17z M8.3,37l-3.2-6.5L8.5,24h6.7l3.7,6.5L15.4,37H8.3z M30.4,37.5L26.8,43H20l-3.6-5.5c0,0,0,0,0-0.1l3.4-6.4H27L30.4,37.5&#10;&#9;C30.4,37.4,30.4,37.4,30.4,37.5z M38.5,37h-7.1l-3.5-6.5l3.3-5.5h7.3l3.4,6L38.5,37z"/>
</svg>

Before

Width:  |  Height:  |  Size: 1.7 KiB

View File

@ -1,12 +0,0 @@
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 44 44" style="enable-background:new 0 0 44 44;" xml:space="preserve" width="132px" height="132px">
<g>
<path d="M28.5,21.3c0.3,0,0.5-0.2,0.5-0.5v-9.5c0-2.2,1.8-4,4-4c0,0,0,0,0.1,0c0.2,0.9,1,1.5,1.9,1.5c1.1,0,2-0.9,2-2&#10;&#9;&#9;c0-1.1-0.9-2-2-2c-0.9,0-1.7,0.6-1.9,1.5c0,0,0,0-0.1,0c-2.8,0-5,2.2-5,5v9.5C28,21.1,28.2,21.3,28.5,21.3z M35,5.8&#10;&#9;&#9;c0.6,0,1,0.4,1,1c0,0.6-0.4,1-1,1s-1-0.4-1-1C34,6.3,34.4,5.8,35,5.8z"/>
<path d="M16,34.8v-5c0-0.3-0.2-0.5-0.5-0.5S15,29.5,15,29.8v5c0,0.3,0.2,0.5,0.5,0.5S16,35,16,34.8z"/>
<path d="M29,34.8v-5c0-0.3-0.2-0.5-0.5-0.5S28,29.5,28,29.8v5c0,0.3,0.2,0.5,0.5,0.5S29,35,29,34.8z"/>
<path d="M22.5,37.5v-5c0-0.3-0.2-0.5-0.5-0.5s-0.5,0.2-0.5,0.5v5c0,0.3,0.2,0.5,0.5,0.5S22.5,37.7,22.5,37.5z"/>
<path d="M21.5,7.9v15.5c0,0.3,0.2,0.5,0.5,0.5s0.5-0.2,0.5-0.5V7.9c1.1-0.2,2-1.2,2-2.4C24.5,4.1,23.4,3,22,3s-2.5,1.1-2.5,2.5&#10;&#9;&#9;C19.5,6.7,20.4,7.7,21.5,7.9z M22,4c0.8,0,1.5,0.7,1.5,1.5S22.8,7,22,7s-1.5-0.7-1.5-1.5S21.2,4,22,4z"/>
<path d="M9.5,8.8c0.9,0,1.7-0.6,1.9-1.5c2,0.2,3.6,1.9,3.6,4v9.5c0,0.3,0.2,0.5,0.5,0.5s0.5-0.2,0.5-0.5v-9.5c0-2.6-2-4.7-4.6-5&#10;&#9;&#9;c-0.2-0.9-1-1.5-1.9-1.5c-1.1,0-2,0.9-2,2C7.5,7.9,8.4,8.8,9.5,8.8z M9.5,5.8c0.6,0,1,0.4,1,1c0,0.6-0.4,1-1,1s-1-0.4-1-1&#10;&#9;&#9;C8.5,6.3,8.9,5.8,9.5,5.8z"/>
<path d="M39,17.3l-6.3-3.7l0,0c-0.2-0.1-0.4-0.2-0.6-0.2c-0.6,0-1,0.4-1,1c0,0.4,0.2,0.6,0.5,0.8l0,0l5.9,3.5l-14,8.2&#10;&#9;&#9;c-0.7,0.4-2.1,0.4-2.8,0l-14-8.2l5.7-3.3l0,0c0.3-0.2,0.5-0.5,0.5-0.8c0-0.6-0.4-1-1-1c-0.2,0-0.4,0.1-0.6,0.2l0,0L5,17.3&#10;&#9;&#9;c-1.3,0.8-1.3,2.1,0,2.8l14.6,8.5c1.3,0.8,3.5,0.8,4.9,0L39,20.2C40.3,19.4,40.3,18.1,39,17.3z"/>
<path d="M31.5,31.1C31.4,31,31.3,31,31.2,31c-0.3,0-0.5,0.2-0.5,0.5c0,0.2,0.1,0.3,0.2,0.4c1.3,1,2.1,2.1,2.1,3.3&#10;&#9;&#9;c0,3.1-4.9,5.8-11,5.8s-11-2.7-11-5.8c0-1.2,0.8-2.4,2.1-3.3c0.1-0.1,0.2-0.2,0.2-0.4c0-0.3-0.2-0.5-0.5-0.5c-0.1,0-0.2,0-0.3,0.1&#10;&#9;&#9;c-1.6,1.1-2.5,2.6-2.5,4.1C10,39,15.4,42,22,42s12-3,12-6.8C34,33.7,33.1,32.2,31.5,31.1z"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 2.1 KiB

View File

@ -1,12 +0,0 @@
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve" width="132px" height="132px">
<style type="text/css">
.st0{fill:#060001;}
.st1{fill:#040000;}
.st2{fill:none;stroke:#000000;stroke-miterlimit:10;}
.st3{fill:#221815;}
.st4{fill:#080102;}
.st5{fill:none;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;}
.st6{fill:#070001;}
</style>
<path d="M45.4,16L37.6,3.9c-0.7-1.2-2-1.9-3.5-1.9H20.2c-1.4,0-2.9,0.8-3.6,2L2.5,27.9c-0.7,1.3-0.7,2.9,0.1,4.1l7.8,12.1&#10;&#9;c0.7,1.2,2,1.9,3.5,1.9h13.9c1.4,0,2.9-0.8,3.6-2l14.1-23.9C46.2,18.8,46.2,17.2,45.4,16z M29.6,43c-0.4,0.6-1,1-1.7,1h-14&#10;&#9;c-0.7,0-1.3-0.4-1.7-0.9L4.4,31c-0.4-0.6-0.4-1.4,0-2.1l5.6-9.6c0.1,0.5,0.3,1,0.5,1.5L17.6,32c0.7,1.2,2,1.9,3.6,1.9c0,0,0,0,0.1,0&#10;&#9;l12.7-0.2c0.5,0,1-0.1,1.4-0.3L29.6,43z M36.6,30.7l-0.2,0.4c-0.5,0.9-1.5,1.6-2.7,1.6L21,32.9h-0.1c-1.1,0-2-0.6-2.7-1.5l-7-11.2&#10;&#9;c-0.6-0.9-0.6-2-0.1-3l0.2-0.4c0.5-0.9,1.5-1.6,2.7-1.6L26.8,15h0.1c1.1,0,2,0.6,2.7,1.5l7,11.2C37.1,28.7,37.2,29.8,36.6,30.7z&#10;&#9; M43.6,19.1L38,28.7c-0.1-0.5-0.3-1-0.5-1.5L30.4,16c-0.7-1.2-2-1.9-3.6-1.9c0,0,0,0-0.1,0l-12.7,0.2c-0.5,0-1,0.1-1.4,0.3L18.4,5&#10;&#9;c0.4-0.6,1-1,1.7-1H34c0.7,0,1.3,0.4,1.7,0.9L43.6,17C44,17.7,44,18.4,43.6,19.1z"/>
</svg>

Before

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -1,10 +0,0 @@
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve" width="132px" height="132px">
<style type="text/css">
.st0{fill:#060001;}
.st1{fill:#040000;}
.st2{fill:#221815;}
.st3{fill:#080102;}
.st4{fill:#070001;}
</style>
<path class="st3" d="M20.4,17.6l3.2,1.8c0.1,0.1,0.3,0.1,0.4,0.1c0.2,0,0.3,0,0.4-0.1l3.2-1.8c0.3-0.1,0.4-0.5,0.4-0.7v-3.7&#10;&#9;c0-0.3-0.2-0.6-0.4-0.7l-3.2-1.8c-0.2-0.1-0.6-0.1-0.8,0l-3.2,1.8c-0.3,0.1-0.4,0.5-0.4,0.7v3.7C20,17.2,20.2,17.5,20.4,17.6z&#10;&#9; M21,13.3l3-1.8l3,1.8v3.5l-3,1.8l-3-1.8V13.3z M14.9,28.3h-2.8c-1.2,0-2.1,1-2.1,2.1v2.9c0,1.2,0.9,2.1,2.1,2.1h2.8&#10;&#9;c1.2,0,2.1-1,2.1-2.1v-2.9C17,29.3,16.1,28.3,14.9,28.3z M16,33.4L16,33.4c0,0.6-0.5,1.1-1.1,1.1h-2.8c-0.6,0-1.1-0.5-1.1-1.1v-2.9&#10;&#9;c0-0.6,0.5-1.1,1.1-1.1h2.8c0.6,0,1.1,0.5,1.1,1.1V33.4z M24,20.7c-0.3,0-0.5,0.2-0.5,0.5v5.7c0,0.3,0.2,0.5,0.5,0.5&#10;&#9;s0.5-0.2,0.5-0.5v-5.7C24.5,20.9,24.3,20.7,24,20.7z M41.6,11L26.3,2.5c-1.3-0.7-3.4-0.7-4.7,0L6.4,11C5,11.8,4,13.5,4,15v18&#10;&#9;c0,1.5,1,3.2,2.4,4l15.3,8.5c0.6,0.4,1.5,0.6,2.3,0.6s1.7-0.2,2.3-0.6l15.3-8.5c1.3-0.7,2.4-2.5,2.4-4V15C44,13.5,43,11.8,41.6,11z&#10;&#9; M41.9,33c0,0.8-0.6,1.8-1.3,2.2l-15.3,8.5c-0.7,0.4-2,0.4-2.6,0L7.4,35.2c-0.7-0.4-1.3-1.4-1.3-2.2V15c0-0.8,0.6-1.8,1.3-2.2&#10;&#9;l15.3-8.5C23,4.1,23.5,4,24,4s1,0.1,1.3,0.3l15.3,8.5c0.7,0.4,1.3,1.4,1.3,2.2V33z M35.9,28.3h-2.8c-1.2,0-2.1,1-2.1,2.1v2.9&#10;&#9;c0,1.2,0.9,2.1,2.1,2.1h2.8c1.2,0,2.1-1,2.1-2.1v-2.9C38,29.3,37.1,28.3,35.9,28.3z M37,33.4c0,0.6-0.5,1.1-1.1,1.1h-2.8&#10;&#9;c-0.6,0-1.1-0.5-1.1-1.1v-2.9c0-0.6,0.5-1.1,1.1-1.1h2.8c0.6,0,1.1,0.5,1.1,1.1V33.4z M34.5,27.3c0.1,0,0.2,0,0.2-0.1&#10;&#9;c0.2-0.1,0.3-0.5,0.2-0.7c-0.1-0.2-2.5-4.5-6.7-6.8c-0.2-0.1-0.5,0-0.7,0.2c-0.1,0.2,0,0.6,0.2,0.7c3.9,2.2,6.3,6.4,6.3,6.5&#10;&#9;C34.2,27.2,34.3,27.3,34.5,27.3z M25.4,28.3h-2.8c-1.2,0-2.1,1-2.1,2.1v2.9c0,1.2,0.9,2.1,2.1,2.1h2.8c1.2,0,2.1-1,2.1-2.1v-2.9&#10;&#9;C27.5,29.3,26.6,28.3,25.4,28.3z M26.5,33.4L26.5,33.4c0,0.6-0.5,1.1-1.1,1.1h-2.8c-0.6,0-1.1-0.5-1.1-1.1v-2.9&#10;&#9;c0-0.6,0.5-1.1,1.1-1.1h2.8c0.6,0,1.1,0.5,1.1,1.1V33.4z M19.8,19.7c-4.1,2.3-6.6,6.7-6.7,6.8c-0.1,0.2-0.1,0.6,0.2,0.7&#10;&#9;c0.1,0,0.2,0.1,0.2,0.1c0.2,0,0.3-0.1,0.4-0.3c0,0,2.4-4.3,6.3-6.5c0.2-0.1,0.3-0.4,0.2-0.7C20.3,19.7,20,19.6,19.8,19.7z"/>
</svg>

Before

Width:  |  Height:  |  Size: 2.4 KiB

View File

@ -1,12 +0,0 @@
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve" width="132px" height="132px">
<style type="text/css">
.st0{fill:#060001;}
.st1{fill:#040000;}
.st2{fill:none;stroke:#000000;stroke-miterlimit:10;}
.st3{fill:#221815;}
.st4{fill:#080102;}
.st5{fill:none;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;}
.st6{fill:#070001;}
</style>
<path class="st0" d="M27,24.2c0.5-0.7,0.8-1.5,0.8-2.5c0-2.1-1.7-4-4-4s-3.9,1.8-3.9,4s1.7,4,4,4c0.9,0,1.7-0.3,2.4-0.8l1.5,1.4&#10;&#9;c0.1,0.1,0.2,0.1,0.3,0.1c0.1,0,0.3-0.1,0.4-0.2c0.2-0.2,0.2-0.5,0-0.7L27,24.2z M23.9,24.7c-1.6,0-3-1.3-3-3c0-1.6,1.3-3,3-3&#10;&#9;s3,1.3,3,3C26.8,23.4,25.5,24.7,23.9,24.7z M31,18.5c-1.1-2.9-3.9-4.7-7-4.7c-3.1,0-5.9,1.8-7,4.7c-3.7,0.5-6.4,3.7-6.4,7.4&#10;&#9;c0,4.1,3.4,7.5,7.5,7.5h12.6c0.1,0,0.2,0,0.2-0.1c3.6-0.5,6.4-3.6,6.4-7.4C37.4,22,34.7,19,31,18.5z M31.2,32.1v-4.5&#10;&#9;c0-0.3-0.2-0.5-0.5-0.5c-0.3,0-0.5,0.2-0.5,0.5v4.6h-3.1v-2.6c0-0.3-0.2-0.5-0.5-0.5s-0.5,0.2-0.5,0.5v2.6H23v-4&#10;&#9;c0-0.3-0.2-0.5-0.5-0.5S22,28,22,28.2v4h-3.1v-2.8c0-0.3-0.2-0.5-0.5-0.5s-0.5,0.3-0.5,0.5v2.8c-3.4-0.2-6.2-3-6.2-6.4&#10;&#9;c0-3.3,2.5-6,5.8-6.3c0.2,0,0.4-0.2,0.4-0.3c0.9-2.6,3.4-4.3,6.2-4.3c2.8,0,5.2,1.7,6.2,4.3c0.1,0.2,0.2,0.3,0.4,0.3&#10;&#9;c3.3,0.4,5.8,3.1,5.8,6.3C36.4,28.9,34.2,31.5,31.2,32.1z M41.6,11L26.3,2.5c-1.3-0.7-3.4-0.7-4.7,0L6.4,11C5,11.8,4,13.5,4,15v18&#10;&#9;c0,1.5,1,3.2,2.4,4l15.3,8.5c0.6,0.4,1.5,0.6,2.3,0.6s1.7-0.2,2.3-0.6l15.3-8.5c1.3-0.7,2.4-2.5,2.4-4V15C44,13.5,43,11.8,41.6,11z&#10;&#9; M41.9,33c0,0.8-0.6,1.8-1.3,2.2l-15.3,8.5c-0.7,0.4-2,0.4-2.6,0L7.4,35.2c-0.7-0.4-1.3-1.4-1.3-2.2V15c0-0.8,0.6-1.8,1.3-2.2&#10;&#9;l15.3-8.5C23,4.1,23.5,4,24,4s1,0.1,1.3,0.3l15.3,8.5c0.7,0.4,1.3,1.4,1.3,2.2V33z"/>
</svg>

Before

Width:  |  Height:  |  Size: 1.9 KiB

View File

@ -1,6 +0,0 @@
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve" width="132px" height="132px">
<style type="text/css">
.st0{fill:#252B3A;}
</style>
<path class="st0" d="M18.1,39c0,0.6-0.4,1-1,1h-2.8C7.5,40,2,34.5,2,27.8c0-6,4.4-11.1,10.3-12.1C14.1,11.1,18.6,8,23.6,8&#10;&#9;c4.8,0,9.1,2.8,11.1,7.1c0.2,0.5,0,1.1-0.5,1.3c-0.5,0.2-1.1,0-1.3-0.5c-1.7-3.6-5.3-6-9.3-6c-4.4,0-8.2,2.8-9.7,6.9&#10;&#9;c-0.1,0.4-0.5,0.6-0.8,0.7C7.9,18.1,4,22.5,4,27.8C4,33.4,8.6,38,14.2,38H17C17.6,38,18.1,38.4,18.1,39z M46,32.4v5.2&#10;&#9;c0,1.3-1.1,2.4-2.4,2.4H23.4c-1.3,0-2.4-1.1-2.4-2.4v-5.2c0-1.3,1.1-2.4,2.4-2.4H38v-1.6c0-0.8,0.6-1.4,1.4-1.4h0.1v-2.5&#10;&#9;c0-0.3,0.2-0.5,0.5-0.5s0.5,0.2,0.5,0.5V27h0.1c0.8,0,1.4,0.6,1.4,1.4V30h1.6C44.9,30,46,31.1,46,32.4z M39,30h2v-1.6&#10;&#9;c0-0.2-0.2-0.4-0.4-0.4h-1.3c-0.2,0-0.4,0.2-0.4,0.4V30H39z M45,32.4c0-0.8-0.6-1.4-1.4-1.4H23.4c-0.8,0-1.4,0.6-1.4,1.4v5.2&#10;&#9;c0,0.8,0.6,1.4,1.4,1.4h20.2c0.8,0,1.4-0.6,1.4-1.4V32.4z M40,34c-0.6,0-1,0.4-1,1s0.4,1,1,1s1-0.4,1-1S40.6,34,40,34z M25.5,33&#10;&#9;c-0.3,0-0.5,0.2-0.5,0.5v3c0,0.3,0.2,0.5,0.5,0.5s0.5-0.2,0.5-0.5v-3C26,33.2,25.8,33,25.5,33z M28.5,33c-0.3,0-0.5,0.2-0.5,0.5v3&#10;&#9;c0,0.3,0.2,0.5,0.5,0.5s0.5-0.2,0.5-0.5v-3C29,33.2,28.8,33,28.5,33z M31.5,33c-0.3,0-0.5,0.2-0.5,0.5v3c0,0.3,0.2,0.5,0.5,0.5&#10;&#9;s0.5-0.2,0.5-0.5v-3C32,33.2,31.8,33,31.5,33z M36.5,20.1c2-2,5.1-2,7.1,0c0.2,0.2,0.5,0.2,0.7,0s0.2-0.5,0-0.7&#10;&#9;c-2.4-2.3-6.1-2.3-8.5,0c-0.2,0.2-0.2,0.5,0,0.7C36,20.3,36.2,20.3,36.5,20.1z M38.7,21.5c-0.2,0.2-0.2,0.5,0,0.7s0.5,0.2,0.7,0&#10;&#9;c0.4-0.4,1-0.4,1.4,0c0.2,0.2,0.5,0.2,0.7,0s0.2-0.5,0-0.7C40.7,20.6,39.3,20.6,38.7,21.5z"/>
</svg>

Before

Width:  |  Height:  |  Size: 1.7 KiB

View File

@ -138,7 +138,6 @@ Regions and Endpoints
| Object Storage Service | eu-de | eu-de | obs.eu-de.otc.t-systems.com | HTTPS | | Object Storage Service | eu-de | eu-de | obs.eu-de.otc.t-systems.com | HTTPS |
+-------------------------------+-------------------------------+-------------------------------+-------------------------------+-------------------------------+ +-------------------------------+-------------------------------+-------------------------------+-------------------------------+-------------------------------+
| | eu-de | eu-de | swift.eu-de.otc.t-systems.com | HTTPS | | | eu-de | eu-de | swift.eu-de.otc.t-systems.com | HTTPS |
| | | | (Deprecated) | |
+-------------------------------+-------------------------------+-------------------------------+-------------------------------+-------------------------------+ +-------------------------------+-------------------------------+-------------------------------+-------------------------------+-------------------------------+
| | eu-nl | eu-nl | obs.eu-nl.otc.t-systems.com | HTTPS | | | eu-nl | eu-nl | obs.eu-nl.otc.t-systems.com | HTTPS |
+-------------------------------+-------------------------------+-------------------------------+-------------------------------+-------------------------------+ +-------------------------------+-------------------------------+-------------------------------+-------------------------------+-------------------------------+

View File

@ -16,6 +16,8 @@ The following code shows how to sign a request and how to use an HTTP client to
- **AccessServiceImpl**: implementation of the access method. The code required for API Gateway communication is included in the access method. - **AccessServiceImpl**: implementation of the access method. The code required for API Gateway communication is included in the access method.
You can download the sample code package from https://apig-demo.obsEndpoint/java/SdkDemo.zip.
You can download the sample code package from https://apig-demo.obs.eu-de.otc.t-systems.com/java/SdkDemo.zip. You can download the sample code package from https://apig-demo.obs.eu-de.otc.t-systems.com/java/SdkDemo.zip.
.. important:: .. important::

View File

@ -28,83 +28,4 @@ EpMon or by Grafana.
- "EpMon alerts" provide information about failed endpoint queries with details - "EpMon alerts" provide information about failed endpoint queries with details
of the request in curl form and the respective error response details of the request in curl form and the respective error response details
.. image:: training_images/alerta_dashboard.png .. image:: training_images/alerta_dashboard.png
Alerts in Alerta are organized in environment tabs based on OTC regions.
- PRODUCTION EU-DE
- PRODUCTION EU-NL
- HYBRID-SWISS
- ALL
Every single alert shows 3 views:
- **Details** - all alert parameters are shown on the single views
- **History** - occurrences of the alert in time (without de-duplication)
- **Data** - extracted error message from the event
Alert object consists of the following fields:
+----------------------+----------------------------------------------------------------------------------------------------------------------------------------+
| Alert Field | Description |
+======================+========================================================================================================================================+
| **Alert ID** | Reference to alert in Alerta |
+----------------------+----------------------------------------------------------------------------------------------------------------------------------------+
| **Create Time** | Timestamp of alert creation |
+----------------------+----------------------------------------------------------------------------------------------------------------------------------------+
| **Service** | Information about affected service and type of monitoring |
+----------------------+----------------------------------------------------------------------------------------------------------------------------------------+
| **Environment** | Information about affected environment/region |
+----------------------+----------------------------------------------------------------------------------------------------------------------------------------+
| **Resource** | Further details in which particular resource issue has happened |
+----------------------+----------------------------------------------------------------------------------------------------------------------------------------+
| **Event** | Short description of error result |
+----------------------+----------------------------------------------------------------------------------------------------------------------------------------+
| **Correlate** | Currently not in use |
+----------------------+----------------------------------------------------------------------------------------------------------------------------------------+
| **Group** | Further categorization of alerts (currently not used) |
+----------------------+----------------------------------------------------------------------------------------------------------------------------------------+
| **Severity** | Critical - EpMon, Major - ApiMon |
+----------------------+----------------------------------------------------------------------------------------------------------------------------------------+
| **Status** | - **Open** - default status when alert is received in Alerta |
| | - **Ack** - Acknowledged status, indicating that the incident of the service or of the host has been taken into account by a user. |
| | - **Shelve** - change alert status to shelved which removes the alerts from the active console and prevents any further notifications. |
| | - **Close** - change alert status to closed |
+----------------------+----------------------------------------------------------------------------------------------------------------------------------------+
| **Value** | Same like Event field |
+----------------------+----------------------------------------------------------------------------------------------------------------------------------------+
| **Text** | Currently not in use |
+----------------------+----------------------------------------------------------------------------------------------------------------------------------------+
| **Trend Indication** | Currently not in use |
+----------------------+----------------------------------------------------------------------------------------------------------------------------------------+
| **Timeout** | Time after which alert disappears from Alerta (default is 24h) |
+----------------------+----------------------------------------------------------------------------------------------------------------------------------------+
| **Type** | - Apimon Executor Alert - ApiMon related events |
| | - Exception Alert - EpMon related events |
+----------------------+----------------------------------------------------------------------------------------------------------------------------------------+
| **Duplicate count** | De-duplication feature - number of re-occurring same alerts |
+----------------------+----------------------------------------------------------------------------------------------------------------------------------------+
| **Repeat** | If duplicateCount is 0 or the alert status has changed then repeat is False, otherwise it is True |
+----------------------+----------------------------------------------------------------------------------------------------------------------------------------+
| **Origin** | Information about origin location from where the job has been executed |
+----------------------+----------------------------------------------------------------------------------------------------------------------------------------+
| **Tags** | Further details in which particular resource issue has happened |
+----------------------+----------------------------------------------------------------------------------------------------------------------------------------+
| **Log Url** | Reference to job execution output on Swift object storage (only for ApiMon alerts) |
+----------------------+----------------------------------------------------------------------------------------------------------------------------------------+
| **Log Url Web** | Reference to job execution output on Swift object storage (only for ApiMon alerts) |
+----------------------+----------------------------------------------------------------------------------------------------------------------------------------+
| **State** | - Present - if alert is still actual |
| | - Present - if alert is not occurring anymore |
+----------------------+----------------------------------------------------------------------------------------------------------------------------------------+
.. image:: training_images/alerta_detail.jpg

View File

@ -18,5 +18,4 @@ Apimon Training
logs logs
difference_cmo_fmo difference_cmo_fmo
contact contact
recorded_session
faq/index faq/index

View File

@ -1,14 +0,0 @@
.. _recorded_session:
================
Recorded Session
================
Session from 26.05.2023 has been recorded and videos are available on OBS.
`Part 1 <https://apimon-training.obs.eu-de.otc.t-systems.com/API_MON_part_1.mkv>`_
`Part 2 <https://apimon-training.obs.eu-de.otc.t-systems.com/API_MON_part_2.mkv>`_
`Part 3 <https://apimon-training.obs.eu-de.otc.t-systems.com/API_MON_part_3.mkv>`_

Binary file not shown.

Before

Width:  |  Height:  |  Size: 88 KiB

View File

@ -1,3 +1,4 @@
======================
Internal Documentation Internal Documentation
====================== ======================
@ -6,4 +7,3 @@ Internal Documentation
helpcenter_training/index helpcenter_training/index
apimon_training/index apimon_training/index
sd2_training/index

View File

@ -1,21 +0,0 @@
Contact - Whom to address for Feedback?
=======================================
In case you have any feedback, proposals or found any issues regarding the
Status Dashboard EpMon or CloudMon, you can address them in the corresponding GitHub
OpenTelekomCloud-Infra repositories or StackMon repositories.
Issues or feedback regarding the **ApiMon, EpMon, Status Dashboard, Metric
processor** as well as new feature requests can be addressed by filing an issue
on the **Gihub** repository under
https://github.com/opentelekomcloud-infra/stackmon-config
If you have found any problems which affects the **internal dashboard design**
please open an issue/PR on **GitHub**
https://github.com/stackmon/apimon-tests
If there is another general issue/demand/request try to locate proper repository in
https://github.com/orgs/stackmon/repositories
For general questions you can write an E-Mail to the `Ecosystems Squad
<mailto:dl-pbcotcdeleco@t-systems.com>`_.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,95 +0,0 @@
.. _sd2_epmon_overview:
============================
Endpoint Monitoring overview
============================
EpMon is a standalone Python based process targeting every OTC service. It
looks up the services from the service catalog and sends GET requests to
the configured endpoints.
While performing extensive tests like provisioning a server provides a great
coverage and deep insights, it is a rather expensive and complex activity.
It can only be performed every so often and leaves certain gaps on the
timescale of monitoring. To cover this gap, the EpMon plugin sends
GET-requests to a list of URLs endpoints discovered from the OTC service
catalog and augmented by simple paths like ``/server``. Such requests
are cheap and can be sent in a loop, i.e. every five seconds.
The latency and the HTTP status code of those calls are captured,
stored in a time series database, and further processed by the Metric
Processor.
Currently EpMon configuration is located in the project ``stackmon-config``:
https://github.com/opentelekomcloud-infra/stackmon-config/blob/main/epmon/config.yaml
It defines the query HTTP targets (urls) for every single OTC service.
An entry in the OTC service catalog is a prerequisite to enable service
to be queried by EpMon:
https://git.tsi-dev.otc-service.com/ecosystem/service_catalog
If there are multiple entries in service catalog, such service entries
can be marked for skip in case they are obsolete. EpMon ``config.yaml``
only defines the service queries but doesn't say how and when to use them.
For actual use across different monitoring sources and targets the
configuration matrix is defined in:
https://github.com/opentelekomcloud-infra/stackmon-config/blob/main/config.yaml
The following example configures the autoscaling service (``as``) in
EpMon and adds four paths to the service endpoint (three URL path
for the Swisscloud):
.. code:: yaml
as:
service_type: as
sdk_proxy: auto_scaling
urls:
- /
- /scaling_group
- /scaling_configuration
- /scaling_policy
as_swiss:
service_type: as
sdk_proxy: auto_scaling
urls:
- /
- /scaling_group
- /scaling_configuration
as_skip_v1:
service_type: asv1
urls: []
There are three separate items defined for the autoscaling service:
- The ``as`` entry is the default. It is used for the public OTC regions.
- The ``as_swiss`` entry defines the specific settings for the Swisscloud.
- The ``as_skip_v1`` entry is entry to be skipped from EpMon.
By default all entries in service catalog are triggered for EpMon.
The mandatory parameter for all entries is ``service_type``. This has to
match the ``service_type`` entry in the OTC service catalog.
Another important parameter is ``sdk_proxy``. This attribute identifies
which otcextension module should be used for the execution of HTTP GET-queries.
The most important parameter is ``urls``. It defines a list of URLs which
EpMon triggers for this service. As ``service_type`` is known then not
full url is required to be defined but only required is its path which
appears after the predefined url from the OTC service catalog.
If some specific service (or some specific service version) is should be
skipped from endpoint monitoring, the value of the ``urls`` key has to
be set to the empty list in the EpMon configuration file. This ensures that
even default queries from service catalog are overwritten by the empty
list in this configuration. In this example, the service type asv1 (entry from
the OTC service catalog) is not being triggered by EpMon at all as it
contains an empty ``urls`` list.
Collected response codes and response times are sent to the Graphite time
series database for further processing by the Metrics Processor.

View File

@ -1,68 +0,0 @@
.. _sd2_incidents:
=========
Incidents
=========
TODO
Incidents inform customers about the reason why some cloud service has changed its status from "green" (normal operation) to any other state.
Incidents are created under following conditions:
- Metric Processor evaluates value 1 or 2 on health metric of specific cloud service and incident is automatically created on SD.
- Service Incident Manager (SIM) manually creates incident on SD for one or more cloud services.
Each cloud service on SD is represented by its name and the status semaphore color icon representing its current health status.
The following states of the service can be shown on SD2:
- Operational - green "check" mark icon
- Maintenance - blue "wrench" mark icon
- Minor Issue - yellow "cross" mark icon
- Major Issue - brown "cross" mark icon
- Service Outage - red "cross" mark icon
These 5 states can be set manually for specific service(s) during incident creation but only 2 states (Minor issue and Service Outage) are set automatically by the Metric Processor health metrics.
Incidents are visualized in the respective color scheme on the top of the SD page. Also it's possible to navigate to the related incident via clicking on the service state icon next to the service.
Once the service health status is changed and incident is created there's no automated clean-up of the incident and incident must be handledl by respective SIM. Only after incident is closed the service changes its state back to "green" Operation state.
Incident manual creation process
================================
As mentioned besides the automated incident creation the incidents can be created manually as well.
Service incident manager must authenticate prior to be able to create an incident.
Login is ensured by Openid connect feature on page https://status.cloudmon.eco.tsi-dev.otc-service.com/login/openid
Once logged in the new option "Open new incident" appears at top right corner of the page.
.. image:: training_images/sd2_incident.jpg
The incident creation process consists of these mandatory fields:
- Incident Summary - Description of the incident
- Incident Impact - Drop-down menu of 4 service states (Scheduled Maintenance, Minor Issue, Major Issue, Service Outage)
- Affected services - List of all OTC cloud services in conjunctions with regions. One or more items can be chosen
- Start - Timestamp when incident has started
Incident update process
=======================
During the incident lifecycle SIM can update incident with relevant information.
The incident creation process consists of these optional fields:
- Incident title - Change the title of the incident
- Update Message - Additional details related to the current status of the incident
- Update Status - Drop-down menu of 4 incident statuses (Analyzing incident, Fixing incident, Observing fix, Incident resolved)
- Next Update by - Timestamp when incident is expected to be updated with another information
Incident manual closure process
===============================
Incident is never closed automatically. SIM needs to close the incident by changing its status during the update incident process to "Incident resolved".
After that incident disappears from the active list of incidents and service health status is changed back to "green" operational state.
Every closed incident is recorded in the Incident History.
Incident notifications
======================
Status Dashboard support RSS feeds for incident notifications. The details how to setup RSS feed are described on :ref:`notifications <sd2_notifications>` page.

View File

@ -1,20 +0,0 @@
===========================
Status Dashboard 2 Training
===========================
.. toctree::
:maxdepth: 1
onepager
introduction
workflow
status_dashboard_frontend
monitoring_coverage
epmon_checks
dashboards
metrics
databases
incidents
notifications
recorded_session
contact

View File

@ -1,93 +0,0 @@
======================================
Introduction to the Status Dashboard 2
======================================
The Open Telekom Cloud is represented to users and customers by the API
endpoints and the various services behind them. Customers are
interested in a reliable way to check and verify if those services are actually
available to them via the Internet.
The Status Dashboard 2 (SD2) is a service facility monitoring of all OTC
services, intended for customers to grasp a quick overview of the service
availability. It comprises of a set of **monitoring zones**, each
monitoring services of an **monitoring environment** (a. k. a. regions
like eu-de, eu-nl, etc.). The mapping of monitoring zones to monitoring
sites is configured in a mesh matrix to validate internal as well as
external connections to cloud.
Monitoring can be a tricky process, as there are many approaches of how
deep, realistic, practical, synthetic, and reliable to measure the systems
and services. The SD2 provides a reliable, quick, and comprehensive view
on the OTC, and makes some opinionated, deliberate simplifications. This
document guides through the architecture and necessary steps to maintain
the monitoring process by all OTC staff roles involved in providing a
service.
Key features of the SD2 framework:
- Developed to **supervise the 24/7 availability** of the public APIs
of the OTC platform.
- SD2 **sends GET-requests that list resources** to API-endoints. It
does explicitly not simulate more complex, multi-stage use-cases.
- Answers to such requests (status, roundtrip time) are grouped by
**service** and considered as **metrics**. They are sent to the
**Metric Processor**.
- The Metric Processor maps the metrics to **flags**, that are raised
for certain situations, like request probes not being answered (API
down), a majority not answering within a defined threshold period
(API slow) or other situations.
- Based on a combination of raised flags and their severity, the Metric
Processor calculates health metrics as **semaphores**. No flags result in
a green semaphore, minor issues result in a yellow semaphore (service
degradation), while severe situations lead to red semaphores (service
unavailable).
- The **SD2 frontend** visualizes health of the service based on the
semaphores on a website.
- Each non-green semaphore raises automatically an **issue** and displays
it on the website. MODs and/or service squad owners should now take over.
- It requires the **manual intervention** of the affected service's owners
to review, document, resolve, and eventually delete the issue condition.
.. image:: https://stackmon.github.io/assets/images/solution-diagram.svg
SD2 Architecture Summary
------------------------
- The **EpMon** plugin (end point monitoring) sends several HTTP query
requests to service endpoints and generates metrics.
- HTTP request metrics (status code, round trip time) are generated by
OpenStack SDK and are collected by Statsd.
- A time series database (Graphite) pulls metrics from Statsd.
- The Metric Processor (MP) processes the requests metrics and flags
certain circumstances. Based on defined rules and thresholds, the
MP computes resulting service health metrics (semaphores).
- The MP raises an issue for any non-green semaphore and stores it in
the SQL-based incident database that is part of the frontend component.
- The Status Dashboard frontend visualizes the incidents on a website.
- Grafana dashboards visualize data from Graphite as well as from the
Metric Processor for OTC staff members.
- Service Levels are computed based on how long incidents last.
SD2 features
------------
SD2 comes with the following features:
- Service health with 5 service statuses (three generated
semaphores, one custom semaphore light, one maintenance status).
- HTTP GET-requests for Endpoint Monitoring.
- Custom metrics and custom thresholds.
- Incidents are generated once non-green semaphores are detected.
Alternatively, incidents can be raised manually as maintence
downtimes.
- All OTC-environments including eu-de, eu-nl, and eu-sc2 are covered.
- The monitoring environments are decoupled from the monitoring zones
obtaining the metrics and include eu-de, eu-nl, eu-sc2, and GCP.
- Linked Grafana dashboards support service squad members and MODs to
understand the root cause for service health changes.
- Each service squad can control and manage their metrics as well as
dashboards individually.
- All parameters configured from single place (stackmon-config) in
human readable form (YAML).

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,25 +0,0 @@
.. _sd2_notifications:
=============
Notifications
=============
Status Dashboard application comes with a RSS feeds to provide the information about the incidents
Current RSS Feeds based on the "feedgen" library.
https://pypi.org/project/feedgen/
RSS feeds support region based queries and service name and service category based queries.
Example of region based query:
https://status.cloudmon.eco.tsi-dev.otc-service.com/rss/?mt=EU-DE
Example of service category based query:
https://status.cloudmon.eco.tsi-dev.otc-service.com/rss/?srvc=Compute
Examples of region and service name based query:
https://status.cloudmon.eco.tsi-dev.otc-service.com/rss/?mt=EU-DE&srv=Data%20Warehouse%20Service

File diff suppressed because it is too large Load Diff

View File

@ -1,9 +0,0 @@
.. _recorded_session_sd2:
================
Recorded Session
================
Onboarding session for Compute squad from 04.10.2023 has been recorded and videos are available on OBS.
`Recorded session <https://sd2-training.obs.eu-nl.otc.t-systems.com/sd2-onboarding-04.10.2023.mkv>`_

View File

@ -1,65 +0,0 @@
===========================
Status Dashboard 2 Frontend
===========================
The web based frontend of the SD2 provides public (and internal,
after authentication) status information of OTC cloud services
across all configured regions. It supports these features:
- Displays the service health through five service status.
- Authentication by OpenID connect (which in turn is connected
to the OTC LDAP directory).
- Several service are grouped into categories.
- Regions - several services are existing in regions.
- Incidents - entry about issues affecting certain regions and
certain services.
- Support of all OTC environments
- Incident data is available through an API.
- RSS notification (for the OTC mobile app and other integrations).
- SLA view of the services.
- Incident history.
Two Status Dashboard portals are available:
- public status dashboard: https://status.cloudmon.eco.tsi-dev.otc-service.com/
- hybrid status dashboard: https://status-ch2.cloudmon.eco.tsi-dev.otc-service.com/
Service Health View
===================
.. image:: training_images/sd2_frontend.jpg
From the architecture POV Status Dashboard is a Flask based
web server serving API and rendering web content with a
PostgreSQL database. The project source is available at
https://github.com/stackmon/status-dashboard
Configuration of the status dashboard frontend is located
at github: https://github.com/opentelekomcloud-infra/stackmon-config/blob/main/sdb_prod/catalog.yaml
The ``catalog.yaml`` file contains definitions of the
service name, service type, service categories and regions.
Example of AutoScaling service entry in SD catalog:
.. code:: yaml
- attributes:
category: Compute
region: EU-DE
type: as
name: Auto Scaling
- attributes:
category: Compute
region: EU-NL
type: as
name: Auto Scaling
SLA view
========
SLA view https://status.cloudmon.eco.tsi-dev.otc-service.com/sla is calculated only from the "outage" service health status and provide 6 months SLA history of each service.
.. image:: training_images/sd2_sla.jpg
Details how to work with incidents are described on the :ref:`incidents <sd2_incidents>` page.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 457 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 74 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 190 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 60 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 74 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 123 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 107 KiB

View File

@ -1,30 +0,0 @@
.. _sd2_flow:
SD2 Data Flow Process
=====================
.. image:: training_images/sd2_data_flow.svg
:target: training_images/sd2_data_flow.svg
:alt: sd2_data_flow
#. Service squad adds new data entries in GitHub repository for
EpMon (service URL queries), adjusting flag and health
metrics if required, and adds a service entry in the SD catalog.
#. Cloudmon fetches public configuration from GitHub and internal
configuration (credentials, certs, keys, ...) from a local
repository place to generate the final configuration.
#. EpMon plugin is executed and triggers HTTP requests as defined
by the configuration.
#. Metrics resulting by the HTTP requests are collected by Statsd.
#. Collected metrics are stored in the time series database Graphite.
#. The Metric Processor evaluates HTTP metrics from Graphite TSDB
and generates new flag and health metrics based on defined
rules and thresholds in configuration.
#. Status Dashboard changes service health semaphore based on the
resulting health metrics from the Metric Procesor.
#. Grafana uses metrics and statistics databases as the data
sources for the dashboards. The dashboard with various panels
shows the real-time status of the platform. Grafana supports
also historical views and trends.