index.html 51 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384
  1. <!doctype html>
  2. <html lang="en" class="no-js">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width,initial-scale=1">
  6. <link rel="prev" href="../controller-options/">
  7. <link rel="next" href="../../guides/introduction/">
  8. <link rel="icon" href="../../assets/images/favicon.png">
  9. <meta name="generator" content="mkdocs-1.4.3, mkdocs-material-9.1.9">
  10. <title>Metrics - External Secrets Operator</title>
  11. <link rel="stylesheet" href="../../assets/stylesheets/main.85bb2934.min.css">
  12. <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
  13. <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,700,700i%7CRoboto+Mono:400,400i,700,700i&display=fallback">
  14. <style>:root{--md-text-font:"Roboto";--md-code-font:"Roboto Mono"}</style>
  15. <script>__md_scope=new URL("../..",location),__md_hash=e=>[...e].reduce((e,_)=>(e<<5)-e+_.charCodeAt(0),0),__md_get=(e,_=localStorage,t=__md_scope)=>JSON.parse(_.getItem(t.pathname+"."+e)),__md_set=(e,_,t=localStorage,a=__md_scope)=>{try{t.setItem(a.pathname+"."+e,JSON.stringify(_))}catch(e){}}</script>
  16. <script id="__analytics">function __md_analytics(){function n(){dataLayer.push(arguments)}window.dataLayer=window.dataLayer||[],n("js",new Date),n("config","G-QP38TD8K7V"),document.addEventListener("DOMContentLoaded",function(){document.forms.search&&document.forms.search.query.addEventListener("blur",function(){this.value&&n("event","search",{search_term:this.value})}),document$.subscribe(function(){var a=document.forms.feedback;if(void 0!==a)for(var e of a.querySelectorAll("[type=submit]"))e.addEventListener("click",function(e){e.preventDefault();var t=document.location.pathname,e=this.getAttribute("data-md-value");n("event","feedback",{page:t,data:e}),a.firstElementChild.disabled=!0;e=a.querySelector(".md-feedback__note [data-md-value='"+e+"']");e&&(e.hidden=!1)}),a.hidden=!1}),location$.subscribe(function(e){n("config","G-QP38TD8K7V",{page_path:e.pathname})})});var e=document.createElement("script");e.async=!0,e.src="https://www.googletagmanager.com/gtag/js?id=G-QP38TD8K7V",document.getElementById("__analytics").insertAdjacentElement("afterEnd",e)}</script>
  17. <script>"undefined"!=typeof __md_analytics&&__md_analytics()</script>
  18. </head>
  19. <body dir="ltr">
  20. <script>var palette=__md_get("__palette");if(palette&&"object"==typeof palette.color)for(var key of Object.keys(palette.color))document.body.setAttribute("data-md-color-"+key,palette.color[key])</script>
  21. <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
  22. <input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
  23. <label class="md-overlay" for="__drawer"></label>
  24. <div data-md-component="skip">
  25. <a href="#metrics" class="md-skip">
  26. Skip to content
  27. </a>
  28. </div>
  29. <div data-md-component="announce">
  30. </div>
  31. <div data-md-color-scheme="default" data-md-component="outdated" hidden>
  32. <aside class="md-banner md-banner--warning">
  33. <div class="md-banner__inner md-grid md-typeset">
  34. You're not viewing the latest version.
  35. <a href="../../..">
  36. <strong>Click here to go to latest.</strong>
  37. </a>
  38. </div>
  39. <script>var el=document.querySelector("[data-md-component=outdated]"),outdated=__md_get("__outdated",sessionStorage);!0===outdated&&el&&(el.hidden=!1)</script>
  40. </aside>
  41. </div>
  42. <header class="md-header" data-md-component="header">
  43. <nav class="md-header__inner md-grid" aria-label="Header">
  44. <a href="../.." title="External Secrets Operator" class="md-header__button md-logo" aria-label="External Secrets Operator" data-md-component="logo">
  45. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54Z"/></svg>
  46. </a>
  47. <label class="md-header__button md-icon" for="__drawer">
  48. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3V6m0 5h18v2H3v-2m0 5h18v2H3v-2Z"/></svg>
  49. </label>
  50. <div class="md-header__title" data-md-component="header-title">
  51. <div class="md-header__ellipsis">
  52. <div class="md-header__topic">
  53. <span class="md-ellipsis">
  54. External Secrets Operator
  55. </span>
  56. </div>
  57. <div class="md-header__topic" data-md-component="header-topic">
  58. <span class="md-ellipsis">
  59. Metrics
  60. </span>
  61. </div>
  62. </div>
  63. </div>
  64. <label class="md-header__button md-icon" for="__search">
  65. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5Z"/></svg>
  66. </label>
  67. <div class="md-search" data-md-component="search" role="dialog">
  68. <label class="md-search__overlay" for="__search"></label>
  69. <div class="md-search__inner" role="search">
  70. <form class="md-search__form" name="search">
  71. <input type="text" class="md-search__input" name="query" aria-label="Search" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" required>
  72. <label class="md-search__icon md-icon" for="__search">
  73. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5Z"/></svg>
  74. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12Z"/></svg>
  75. </label>
  76. <nav class="md-search__options" aria-label="Search">
  77. <button type="reset" class="md-search__icon md-icon" title="Clear" aria-label="Clear" tabindex="-1">
  78. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41Z"/></svg>
  79. </button>
  80. </nav>
  81. </form>
  82. <div class="md-search__output">
  83. <div class="md-search__scrollwrap" data-md-scrollfix>
  84. <div class="md-search-result" data-md-component="search-result">
  85. <div class="md-search-result__meta">
  86. Initializing search
  87. </div>
  88. <ol class="md-search-result__list" role="presentation"></ol>
  89. </div>
  90. </div>
  91. </div>
  92. </div>
  93. </div>
  94. <div class="md-header__source">
  95. <a href="https://github.com/external-secrets/external-secrets" title="Go to repository" class="md-source" data-md-component="source">
  96. <div class="md-source__icon md-icon">
  97. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2023 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"/></svg>
  98. </div>
  99. <div class="md-source__repository">
  100. External Secrets Operator
  101. </div>
  102. </a>
  103. </div>
  104. </nav>
  105. </header>
  106. <div class="md-container" data-md-component="container">
  107. <nav class="md-tabs" aria-label="Tabs" data-md-component="tabs">
  108. <div class="md-grid">
  109. <ul class="md-tabs__list">
  110. <li class="md-tabs__item">
  111. <a href="../.." class="md-tabs__link">
  112. Introduction
  113. </a>
  114. </li>
  115. <li class="md-tabs__item">
  116. <a href="../components/" class="md-tabs__link md-tabs__link--active">
  117. API
  118. </a>
  119. </li>
  120. <li class="md-tabs__item">
  121. <a href="../../guides/introduction/" class="md-tabs__link">
  122. Guides
  123. </a>
  124. </li>
  125. <li class="md-tabs__item">
  126. <a href="../../provider/aws-secrets-manager/" class="md-tabs__link">
  127. Provider
  128. </a>
  129. </li>
  130. <li class="md-tabs__item">
  131. <a href="../../examples/gitops-using-fluxcd/" class="md-tabs__link">
  132. Examples
  133. </a>
  134. </li>
  135. <li class="md-tabs__item">
  136. <a href="../../contributing/devguide/" class="md-tabs__link">
  137. Community
  138. </a>
  139. </li>
  140. </ul>
  141. </div>
  142. </nav>
  143. <main class="md-main" data-md-component="main">
  144. <div class="md-main__inner md-grid">
  145. <div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" >
  146. <div class="md-sidebar__scrollwrap">
  147. <div class="md-sidebar__inner">
  148. <nav class="md-nav md-nav--primary md-nav--lifted" aria-label="Navigation" data-md-level="0">
  149. <label class="md-nav__title" for="__drawer">
  150. <a href="../.." title="External Secrets Operator" class="md-nav__button md-logo" aria-label="External Secrets Operator" data-md-component="logo">
  151. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54Z"/></svg>
  152. </a>
  153. External Secrets Operator
  154. </label>
  155. <div class="md-nav__source">
  156. <a href="https://github.com/external-secrets/external-secrets" title="Go to repository" class="md-source" data-md-component="source">
  157. <div class="md-source__icon md-icon">
  158. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2023 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"/></svg>
  159. </div>
  160. <div class="md-source__repository">
  161. External Secrets Operator
  162. </div>
  163. </a>
  164. </div>
  165. <ul class="md-nav__list" data-md-scrollfix>
  166. <li class="md-nav__item md-nav__item--nested">
  167. <input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_1" >
  168. <div class="md-nav__link md-nav__link--index ">
  169. <a href="../..">Introduction</a>
  170. <label for="__nav_1">
  171. <span class="md-nav__icon md-icon"></span>
  172. </label>
  173. </div>
  174. <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_1_label" aria-expanded="false">
  175. <label class="md-nav__title" for="__nav_1">
  176. <span class="md-nav__icon md-icon"></span>
  177. Introduction
  178. </label>
  179. <ul class="md-nav__list" data-md-scrollfix>
  180. <li class="md-nav__item">
  181. <a href="../../introduction/overview/" class="md-nav__link">
  182. Overview
  183. </a>
  184. </li>
  185. <li class="md-nav__item">
  186. <a href="../../introduction/getting-started/" class="md-nav__link">
  187. Getting started
  188. </a>
  189. </li>
  190. <li class="md-nav__item">
  191. <a href="../../introduction/faq/" class="md-nav__link">
  192. FAQ
  193. </a>
  194. </li>
  195. <li class="md-nav__item">
  196. <a href="../../introduction/stability-support/" class="md-nav__link">
  197. Stability and Support
  198. </a>
  199. </li>
  200. <li class="md-nav__item">
  201. <a href="../../introduction/deprecation-policy/" class="md-nav__link">
  202. Deprecation Policy
  203. </a>
  204. </li>
  205. </ul>
  206. </nav>
  207. </li>
  208. <li class="md-nav__item md-nav__item--active md-nav__item--nested">
  209. <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2" checked>
  210. <label class="md-nav__link" for="__nav_2" id="__nav_2_label" tabindex="0">
  211. API
  212. <span class="md-nav__icon md-icon"></span>
  213. </label>
  214. <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="true">
  215. <label class="md-nav__title" for="__nav_2">
  216. <span class="md-nav__icon md-icon"></span>
  217. API
  218. </label>
  219. <ul class="md-nav__list" data-md-scrollfix>
  220. <li class="md-nav__item">
  221. <a href="../components/" class="md-nav__link">
  222. Components
  223. </a>
  224. </li>
  225. <li class="md-nav__item md-nav__item--nested">
  226. <input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_2_2" >
  227. <label class="md-nav__link" for="__nav_2_2" id="__nav_2_2_label" tabindex="0">
  228. Core Resources
  229. <span class="md-nav__icon md-icon"></span>
  230. </label>
  231. <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_2_label" aria-expanded="false">
  232. <label class="md-nav__title" for="__nav_2_2">
  233. <span class="md-nav__icon md-icon"></span>
  234. Core Resources
  235. </label>
  236. <ul class="md-nav__list" data-md-scrollfix>
  237. <li class="md-nav__item">
  238. <a href="../externalsecret/" class="md-nav__link">
  239. ExternalSecret
  240. </a>
  241. </li>
  242. <li class="md-nav__item">
  243. <a href="../secretstore/" class="md-nav__link">
  244. SecretStore
  245. </a>
  246. </li>
  247. <li class="md-nav__item">
  248. <a href="../clustersecretstore/" class="md-nav__link">
  249. ClusterSecretStore
  250. </a>
  251. </li>
  252. <li class="md-nav__item">
  253. <a href="../clusterexternalsecret/" class="md-nav__link">
  254. ClusterExternalSecret
  255. </a>
  256. </li>
  257. <li class="md-nav__item">
  258. <a href="../pushsecret/" class="md-nav__link">
  259. PushSecret
  260. </a>
  261. </li>
  262. </ul>
  263. </nav>
  264. </li>
  265. <li class="md-nav__item md-nav__item--nested">
  266. <input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_2_3" >
  267. <div class="md-nav__link md-nav__link--index ">
  268. <a href="../generator/">Generators</a>
  269. <label for="__nav_2_3">
  270. <span class="md-nav__icon md-icon"></span>
  271. </label>
  272. </div>
  273. <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_3_label" aria-expanded="false">
  274. <label class="md-nav__title" for="__nav_2_3">
  275. <span class="md-nav__icon md-icon"></span>
  276. Generators
  277. </label>
  278. <ul class="md-nav__list" data-md-scrollfix>
  279. <li class="md-nav__item">
  280. <a href="../generator/acr/" class="md-nav__link">
  281. Azure Container Registry
  282. </a>
  283. </li>
  284. <li class="md-nav__item">
  285. <a href="../generator/ecr/" class="md-nav__link">
  286. AWS Elastic Container Registry
  287. </a>
  288. </li>
  289. <li class="md-nav__item">
  290. <a href="../generator/gcr/" class="md-nav__link">
  291. Google Container Registry
  292. </a>
  293. </li>
  294. <li class="md-nav__item">
  295. <a href="../generator/vault/" class="md-nav__link">
  296. Vault Dynamic Secret
  297. </a>
  298. </li>
  299. <li class="md-nav__item">
  300. <a href="../generator/password/" class="md-nav__link">
  301. Password
  302. </a>
  303. </li>
  304. <li class="md-nav__item">
  305. <a href="../generator/fake/" class="md-nav__link">
  306. Fake
  307. </a>
  308. </li>
  309. </ul>
  310. </nav>
  311. </li>
  312. <li class="md-nav__item md-nav__item--active md-nav__item--nested">
  313. <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4" checked>
  314. <label class="md-nav__link" for="__nav_2_4" id="__nav_2_4_label" tabindex="0">
  315. Reference Docs
  316. <span class="md-nav__icon md-icon"></span>
  317. </label>
  318. <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_4_label" aria-expanded="true">
  319. <label class="md-nav__title" for="__nav_2_4">
  320. <span class="md-nav__icon md-icon"></span>
  321. Reference Docs
  322. </label>
  323. <ul class="md-nav__list" data-md-scrollfix>
  324. <li class="md-nav__item">
  325. <a href="../spec/" class="md-nav__link">
  326. API specification
  327. </a>
  328. </li>
  329. <li class="md-nav__item">
  330. <a href="../controller-options/" class="md-nav__link">
  331. Controller Options
  332. </a>
  333. </li>
  334. <li class="md-nav__item md-nav__item--active">
  335. <input class="md-nav__toggle md-toggle" type="checkbox" id="__toc">
  336. <label class="md-nav__link md-nav__link--active" for="__toc">
  337. Metrics
  338. <span class="md-nav__icon md-icon"></span>
  339. </label>
  340. <a href="./" class="md-nav__link md-nav__link--active">
  341. Metrics
  342. </a>
  343. <nav class="md-nav md-nav--secondary" aria-label="Table of contents">
  344. <label class="md-nav__title" for="__toc">
  345. <span class="md-nav__icon md-icon"></span>
  346. Table of contents
  347. </label>
  348. <ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
  349. <li class="md-nav__item">
  350. <a href="#external-secret-metrics" class="md-nav__link">
  351. External Secret Metrics
  352. </a>
  353. </li>
  354. <li class="md-nav__item">
  355. <a href="#dashboard" class="md-nav__link">
  356. Dashboard
  357. </a>
  358. </li>
  359. <li class="md-nav__item">
  360. <a href="#service-level-indicators-and-alerts" class="md-nav__link">
  361. Service Level Indicators and Alerts
  362. </a>
  363. <nav class="md-nav" aria-label="Service Level Indicators and Alerts">
  364. <ul class="md-nav__list">
  365. <li class="md-nav__item">
  366. <a href="#webhook-http-status-codes" class="md-nav__link">
  367. Webhook HTTP Status Codes
  368. </a>
  369. </li>
  370. <li class="md-nav__item">
  371. <a href="#webhook-http-request-latency" class="md-nav__link">
  372. Webhook HTTP Request Latency
  373. </a>
  374. </li>
  375. <li class="md-nav__item">
  376. <a href="#controller-workqueue-depth" class="md-nav__link">
  377. Controller Workqueue Depth
  378. </a>
  379. </li>
  380. <li class="md-nav__item">
  381. <a href="#controller-reconcile-latency" class="md-nav__link">
  382. Controller Reconcile Latency
  383. </a>
  384. </li>
  385. <li class="md-nav__item">
  386. <a href="#controller-reconcile-error" class="md-nav__link">
  387. Controller Reconcile Error
  388. </a>
  389. </li>
  390. </ul>
  391. </nav>
  392. </li>
  393. </ul>
  394. </nav>
  395. </li>
  396. </ul>
  397. </nav>
  398. </li>
  399. </ul>
  400. </nav>
  401. </li>
  402. <li class="md-nav__item md-nav__item--nested">
  403. <input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3" >
  404. <label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="0">
  405. Guides
  406. <span class="md-nav__icon md-icon"></span>
  407. </label>
  408. <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="false">
  409. <label class="md-nav__title" for="__nav_3">
  410. <span class="md-nav__icon md-icon"></span>
  411. Guides
  412. </label>
  413. <ul class="md-nav__list" data-md-scrollfix>
  414. <li class="md-nav__item">
  415. <a href="../../guides/introduction/" class="md-nav__link">
  416. Introduction
  417. </a>
  418. </li>
  419. <li class="md-nav__item md-nav__item--nested">
  420. <input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_2" >
  421. <label class="md-nav__link" for="__nav_3_2" id="__nav_3_2_label" tabindex="0">
  422. External Secrets
  423. <span class="md-nav__icon md-icon"></span>
  424. </label>
  425. <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_2_label" aria-expanded="false">
  426. <label class="md-nav__title" for="__nav_3_2">
  427. <span class="md-nav__icon md-icon"></span>
  428. External Secrets
  429. </label>
  430. <ul class="md-nav__list" data-md-scrollfix>
  431. <li class="md-nav__item">
  432. <a href="../../guides/all-keys-one-secret/" class="md-nav__link">
  433. Extract structured data
  434. </a>
  435. </li>
  436. <li class="md-nav__item">
  437. <a href="../../guides/getallsecrets/" class="md-nav__link">
  438. Find Secrets by Name or Metadata
  439. </a>
  440. </li>
  441. <li class="md-nav__item">
  442. <a href="../../guides/datafrom-rewrite/" class="md-nav__link">
  443. Rewriting Keys
  444. </a>
  445. </li>
  446. <li class="md-nav__item md-nav__item--nested">
  447. <input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_2_4" >
  448. <label class="md-nav__link" for="__nav_3_2_4" id="__nav_3_2_4_label" tabindex="0">
  449. Advanced Templating
  450. <span class="md-nav__icon md-icon"></span>
  451. </label>
  452. <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_3_2_4_label" aria-expanded="false">
  453. <label class="md-nav__title" for="__nav_3_2_4">
  454. <span class="md-nav__icon md-icon"></span>
  455. Advanced Templating
  456. </label>
  457. <ul class="md-nav__list" data-md-scrollfix>
  458. <li class="md-nav__item">
  459. <a href="../../guides/templating/" class="md-nav__link">
  460. v2
  461. </a>
  462. </li>
  463. <li class="md-nav__item">
  464. <a href="../../guides/templating-v1/" class="md-nav__link">
  465. v1
  466. </a>
  467. </li>
  468. </ul>
  469. </nav>
  470. </li>
  471. <li class="md-nav__item">
  472. <a href="../../guides/common-k8s-secret-types/" class="md-nav__link">
  473. Kubernetes Secret Types
  474. </a>
  475. </li>
  476. <li class="md-nav__item">
  477. <a href="../../guides/ownership-deletion-policy/" class="md-nav__link">
  478. Lifecycle: ownership & deletion
  479. </a>
  480. </li>
  481. <li class="md-nav__item">
  482. <a href="../../guides/decoding-strategy/" class="md-nav__link">
  483. Decoding Strategies
  484. </a>
  485. </li>
  486. <li class="md-nav__item">
  487. <a href="../../guides/controller-class/" class="md-nav__link">
  488. Controller Classes
  489. </a>
  490. </li>
  491. </ul>
  492. </nav>
  493. </li>
  494. <li class="md-nav__item">
  495. <a href="../../guides/generator/" class="md-nav__link">
  496. Generators
  497. </a>
  498. </li>
  499. <li class="md-nav__item md-nav__item--nested">
  500. <input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_4" >
  501. <label class="md-nav__link" for="__nav_3_4" id="__nav_3_4_label" tabindex="0">
  502. Operations
  503. <span class="md-nav__icon md-icon"></span>
  504. </label>
  505. <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_4_label" aria-expanded="false">
  506. <label class="md-nav__title" for="__nav_3_4">
  507. <span class="md-nav__icon md-icon"></span>
  508. Operations
  509. </label>
  510. <ul class="md-nav__list" data-md-scrollfix>
  511. <li class="md-nav__item">
  512. <a href="../../guides/multi-tenancy/" class="md-nav__link">
  513. Multi Tenancy
  514. </a>
  515. </li>
  516. <li class="md-nav__item">
  517. <a href="../../guides/security-best-practices/" class="md-nav__link">
  518. Security Best Practices
  519. </a>
  520. </li>
  521. <li class="md-nav__item">
  522. <a href="../../guides/v1beta1/" class="md-nav__link">
  523. Upgrading to v1beta1
  524. </a>
  525. </li>
  526. <li class="md-nav__item">
  527. <a href="../../guides/using-latest-image/" class="md-nav__link">
  528. Using Latest Image
  529. </a>
  530. </li>
  531. <li class="md-nav__item">
  532. <a href="../../guides/disable-cluster-features/" class="md-nav__link">
  533. Disable Cluster Features
  534. </a>
  535. </li>
  536. </ul>
  537. </nav>
  538. </li>
  539. </ul>
  540. </nav>
  541. </li>
  542. <li class="md-nav__item md-nav__item--nested">
  543. <input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4" >
  544. <label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="0">
  545. Provider
  546. <span class="md-nav__icon md-icon"></span>
  547. </label>
  548. <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false">
  549. <label class="md-nav__title" for="__nav_4">
  550. <span class="md-nav__icon md-icon"></span>
  551. Provider
  552. </label>
  553. <ul class="md-nav__list" data-md-scrollfix>
  554. <li class="md-nav__item">
  555. <a href="../../provider/aws-secrets-manager/" class="md-nav__link">
  556. AWS Secrets Manager
  557. </a>
  558. </li>
  559. <li class="md-nav__item">
  560. <a href="../../provider/aws-parameter-store/" class="md-nav__link">
  561. AWS Parameter Store
  562. </a>
  563. </li>
  564. <li class="md-nav__item">
  565. <a href="../../provider/azure-key-vault/" class="md-nav__link">
  566. Azure Key Vault
  567. </a>
  568. </li>
  569. <li class="md-nav__item">
  570. <a href="../../provider/google-secrets-manager/" class="md-nav__link">
  571. Google Cloud Secret Manager
  572. </a>
  573. </li>
  574. <li class="md-nav__item">
  575. <a href="../../provider/hashicorp-vault/" class="md-nav__link">
  576. HashiCorp Vault
  577. </a>
  578. </li>
  579. <li class="md-nav__item">
  580. <a href="../../provider/kubernetes/" class="md-nav__link">
  581. Kubernetes
  582. </a>
  583. </li>
  584. <li class="md-nav__item">
  585. <a href="../../provider/ibm-secrets-manager/" class="md-nav__link">
  586. IBM Secrets Manager
  587. </a>
  588. </li>
  589. <li class="md-nav__item">
  590. <a href="../../provider/akeyless/" class="md-nav__link">
  591. Akeyless
  592. </a>
  593. </li>
  594. <li class="md-nav__item">
  595. <a href="../../provider/yandex-certificate-manager/" class="md-nav__link">
  596. Yandex Certificate Manager
  597. </a>
  598. </li>
  599. <li class="md-nav__item">
  600. <a href="../../provider/yandex-lockbox/" class="md-nav__link">
  601. Yandex Lockbox
  602. </a>
  603. </li>
  604. <li class="md-nav__item">
  605. <a href="../../provider/alibaba/" class="md-nav__link">
  606. Alibaba Cloud
  607. </a>
  608. </li>
  609. <li class="md-nav__item">
  610. <a href="../../provider/gitlab-variables/" class="md-nav__link">
  611. GitLab Variables
  612. </a>
  613. </li>
  614. <li class="md-nav__item">
  615. <a href="../../provider/oracle-vault/" class="md-nav__link">
  616. Oracle Vault
  617. </a>
  618. </li>
  619. <li class="md-nav__item">
  620. <a href="../../provider/1password-automation/" class="md-nav__link">
  621. 1Password Secrets Automation
  622. </a>
  623. </li>
  624. <li class="md-nav__item">
  625. <a href="../../provider/webhook/" class="md-nav__link">
  626. Webhook
  627. </a>
  628. </li>
  629. <li class="md-nav__item">
  630. <a href="../../provider/fake/" class="md-nav__link">
  631. Fake
  632. </a>
  633. </li>
  634. <li class="md-nav__item">
  635. <a href="../../provider/senhasegura-dsm/" class="md-nav__link">
  636. senhasegura DevOps Secrets Management (DSM)
  637. </a>
  638. </li>
  639. <li class="md-nav__item">
  640. <a href="../../provider/doppler/" class="md-nav__link">
  641. Doppler
  642. </a>
  643. </li>
  644. <li class="md-nav__item">
  645. <a href="../../provider/keeper-security/" class="md-nav__link">
  646. Keeper Security
  647. </a>
  648. </li>
  649. <li class="md-nav__item">
  650. <a href="../../provider/scaleway/" class="md-nav__link">
  651. Scaleway
  652. </a>
  653. </li>
  654. </ul>
  655. </nav>
  656. </li>
  657. <li class="md-nav__item md-nav__item--nested">
  658. <input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_5" >
  659. <label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="0">
  660. Examples
  661. <span class="md-nav__icon md-icon"></span>
  662. </label>
  663. <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="false">
  664. <label class="md-nav__title" for="__nav_5">
  665. <span class="md-nav__icon md-icon"></span>
  666. Examples
  667. </label>
  668. <ul class="md-nav__list" data-md-scrollfix>
  669. <li class="md-nav__item">
  670. <a href="../../examples/gitops-using-fluxcd/" class="md-nav__link">
  671. FluxCD
  672. </a>
  673. </li>
  674. <li class="md-nav__item">
  675. <a href="../../examples/anchore-engine-credentials/" class="md-nav__link">
  676. Anchore Engine
  677. </a>
  678. </li>
  679. <li class="md-nav__item">
  680. <a href="../../examples/jenkins-kubernetes-credentials/" class="md-nav__link">
  681. Jenkins
  682. </a>
  683. </li>
  684. <li class="md-nav__item">
  685. <a href="../../examples/bitwarden/" class="md-nav__link">
  686. BitWarden
  687. </a>
  688. </li>
  689. </ul>
  690. </nav>
  691. </li>
  692. <li class="md-nav__item md-nav__item--nested">
  693. <input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_6" >
  694. <label class="md-nav__link" for="__nav_6" id="__nav_6_label" tabindex="0">
  695. Community
  696. <span class="md-nav__icon md-icon"></span>
  697. </label>
  698. <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_6_label" aria-expanded="false">
  699. <label class="md-nav__title" for="__nav_6">
  700. <span class="md-nav__icon md-icon"></span>
  701. Community
  702. </label>
  703. <ul class="md-nav__list" data-md-scrollfix>
  704. <li class="md-nav__item md-nav__item--nested">
  705. <input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_6_1" >
  706. <label class="md-nav__link" for="__nav_6_1" id="__nav_6_1_label" tabindex="0">
  707. Contributing
  708. <span class="md-nav__icon md-icon"></span>
  709. </label>
  710. <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_1_label" aria-expanded="false">
  711. <label class="md-nav__title" for="__nav_6_1">
  712. <span class="md-nav__icon md-icon"></span>
  713. Contributing
  714. </label>
  715. <ul class="md-nav__list" data-md-scrollfix>
  716. <li class="md-nav__item">
  717. <a href="../../contributing/devguide/" class="md-nav__link">
  718. Developer guide
  719. </a>
  720. </li>
  721. <li class="md-nav__item">
  722. <a href="../../contributing/process/" class="md-nav__link">
  723. Contributing Process
  724. </a>
  725. </li>
  726. <li class="md-nav__item">
  727. <a href="../../contributing/release/" class="md-nav__link">
  728. Release Process
  729. </a>
  730. </li>
  731. <li class="md-nav__item">
  732. <a href="../../contributing/coc/" class="md-nav__link">
  733. Code of Conduct
  734. </a>
  735. </li>
  736. <li class="md-nav__item">
  737. <a href="../../contributing/roadmap/" class="md-nav__link">
  738. Roadmap
  739. </a>
  740. </li>
  741. </ul>
  742. </nav>
  743. </li>
  744. <li class="md-nav__item md-nav__item--nested">
  745. <input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_6_2" >
  746. <label class="md-nav__link" for="__nav_6_2" id="__nav_6_2_label" tabindex="0">
  747. External Resources
  748. <span class="md-nav__icon md-icon"></span>
  749. </label>
  750. <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_2_label" aria-expanded="false">
  751. <label class="md-nav__title" for="__nav_6_2">
  752. <span class="md-nav__icon md-icon"></span>
  753. External Resources
  754. </label>
  755. <ul class="md-nav__list" data-md-scrollfix>
  756. <li class="md-nav__item">
  757. <a href="../../eso-talks/" class="md-nav__link">
  758. Talks
  759. </a>
  760. </li>
  761. <li class="md-nav__item">
  762. <a href="../../eso-demos/" class="md-nav__link">
  763. Demos
  764. </a>
  765. </li>
  766. <li class="md-nav__item">
  767. <a href="../../eso-blogs/" class="md-nav__link">
  768. Blogs
  769. </a>
  770. </li>
  771. </ul>
  772. </nav>
  773. </li>
  774. </ul>
  775. </nav>
  776. </li>
  777. </ul>
  778. </nav>
  779. </div>
  780. </div>
  781. </div>
  782. <div class="md-sidebar md-sidebar--secondary" data-md-component="sidebar" data-md-type="toc" hidden>
  783. <div class="md-sidebar__scrollwrap">
  784. <div class="md-sidebar__inner">
  785. <nav class="md-nav md-nav--secondary" aria-label="Table of contents">
  786. <label class="md-nav__title" for="__toc">
  787. <span class="md-nav__icon md-icon"></span>
  788. Table of contents
  789. </label>
  790. <ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
  791. <li class="md-nav__item">
  792. <a href="#external-secret-metrics" class="md-nav__link">
  793. External Secret Metrics
  794. </a>
  795. </li>
  796. <li class="md-nav__item">
  797. <a href="#dashboard" class="md-nav__link">
  798. Dashboard
  799. </a>
  800. </li>
  801. <li class="md-nav__item">
  802. <a href="#service-level-indicators-and-alerts" class="md-nav__link">
  803. Service Level Indicators and Alerts
  804. </a>
  805. <nav class="md-nav" aria-label="Service Level Indicators and Alerts">
  806. <ul class="md-nav__list">
  807. <li class="md-nav__item">
  808. <a href="#webhook-http-status-codes" class="md-nav__link">
  809. Webhook HTTP Status Codes
  810. </a>
  811. </li>
  812. <li class="md-nav__item">
  813. <a href="#webhook-http-request-latency" class="md-nav__link">
  814. Webhook HTTP Request Latency
  815. </a>
  816. </li>
  817. <li class="md-nav__item">
  818. <a href="#controller-workqueue-depth" class="md-nav__link">
  819. Controller Workqueue Depth
  820. </a>
  821. </li>
  822. <li class="md-nav__item">
  823. <a href="#controller-reconcile-latency" class="md-nav__link">
  824. Controller Reconcile Latency
  825. </a>
  826. </li>
  827. <li class="md-nav__item">
  828. <a href="#controller-reconcile-error" class="md-nav__link">
  829. Controller Reconcile Error
  830. </a>
  831. </li>
  832. </ul>
  833. </nav>
  834. </li>
  835. </ul>
  836. </nav>
  837. </div>
  838. </div>
  839. </div>
  840. <div class="md-content" data-md-component="content">
  841. <article class="md-content__inner md-typeset">
  842. <h1 id="metrics">Metrics</h1>
  843. <p>The External Secrets Operator exposes its Prometheus metrics in the <code>/metrics</code> path. To enable it, set the <code>serviceMonitor.enabled</code> Helm flag to <code>true</code>. In addition you can also set <code>webhook.serviceMonitor.enabled=true</code> and <code>certController.serviceMonitor.enabled=true</code> to create <code>ServiceMonitor</code> resources for the other components.</p>
  844. <p>If you are using a different monitoring tool that also needs a <code>/metrics</code> endpoint, you can set the <code>metrics.service.enabled</code> Helm flag to <code>true</code>. In addition you can also set <code>webhook.metrics.service.enabled</code> and <code>certController.metrics.service.enabled</code> to scrape the other components.</p>
  845. <p>The Operator has the metrics inherited from Kubebuilder plus some custom metrics with the <code>externalsecret</code> prefix.</p>
  846. <h2 id="external-secret-metrics">External Secret Metrics</h2>
  847. <table>
  848. <thead>
  849. <tr>
  850. <th>Name</th>
  851. <th>Type</th>
  852. <th>Description</th>
  853. </tr>
  854. </thead>
  855. <tbody>
  856. <tr>
  857. <td><code>externalsecret_provider_api_calls_count</code></td>
  858. <td>Counter</td>
  859. <td>Number of API calls made to an upstream secret provider API. The metric provides a <code>provider</code>, <code>call</code> and <code>status</code> labels.</td>
  860. </tr>
  861. <tr>
  862. <td><code>externalsecret_sync_calls_total</code></td>
  863. <td>Counter</td>
  864. <td>Total number of the External Secret sync calls</td>
  865. </tr>
  866. <tr>
  867. <td><code>externalsecret_sync_calls_error</code></td>
  868. <td>Counter</td>
  869. <td>Total number of the External Secret sync errors</td>
  870. </tr>
  871. <tr>
  872. <td><code>externalsecret_status_condition</code></td>
  873. <td>Gauge</td>
  874. <td>The status condition of a specific External Secret</td>
  875. </tr>
  876. <tr>
  877. <td><code>externalsecret_reconcile_duration</code></td>
  878. <td>Gauge</td>
  879. <td>The duration time to reconcile the External Secret</td>
  880. </tr>
  881. <tr>
  882. <td><code>controller_runtime_reconcile_total</code></td>
  883. <td>Counter</td>
  884. <td>Holds the totalnumber of reconciliations per controller. It has two labels. controller label refers to the controller name and result label refers to the reconcile result i.e success, error, requeue, requeue_after.</td>
  885. </tr>
  886. <tr>
  887. <td><code>controller_runtime_reconcile_errors_total</code></td>
  888. <td>Counter</td>
  889. <td>Total number of reconcile errors per controller</td>
  890. </tr>
  891. <tr>
  892. <td><code>controller_runtime_reconcile_time_seconds</code></td>
  893. <td>Histogram</td>
  894. <td>Length of time per reconcile per controller</td>
  895. </tr>
  896. <tr>
  897. <td><code>controller_runtime_reconcile_queue_length</code></td>
  898. <td>Gauge</td>
  899. <td>Length of reconcile queue per controller</td>
  900. </tr>
  901. <tr>
  902. <td><code>controller_runtime_max_concurrent_reconciles</code></td>
  903. <td>Gauge</td>
  904. <td>Maximum number of concurrent reconciles per controller</td>
  905. </tr>
  906. <tr>
  907. <td><code>controller_runtime_active_workers</code></td>
  908. <td>Gauge</td>
  909. <td>Number of currently used workers per controller</td>
  910. </tr>
  911. </tbody>
  912. </table>
  913. <h2 id="dashboard">Dashboard</h2>
  914. <p>We provide a <a href="https://raw.githubusercontent.com/external-secrets/external-secrets/main/docs/snippets/dashboard.json">Grafana Dashboard</a> that gives you an overview of External Secrets Operator:</p>
  915. <p><img alt="ESO Dashboard" src="../../pictures/eso-dashboard-1.png" />
  916. <img alt="ESO Dashboard" src="../../pictures/eso-dashboard-2.png" /></p>
  917. <h2 id="service-level-indicators-and-alerts">Service Level Indicators and Alerts</h2>
  918. <p>We find the following Service Level Indicators (SLIs) useful when operating ESO. They should give you a good starting point and hints to develop your own Service Level Objectives (SLOs).</p>
  919. <h4 id="webhook-http-status-codes">Webhook HTTP Status Codes</h4>
  920. <p>The webhook HTTP status code indicates that a HTTP Request was answered successfully or not.
  921. If the Webhook pod is not able to serve the requests properly then that failure may cascade down to the controller or any other user of <code>kube-apiserver</code>.</p>
  922. <p>SLI Example: request error percentage.
  923. <div class="highlight"><pre><span></span><code>sum(increase(controller_runtime_webhook_requests_total{service=~&quot;external-secrets.*&quot;,code=&quot;500&quot;}[1m]))
  924. /
  925. sum(increase(controller_runtime_webhook_requests_total{service=~&quot;external-secrets.*&quot;}[1m]))
  926. </code></pre></div></p>
  927. <h4 id="webhook-http-request-latency">Webhook HTTP Request Latency</h4>
  928. <p>If the webhook server is not able to respond in time then that may cause a timeout at the client.
  929. This failure may cascade down to the controller or any other user of <code>kube-apiserver</code>.</p>
  930. <p>SLI Example: p99 across all webhook requests.
  931. <div class="highlight"><pre><span></span><code>histogram_quantile(0.99,
  932. sum(rate(controller_runtime_webhook_latency_seconds_bucket{service=~&quot;external-secrets.*&quot;}[5m])) by (le)
  933. )
  934. </code></pre></div></p>
  935. <h4 id="controller-workqueue-depth">Controller Workqueue Depth</h4>
  936. <p>If the workqueue depth is &gt; 0 for a longer period of time then this is an indicator for the controller not being able to reconcile resources in time. I.e. delivery of secret updates is delayed.</p>
  937. <p>Note: when a controller is restarted, then <code>queue length = total number of resources</code>. Make sure to measure the time it takes for the controller to fully reconcile all secrets after a restart. In large clusters this may take a while, make sure to define an acceptable timeframe to fully reconcile all resources.</p>
  938. <div class="highlight"><pre><span></span><code>sum(
  939. workqueue_depth{service=~&quot;external-secrets.*&quot;}
  940. ) by (name)
  941. </code></pre></div>
  942. <h4 id="controller-reconcile-latency">Controller Reconcile Latency</h4>
  943. <p>The controller should be able to reconcile resources within a reasonable timeframe. When latency is high secret delivery may impacted.</p>
  944. <p>SLI Example: p99 across all controllers.
  945. <div class="highlight"><pre><span></span><code>histogram_quantile(0.99,
  946. sum(rate(controller_runtime_reconcile_time_seconds_bucket{service=~&quot;external-secrets.*&quot;}[5m])) by (le)
  947. )
  948. </code></pre></div></p>
  949. <h4 id="controller-reconcile-error">Controller Reconcile Error</h4>
  950. <p>The controller should be able to reconcile resources without errors. When errors occurr secret delivery may be impacted which could cascade down to the secret consuming applications.</p>
  951. <div class="highlight"><pre><span></span><code>sum(increase(
  952. controller_runtime_reconcile_total{service=~&quot;external-secrets.*&quot;,controller=~&quot;$controller&quot;}[1m])
  953. ) by (result)
  954. </code></pre></div>
  955. </article>
  956. </div>
  957. </div>
  958. </main>
  959. <footer class="md-footer">
  960. <div class="md-footer-meta md-typeset">
  961. <div class="md-footer-meta__inner md-grid">
  962. <div class="md-copyright">
  963. <div class="md-copyright__highlight">
  964. &copy; 2023 The external-secrets Authors.<br/>
  965. &copy; 2023 The Linux Foundation. All rights reserved.<br/><br/>
  966. The Linux Foundation has registered trademarks and uses trademarks.<br/>
  967. For a list of trademarks of The Linux Foundation, please see our <a href="https://www.linuxfoundation.org/trademark-usage/">Trademark Usage page</a>.
  968. </div>
  969. Made with
  970. <a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener">
  971. Material for MkDocs
  972. </a>
  973. </div>
  974. </div>
  975. </div>
  976. </footer>
  977. </div>
  978. <div class="md-dialog" data-md-component="dialog">
  979. <div class="md-dialog__inner md-typeset"></div>
  980. </div>
  981. <script id="__config" type="application/json">{"base": "../..", "features": ["navigation.tabs", "navigation.indexes", "navigation.expand"], "search": "../../assets/javascripts/workers/search.208ed371.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}, "version": {"provider": "mike"}}</script>
  982. <script src="../../assets/javascripts/bundle.fac441b0.min.js"></script>
  983. </body>
  984. </html>