import{s as Kt,n as en,o as tn}from"../chunks/scheduler.eb244325.js";import{S as nn,i as sn,e as a,s,c as u,h as ln,a as r,d as n,b as l,f as Qt,g as p,j as o,k as Dt,l as an,m as i,n as m,t as c,o as h,p as f}from"../chunks/index.661680a1.js";import{C as rn,H as d,E as on}from"../chunks/MermaidChart.svelte_svelte_type_style_lang.98451788.js";import{C as Ot}from"../chunks/CodeBlock.14bb3c6d.js";function un(ft){let g,de,he,ge,y,ye,v,ve,w,dt=`The Analytics page is like the control center for your deployed models. It tells you in real-time what’s going on, how many users are
calling your models, about hardware usage, latencies, and much more. In this documentation we’ll dive into what each metric means and
how to analyze the graphs.`,we,M,gt='<img src="https://raw.githubusercontent.com/huggingface/hf-endpoints-documentation/main/assets/analytics/1-intro.png" alt="intro"/>',Me,T,yt="In the top bar, you can configure the high level view:",Te,b,vt=`<li>Which replica to view metrics from: either an individual replica or all.</li> <li>If you want to view metrics related to requests, hardware, or timeline of replicas.</li> <li>Which time frame you’ll inspect the metrics, and this setting affects all graphs on the page. You can choose between any of the existing settings from the dropdown, or click-and-drag over any graph for a custom timeframe. You can also enable/disable
auto refresh or view the metrics per replica or all.</li>`,be,$,wt='<img src="https://raw.githubusercontent.com/huggingface/hf-endpoints-documentation/main/assets/analytics/2-config.png" alt="config"/>',$e,C,Ce,x,xe,U,Mt=`The first graph at the top left shows you how many requests your Inference Endpoint has received. By default they are grouped by HTTP response
classes, but by switching the toggle you can view them by individual status. As a reminder the HTTP response classes are:`,Ue,H,Tt="<li><strong>Informational responses (100-199)</strong>: The server has received your request and is working on it. For example, <code>102 Processing</code> means the server is still handling your request.</li> <li><strong>Successful responses (200-299)</strong>: Your request was received and completed successfully. For example, <code>200 OK</code> means everything worked as expected.</li> <li><strong>Redirection messages (300-399)</strong>: The server is telling your client to look somewhere else for the information or to take another action. For example, <code>301 Moved Permanently</code> means the resource has a new address.</li> <li><strong>Client error responses (400-499)</strong>: There was a problem with the request sent by your client (like a typo in the URL or missing data). For example, <code>404 Not Found</code> means the server couldn’t find what you asked for.</li> <li><strong>Server error responses (500-599)</strong>: The server ran into an issue while trying to process your request. For example, <code>502 Bad Gateway</code> means the server got an invalid response from another server it tried to contact.</li>",He,_,bt=`We recommend checking the <a href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Status" rel="nofollow">MDN web docs</a> for more information on individual
status codes.`,_e,q,$t="The boxes above the graph also show the % of requests in the respective response class.",qe,L,Ct='<img src="https://raw.githubusercontent.com/huggingface/hf-endpoints-documentation/main/assets/analytics/3-http-reqs.png" alt="http"/>',Le,P,Pe,J,xt=`Pending requests are requests that have not yet received an HTTP status, meaning they include in-flight requests and requests currently
being processed. If this metric increases too much, it means that your requests are queuing up, and your users have to wait for requests
to finish. In this case you should consider increasing your number of replicas or alternatively use autoscaling, you can read more about
it in the <a href="./autoscaling#scalingbasedonpendingrequests(betafeature)">autoscaling guide</a>`,Je,I,Ut='<img src="https://raw.githubusercontent.com/huggingface/hf-endpoints-documentation/main/assets/analytics/4-pending-reqs.png" alt="pending"/>',Ie,R,Re,j,Ht="From this graph you’ll be able to see how long it takes for your Inference Endpoint to generate a response. Latency is reported as:",je,E,_t="<li><strong>p99</strong>: meaning that 99% of all requests were faster than this value</li> <li><strong>p95</strong>: meaning that 95% of all requests were faster than this value</li> <li><strong>p90</strong>: meaning that 90% of all requests were faster than this value</li> <li><strong>median</strong>: meaning that 50% of all requests were faster than this value</li>",Ee,V,qt=`Usually a good metric is also to look at how big the difference is between the median and p99. The closer the values are to each other, the more
uniform the latency is, whereas if the difference is large, it means that the users of your Inference Endpoint have in general a fast response but
the worst case latencies can be long.`,Ve,G,Lt='<img src="https://raw.githubusercontent.com/huggingface/hf-endpoints-documentation/main/assets/analytics/5-latency.png" alt="latency"/>',Ge,N,Ne,k,Pt=`In the running replica graph, you’ll see how many running replicas you have during a point in time. The red line shows
your current maximum replicas setting.`,ke,W,Jt='<img src="https://raw.githubusercontent.com/huggingface/hf-endpoints-documentation/main/assets/analytics/6-running.png" alt="status"/>',We,Y,It=`For a more advanced view of different statuses for individual replicas, going from <em>pending</em> all the way
to <em>running</em>, you can toggle to the Timeline section. This is very useful to get a sense of how long it takes an Endpoint to become ready to serve requests.`,Ye,z,Rt='<img src="https://raw.githubusercontent.com/huggingface/hf-endpoints-documentation/main/assets/analytics/7-timeline.png" alt="advanced"/>',ze,Z,Ze,F,jt="These four graphs are dedicated to hardware usage. You’ll find:",Fe,B,Et="<li>CPU usage: How much processing power is being used.</li> <li>Memory usage: How much RAM is being used.</li> <li>GPU usage: How much of the GPU’s processing power is being used.</li> <li>GPU Memory (VRAM) usage: How much GPU memory is being used.</li>",Be,X,Vt='<img src="https://raw.githubusercontent.com/huggingface/hf-endpoints-documentation/main/assets/analytics/8-usage.png" alt="usage"/>',Xe,A,Gt="By toggling “details” you can either view the average or per replica value for the metric in question.",Ae,S,Nt=`If you have autoscaling based on hardware utilization enabled, these are the metrics that determine your autoscaling behaviour. You can
read more about autoscaling <a href="./autoscaling#scalingbasedonhardwareutilization">here</a>`,Se,Q,Qe,D,kt='<strong>This feature is currently in Beta. You will need to be subscribed to <a href="https://huggingface.co/pricing" rel="nofollow">Team or Enterprise</a> to take advantage of this feature.</strong>',De,O,Wt="You can export real-time metrics from your Inference Endpoints into your own monitoring stack. The Metrics API exposes metrics in the OpenMetrics format, which is widely supported by observability tools such as Prometheus, Grafana, and Datadog.",Oe,K,Yt="This allows you to monitor in near real-time:",Ke,ee,zt="<li>Requests grouped by replica</li> <li>Latency distributions (p50, p95, etc.)</li> <li>Hardware metrics (CPU, GPU, memory, accelerator utilization)</li>",et,te,tt,ne,Zt="You can use <code>curl</code> to query the metrics endpoint directly and inspect the raw data:",nt,ie,it,se,Ft="This will return metrics in OpenMetrics text format:",st,le,lt,ae,at,re,Bt="OpenMetrics is widely supported across monitoring ecosystems. A few common options:",rt,oe,Xt='<li><a href="https://docs.datadoghq.com/integrations/openmetrics/" rel="nofollow">Datadog OpenMetrics integration</a></li> <li><a href="https://tinyurl.com/e4fypk5m" rel="nofollow">Grafana Prometheus datasource</a></li>',ot,ue,At="From there, you can set up dashboards, alerts, and reports to monitor endpoint performance.",ut,pe,pt,me,St=`Your organization can sign up for the Team or Enterprise plan <a href="https://huggingface.co/enterprise?subscribe=true" rel="nofollow">here</a> 🚀
For any questions or feature requests, please email us at <a href="mailto:api-enterprise@huggingface.co">api-enterprise@huggingface.co</a>`,mt,ce,ct,fe,ht;return y=new rn({props:{containerStyle:"float: right; margin-left: 10px; display: inline-flex; position: relative; z-index: 10;"}}),v=new d({props:{title:"Analytics and Metrics",local:"analytics-and-metrics",headingTag:"h1"}}),C=new d({props:{title:"Understanding the graphs",local:"understanding-the-graphs",headingTag:"h2"}}),x=new d({props:{title:"Number of (HTTP) Requests",local:"number-of-http-requests",headingTag:"h3"}}),P=new d({props:{title:"Pending Requests",local:"pending-requests",headingTag:"h3"}}),R=new d({props:{title:"Latency Distribution",local:"latency-distribution",headingTag:"h3"}}),N=new d({props:{title:"Running Replicas",local:"running-replicas",headingTag:"h3"}}),Z=new d({props:{title:"Compute",local:"compute",headingTag:"h3"}}),Q=new d({props:{title:"Create an integration with the Inference Endpoints OpenMetrics API",local:"create-an-integration-with-the-inference-endpoints-openmetrics-api",headingTag:"h2"}}),te=new d({props:{title:"Query metrics manually",local:"query-metrics-manually",headingTag:"h3"}}),ie=new Ot({props:{code:"Y3VybCUyMC1YJTIwR0VUJTIwJTIyaHR0cHMlM0ElMkYlMkZhcGkuZW5kcG9pbnRzLmh1Z2dpbmdmYWNlLmNsb3VkJTJGdjIlMkZlbmRwb2ludCUyRiU3Qm5hbWVzcGFjZSU3RCUyRiU3QmVuZHBvaW50LW5hbWUlN0QlMkZvcGVuLW1ldHJpY3MlMjIlMjAlNUMlMEElMjAlMjAtSCUyMCUyMkF1dGhvcml6YXRpb24lM0ElMjBCZWFyZXIlMjBZT1VSX0FVVEhfVE9LRU4lMjI=",highlighted:`curl -X GET <span class="hljs-string">&quot;https://api.endpoints.huggingface.cloud/v2/endpoint/{namespace}/{endpoint-name}/open-metrics&quot;</span> \\
  -H <span class="hljs-string">&quot;Authorization: Bearer YOUR_AUTH_TOKEN&quot;</span>`,wrap:!1}}),le=new Ot({props:{code:"JTIzJTIwSEVMUCUyMGxhdGVuY3lfZGlzdHJpYnV0aW9uJTIwTGF0ZW5jeSUyMGRpc3RyaWJ1dGlvbiUwQSUyMyUyMFRZUEUlMjBsYXRlbmN5X2Rpc3RyaWJ1dGlvbiUyMHN1bW1hcnklMEFsYXRlbmN5X2Rpc3RyaWJ1dGlvbiU3QnF1YW50aWxlJTNEJTIyMC41JTIyJTdEJTIwMC4wMDYzMzkyMDMlMEFsYXRlbmN5X2Rpc3RyaWJ1dGlvbiU3QnF1YW50aWxlJTNEJTIyMC45JTIyJTdEJTIwMC4wMDc1NzQyNDElMEFsYXRlbmN5X2Rpc3RyaWJ1dGlvbiU3QnF1YW50aWxlJTNEJTIyMC45NSUyMiU3RCUyMDAuMDA3OTk0NDk1JTBBbGF0ZW5jeV9kaXN0cmlidXRpb24lN0JxdWFudGlsZSUzRCUyMjAuOTklMjIlN0QlMjAwLjAyMDE0MDkxOCUwQWxhdGVuY3lfZGlzdHJpYnV0aW9uX2NvdW50JTIwNCUwQWxhdGVuY3lfZGlzdHJpYnV0aW9uX3N1bSUyMDAuMDQyMDQ4ODU3JTBBJTIzJTIwSEVMUCUyMGh0dHBfcmVxdWVzdHMlMjBIVFRQJTIwcmVxdWVzdHMlMjBieSUyMGNvZGUlMjBhbmQlMjByZXBsaWNhcyUwQSUyMyUyMFRZUEUlMjBodHRwX3JlcXVlc3RzJTIwY291bnRlciUwQWh0dHBfcmVxdWVzdHMlN0JyZXBsaWNhX2lkJTNEJTIyZnF3ZzdlcmktaHNrb2olMjIlMkNzdGF0dXNfY29kZSUzRCUyMjIwMCUyMiU3RCUyMDExNTIlMEFodHRwX3JlcXVlc3RzJTdCcmVwbGljYV9pZCUzRCUyMnE5Y3YyNnV0LTN2bzRzJTIyJTJDc3RhdHVzX2NvZGUlM0QlMjIyMDAlMjIlN0QlMjAxJTBBJTIzJTIwSEVMUCUyMGNwdV91c2FnZV9wZXJjZW50JTIwQ1BVJTIwcGVyY2VudCUwQSUyMyUyMFRZUEUlMjBjcHVfdXNhZ2VfcGVyY2VudCUyMGdhdWdlJTBBJTIzJTIwVU5JVCUyMGNwdV91c2FnZV9wZXJjZW50JTIwcGVyY2VudA==",highlighted:`<span class="hljs-comment"># HELP latency_distribution Latency distribution</span>
<span class="hljs-comment"># TYPE latency_distribution summary</span>
latency_distribution{quantile=<span class="hljs-string">&quot;0.5&quot;</span>} 0.006339203
latency_distribution{quantile=<span class="hljs-string">&quot;0.9&quot;</span>} 0.007574241
latency_distribution{quantile=<span class="hljs-string">&quot;0.95&quot;</span>} 0.007994495
latency_distribution{quantile=<span class="hljs-string">&quot;0.99&quot;</span>} 0.020140918
latency_distribution_count 4
latency_distribution_sum 0.042048857
<span class="hljs-comment"># HELP http_requests HTTP requests by code and replicas</span>
<span class="hljs-comment"># TYPE http_requests counter</span>
http_requests{replica_id=<span class="hljs-string">&quot;fqwg7eri-hskoj&quot;</span>,status_code=<span class="hljs-string">&quot;200&quot;</span>} 1152
http_requests{replica_id=<span class="hljs-string">&quot;q9cv26ut-3vo4s&quot;</span>,status_code=<span class="hljs-string">&quot;200&quot;</span>} 1
<span class="hljs-comment"># HELP cpu_usage_percent CPU percent</span>
<span class="hljs-comment"># TYPE cpu_usage_percent gauge</span>
<span class="hljs-comment"># UNIT cpu_usage_percent percent</span>`,wrap:!1}}),ae=new d({props:{title:"Connect with your observability tools",local:"connect-with-your-observability-tools",headingTag:"h3"}}),pe=new d({props:{title:"Subscribe to Team or Enterprise",local:"subscribe-to-team-or-enterprise",headingTag:"h3"}}),ce=new on({props:{source:"https://github.com/huggingface/hf-endpoints-documentation/blob/main/docs/source/guides/analytics.md"}}),{c(){g=a("meta"),de=s(),he=a("p"),ge=s(),u(y.$$.fragment),ye=s(),u(v.$$.fragment),ve=s(),w=a("p"),w.textContent=dt,we=s(),M=a("p"),M.innerHTML=gt,Me=s(),T=a("p"),T.textContent=yt,Te=s(),b=a("ul"),b.innerHTML=vt,be=s(),$=a("p"),$.innerHTML=wt,$e=s(),u(C.$$.fragment),Ce=s(),u(x.$$.fragment),xe=s(),U=a("p"),U.textContent=Mt,Ue=s(),H=a("ul"),H.innerHTML=Tt,He=s(),_=a("p"),_.innerHTML=bt,_e=s(),q=a("p"),q.textContent=$t,qe=s(),L=a("p"),L.innerHTML=Ct,Le=s(),u(P.$$.fragment),Pe=s(),J=a("p"),J.innerHTML=xt,Je=s(),I=a("p"),I.innerHTML=Ut,Ie=s(),u(R.$$.fragment),Re=s(),j=a("p"),j.textContent=Ht,je=s(),E=a("ul"),E.innerHTML=_t,Ee=s(),V=a("p"),V.textContent=qt,Ve=s(),G=a("p"),G.innerHTML=Lt,Ge=s(),u(N.$$.fragment),Ne=s(),k=a("p"),k.textContent=Pt,ke=s(),W=a("p"),W.innerHTML=Jt,We=s(),Y=a("p"),Y.innerHTML=It,Ye=s(),z=a("p"),z.innerHTML=Rt,ze=s(),u(Z.$$.fragment),Ze=s(),F=a("p"),F.textContent=jt,Fe=s(),B=a("ul"),B.innerHTML=Et,Be=s(),X=a("p"),X.innerHTML=Vt,Xe=s(),A=a("p"),A.textContent=Gt,Ae=s(),S=a("p"),S.innerHTML=Nt,Se=s(),u(Q.$$.fragment),Qe=s(),D=a("p"),D.innerHTML=kt,De=s(),O=a("p"),O.textContent=Wt,Oe=s(),K=a("p"),K.textContent=Yt,Ke=s(),ee=a("ul"),ee.innerHTML=zt,et=s(),u(te.$$.fragment),tt=s(),ne=a("p"),ne.innerHTML=Zt,nt=s(),u(ie.$$.fragment),it=s(),se=a("p"),se.textContent=Ft,st=s(),u(le.$$.fragment),lt=s(),u(ae.$$.fragment),at=s(),re=a("p"),re.textContent=Bt,rt=s(),oe=a("ul"),oe.innerHTML=Xt,ot=s(),ue=a("p"),ue.textContent=At,ut=s(),u(pe.$$.fragment),pt=s(),me=a("p"),me.innerHTML=St,mt=s(),u(ce.$$.fragment),ct=s(),fe=a("p"),this.h()},l(e){const t=ln("svelte-u9bgzb",document.head);g=r(t,"META",{name:!0,content:!0}),t.forEach(n),de=l(e),he=r(e,"P",{}),Qt(he).forEach(n),ge=l(e),p(y.$$.fragment,e),ye=l(e),p(v.$$.fragment,e),ve=l(e),w=r(e,"P",{"data-svelte-h":!0}),o(w)!=="svelte-1qwdd7g"&&(w.textContent=dt),we=l(e),M=r(e,"P",{"data-svelte-h":!0}),o(M)!=="svelte-1lzx4cg"&&(M.innerHTML=gt),Me=l(e),T=r(e,"P",{"data-svelte-h":!0}),o(T)!=="svelte-2q1i31"&&(T.textContent=yt),Te=l(e),b=r(e,"UL",{"data-svelte-h":!0}),o(b)!=="svelte-1tmrvm6"&&(b.innerHTML=vt),be=l(e),$=r(e,"P",{"data-svelte-h":!0}),o($)!=="svelte-s7g9t9"&&($.innerHTML=wt),$e=l(e),p(C.$$.fragment,e),Ce=l(e),p(x.$$.fragment,e),xe=l(e),U=r(e,"P",{"data-svelte-h":!0}),o(U)!=="svelte-15jqzd1"&&(U.textContent=Mt),Ue=l(e),H=r(e,"UL",{"data-svelte-h":!0}),o(H)!=="svelte-18dtmml"&&(H.innerHTML=Tt),He=l(e),_=r(e,"P",{"data-svelte-h":!0}),o(_)!=="svelte-1kwgrsz"&&(_.innerHTML=bt),_e=l(e),q=r(e,"P",{"data-svelte-h":!0}),o(q)!=="svelte-1ibhate"&&(q.textContent=$t),qe=l(e),L=r(e,"P",{"data-svelte-h":!0}),o(L)!=="svelte-1xw4r5k"&&(L.innerHTML=Ct),Le=l(e),p(P.$$.fragment,e),Pe=l(e),J=r(e,"P",{"data-svelte-h":!0}),o(J)!=="svelte-4jupc9"&&(J.innerHTML=xt),Je=l(e),I=r(e,"P",{"data-svelte-h":!0}),o(I)!=="svelte-eb33tn"&&(I.innerHTML=Ut),Ie=l(e),p(R.$$.fragment,e),Re=l(e),j=r(e,"P",{"data-svelte-h":!0}),o(j)!=="svelte-20agt5"&&(j.textContent=Ht),je=l(e),E=r(e,"UL",{"data-svelte-h":!0}),o(E)!=="svelte-1ypi2lx"&&(E.innerHTML=_t),Ee=l(e),V=r(e,"P",{"data-svelte-h":!0}),o(V)!=="svelte-19ch391"&&(V.textContent=qt),Ve=l(e),G=r(e,"P",{"data-svelte-h":!0}),o(G)!=="svelte-1eclpic"&&(G.innerHTML=Lt),Ge=l(e),p(N.$$.fragment,e),Ne=l(e),k=r(e,"P",{"data-svelte-h":!0}),o(k)!=="svelte-kcly0l"&&(k.textContent=Pt),ke=l(e),W=r(e,"P",{"data-svelte-h":!0}),o(W)!=="svelte-4i74o4"&&(W.innerHTML=Jt),We=l(e),Y=r(e,"P",{"data-svelte-h":!0}),o(Y)!=="svelte-f72rot"&&(Y.innerHTML=It),Ye=l(e),z=r(e,"P",{"data-svelte-h":!0}),o(z)!=="svelte-bb5nbl"&&(z.innerHTML=Rt),ze=l(e),p(Z.$$.fragment,e),Ze=l(e),F=r(e,"P",{"data-svelte-h":!0}),o(F)!=="svelte-2qmv22"&&(F.textContent=jt),Fe=l(e),B=r(e,"UL",{"data-svelte-h":!0}),o(B)!=="svelte-c4522"&&(B.innerHTML=Et),Be=l(e),X=r(e,"P",{"data-svelte-h":!0}),o(X)!=="svelte-g3bjeh"&&(X.innerHTML=Vt),Xe=l(e),A=r(e,"P",{"data-svelte-h":!0}),o(A)!=="svelte-1lyund8"&&(A.textContent=Gt),Ae=l(e),S=r(e,"P",{"data-svelte-h":!0}),o(S)!=="svelte-1l2kowr"&&(S.innerHTML=Nt),Se=l(e),p(Q.$$.fragment,e),Qe=l(e),D=r(e,"P",{"data-svelte-h":!0}),o(D)!=="svelte-13d2rfo"&&(D.innerHTML=kt),De=l(e),O=r(e,"P",{"data-svelte-h":!0}),o(O)!=="svelte-b2zy11"&&(O.textContent=Wt),Oe=l(e),K=r(e,"P",{"data-svelte-h":!0}),o(K)!=="svelte-3dlayl"&&(K.textContent=Yt),Ke=l(e),ee=r(e,"UL",{"data-svelte-h":!0}),o(ee)!=="svelte-1vwan3"&&(ee.innerHTML=zt),et=l(e),p(te.$$.fragment,e),tt=l(e),ne=r(e,"P",{"data-svelte-h":!0}),o(ne)!=="svelte-18xwev5"&&(ne.innerHTML=Zt),nt=l(e),p(ie.$$.fragment,e),it=l(e),se=r(e,"P",{"data-svelte-h":!0}),o(se)!=="svelte-1ctq193"&&(se.textContent=Ft),st=l(e),p(le.$$.fragment,e),lt=l(e),p(ae.$$.fragment,e),at=l(e),re=r(e,"P",{"data-svelte-h":!0}),o(re)!=="svelte-10grepd"&&(re.textContent=Bt),rt=l(e),oe=r(e,"UL",{"data-svelte-h":!0}),o(oe)!=="svelte-1xaje68"&&(oe.innerHTML=Xt),ot=l(e),ue=r(e,"P",{"data-svelte-h":!0}),o(ue)!=="svelte-1v8ph58"&&(ue.textContent=At),ut=l(e),p(pe.$$.fragment,e),pt=l(e),me=r(e,"P",{"data-svelte-h":!0}),o(me)!=="svelte-6fjb8c"&&(me.innerHTML=St),mt=l(e),p(ce.$$.fragment,e),ct=l(e),fe=r(e,"P",{}),Qt(fe).forEach(n),this.h()},h(){Dt(g,"name","hf:doc:metadata"),Dt(g,"content",pn)},m(e,t){an(document.head,g),i(e,de,t),i(e,he,t),i(e,ge,t),m(y,e,t),i(e,ye,t),m(v,e,t),i(e,ve,t),i(e,w,t),i(e,we,t),i(e,M,t),i(e,Me,t),i(e,T,t),i(e,Te,t),i(e,b,t),i(e,be,t),i(e,$,t),i(e,$e,t),m(C,e,t),i(e,Ce,t),m(x,e,t),i(e,xe,t),i(e,U,t),i(e,Ue,t),i(e,H,t),i(e,He,t),i(e,_,t),i(e,_e,t),i(e,q,t),i(e,qe,t),i(e,L,t),i(e,Le,t),m(P,e,t),i(e,Pe,t),i(e,J,t),i(e,Je,t),i(e,I,t),i(e,Ie,t),m(R,e,t),i(e,Re,t),i(e,j,t),i(e,je,t),i(e,E,t),i(e,Ee,t),i(e,V,t),i(e,Ve,t),i(e,G,t),i(e,Ge,t),m(N,e,t),i(e,Ne,t),i(e,k,t),i(e,ke,t),i(e,W,t),i(e,We,t),i(e,Y,t),i(e,Ye,t),i(e,z,t),i(e,ze,t),m(Z,e,t),i(e,Ze,t),i(e,F,t),i(e,Fe,t),i(e,B,t),i(e,Be,t),i(e,X,t),i(e,Xe,t),i(e,A,t),i(e,Ae,t),i(e,S,t),i(e,Se,t),m(Q,e,t),i(e,Qe,t),i(e,D,t),i(e,De,t),i(e,O,t),i(e,Oe,t),i(e,K,t),i(e,Ke,t),i(e,ee,t),i(e,et,t),m(te,e,t),i(e,tt,t),i(e,ne,t),i(e,nt,t),m(ie,e,t),i(e,it,t),i(e,se,t),i(e,st,t),m(le,e,t),i(e,lt,t),m(ae,e,t),i(e,at,t),i(e,re,t),i(e,rt,t),i(e,oe,t),i(e,ot,t),i(e,ue,t),i(e,ut,t),m(pe,e,t),i(e,pt,t),i(e,me,t),i(e,mt,t),m(ce,e,t),i(e,ct,t),i(e,fe,t),ht=!0},p:en,i(e){ht||(c(y.$$.fragment,e),c(v.$$.fragment,e),c(C.$$.fragment,e),c(x.$$.fragment,e),c(P.$$.fragment,e),c(R.$$.fragment,e),c(N.$$.fragment,e),c(Z.$$.fragment,e),c(Q.$$.fragment,e),c(te.$$.fragment,e),c(ie.$$.fragment,e),c(le.$$.fragment,e),c(ae.$$.fragment,e),c(pe.$$.fragment,e),c(ce.$$.fragment,e),ht=!0)},o(e){h(y.$$.fragment,e),h(v.$$.fragment,e),h(C.$$.fragment,e),h(x.$$.fragment,e),h(P.$$.fragment,e),h(R.$$.fragment,e),h(N.$$.fragment,e),h(Z.$$.fragment,e),h(Q.$$.fragment,e),h(te.$$.fragment,e),h(ie.$$.fragment,e),h(le.$$.fragment,e),h(ae.$$.fragment,e),h(pe.$$.fragment,e),h(ce.$$.fragment,e),ht=!1},d(e){e&&(n(de),n(he),n(ge),n(ye),n(ve),n(w),n(we),n(M),n(Me),n(T),n(Te),n(b),n(be),n($),n($e),n(Ce),n(xe),n(U),n(Ue),n(H),n(He),n(_),n(_e),n(q),n(qe),n(L),n(Le),n(Pe),n(J),n(Je),n(I),n(Ie),n(Re),n(j),n(je),n(E),n(Ee),n(V),n(Ve),n(G),n(Ge),n(Ne),n(k),n(ke),n(W),n(We),n(Y),n(Ye),n(z),n(ze),n(Ze),n(F),n(Fe),n(B),n(Be),n(X),n(Xe),n(A),n(Ae),n(S),n(Se),n(Qe),n(D),n(De),n(O),n(Oe),n(K),n(Ke),n(ee),n(et),n(tt),n(ne),n(nt),n(it),n(se),n(st),n(lt),n(at),n(re),n(rt),n(oe),n(ot),n(ue),n(ut),n(pt),n(me),n(mt),n(ct),n(fe)),n(g),f(y,e),f(v,e),f(C,e),f(x,e),f(P,e),f(R,e),f(N,e),f(Z,e),f(Q,e),f(te,e),f(ie,e),f(le,e),f(ae,e),f(pe,e),f(ce,e)}}}const pn='{"title":"Analytics and Metrics","local":"analytics-and-metrics","sections":[{"title":"Understanding the graphs","local":"understanding-the-graphs","sections":[{"title":"Number of (HTTP) Requests","local":"number-of-http-requests","sections":[],"depth":3},{"title":"Pending Requests","local":"pending-requests","sections":[],"depth":3},{"title":"Latency Distribution","local":"latency-distribution","sections":[],"depth":3},{"title":"Running Replicas","local":"running-replicas","sections":[],"depth":3},{"title":"Compute","local":"compute","sections":[],"depth":3}],"depth":2},{"title":"Create an integration with the Inference Endpoints OpenMetrics API","local":"create-an-integration-with-the-inference-endpoints-openmetrics-api","sections":[{"title":"Query metrics manually","local":"query-metrics-manually","sections":[],"depth":3},{"title":"Connect with your observability tools","local":"connect-with-your-observability-tools","sections":[],"depth":3},{"title":"Subscribe to Team or Enterprise","local":"subscribe-to-team-or-enterprise","sections":[],"depth":3}],"depth":2}],"depth":1}';function mn(ft){return tn(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class gn extends nn{constructor(g){super(),sn(this,g,mn,un,Kt,{})}}export{gn as component};
