⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.72
Server IP:
41.128.143.86
Server:
Linux host.raqmix.cloud 6.8.0-1025-azure #30~22.04.1-Ubuntu SMP Wed Mar 12 15:28:20 UTC 2025 x86_64
Server Software:
Apache
PHP Version:
8.3.23
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
usr
/
share
/
grafana
/
public
/
build
/
View File Name :
opentsdbPlugin.418b8c8ea0d97ed99edb.js
"use strict";(self.webpackChunkgrafana=self.webpackChunkgrafana||[]).push([[747],{24989:(ze,q,u)=>{u.r(q),u.d(q,{plugin:()=>De});var _=u(40187),t=u(96540),ie=u(32264),ce=u(91409),me=u(84167),$=u(88575),x=u(88323),P=u(10354);const G=[{label:"<=2.1",value:1},{label:"==2.2",value:2},{label:"==2.3",value:3}],W=[{label:"second",value:1},{label:"millisecond",value:2}],ue=s=>{const{onChange:e,value:a}=s,r=(0,t.useId)();return t.createElement(t.Fragment,null,t.createElement(me.n,{label:"OpenTSDB settings"},t.createElement($.D,{htmlFor:`select-version-${r}`,label:"Version"},t.createElement(x.l6,{inputId:`select-version-${r}`,options:G,value:G.find(l=>l.value===a.jsonData.tsdbVersion)??G[0],onChange:ee("tsdbVersion",a,e),width:20})),t.createElement($.D,{htmlFor:`select-resolution-${r}`,label:"Resolution"},t.createElement(x.l6,{inputId:`select-resolution-${r}`,options:W,value:W.find(l=>l.value===a.jsonData.tsdbResolution)??W[0],onChange:ee("tsdbResolution",a,e),width:20})),t.createElement($.D,{htmlFor:`lookup-input-${r}`,label:"Lookup limit"},t.createElement(P.p,{id:`lookup-input-${r}`,type:"number",value:a.jsonData.lookupLimit??1e3,onChange:ge("lookupLimit",a,e),width:20}))))},ee=(s,e,a)=>r=>{a({...e,jsonData:{...e.jsonData,[s]:r.value}})},ge=(s,e,a)=>r=>{a({...e,jsonData:{...e.jsonData,[s]:r.currentTarget.value}})},pe=s=>{const{options:e,onOptionsChange:a}=s;return t.createElement(t.Fragment,null,t.createElement(ce.t,{defaultUrl:"http://localhost:4242",dataSourceConfig:e,onChange:a,secureSocksDSProxyEnabled:ie.$.secureSocksDSProxyEnabled}),t.createElement(ue,{value:e,onChange:a}))};var te=u(32196),ae=u(40672),H=u(40845),d=u(67061),b=u(50877),E=u(38894),B=u(76892),L=u(15292);function de({query:s,onChange:e,onRunQuery:a,aggregators:r,fillPolicies:l,tsdbVersion:c}){const i=r.map(o=>(0,b.z)(o)),n=l.map(o=>(0,b.z)(o));return t.createElement(d.B,{gap:.5,alignItems:"flex-start","data-testid":se.section},t.createElement(d.B,{gap:0},t.createElement(E.I,{className:"query-keyword",width:8,tooltip:t.createElement("div",null,"Leave interval blank for auto or for example use ",t.createElement("code",null,"1m"))},"Down sample"),t.createElement(P.p,{width:25,"data-testid":se.interval,placeholder:"interval",value:s.downsampleInterval??"",onChange:o=>{const m=o.currentTarget.value;e({...s,downsampleInterval:m})},onBlur:()=>a()})),t.createElement(d.B,{gap:0},t.createElement(E.I,{width:"auto",className:"query-keyword"},"Aggregator"),t.createElement(x.l6,{value:s.downsampleAggregator?(0,b.z)(s.downsampleAggregator):void 0,options:i,onChange:({value:o})=>{o&&(e({...s,downsampleAggregator:o}),a())}})),c>=2&&t.createElement(d.B,{gap:0,alignItems:"flex-start"},t.createElement(B.c,{className:"width-6 query-keyword"},"Fill"),t.createElement(x.l6,{inputId:"opentsdb-fillpolicy-select",value:s.downsampleFillPolicy?(0,b.z)(s.downsampleFillPolicy):void 0,options:n,onChange:({value:o})=>{o&&(e({...s,downsampleFillPolicy:o}),a())}})),t.createElement(d.B,{gap:0},t.createElement(E.I,{className:"query-keyword"},"Disable downsampling"),t.createElement(L.K,{value:s.disableDownsampling??!1,onChange:()=>{const o=s.disableDownsampling??!1;e({...s,disableDownsampling:!o}),a()}})),t.createElement(d.B,{gap:0,grow:1},t.createElement(B.c,null," ")))}const se={section:"opentsdb-downsample",interval:"downsample-interval"};var he=u(76459),U=u.n(he),g=u(2543),re=u(55852),k=u(14578);function fe({query:s,onChange:e,onRunQuery:a,suggestTagKeys:r,filterTypes:l,suggestTagValues:c}){const i=(0,H.of)(re.my),[n,o]=(0,t.useState)(),[m,v]=(0,t.useState)(),[f,C]=(0,t.useState)(!1),[y,w]=(0,t.useState)("iliteral_or"),[S,O]=(0,t.useState)(""),[T,M]=(0,t.useState)(""),[A,V]=(0,t.useState)(!1),[R,X]=(0,t.useState)(""),Y=l.map(p=>(0,b.z)(p));function h(){C(!f)}function K(){if(s.tags&&(0,g.size)(s.tags)>0){X("Please remove tags to use filters, tags and filters are mutually exclusive.");return}if(!f){C(!0);return}const p={type:y,tagk:S,filter:T,groupBy:A};s.filters=s.filters?s.filters.concat([p]):[p],w("literal_or"),O(""),M(""),V(!1),e(s),a(),h()}function N(p){s.filters?.splice(p,1),e(s),a()}function Ae(p,F){N(F),O(p.tagk),M(p.filter),w(p.type),V(p.groupBy),K()}const Ke=" ",Me=(0,t.useCallback)((p,F)=>{const Z=p.value??"";return F.split(Ke).reduce((Pe,Le)=>Pe&&Z.toLowerCase().includes(Le.toLowerCase()),!0)},[]),Ne=U()(p=>c(p),350);return t.createElement(d.B,{gap:0,"data-testid":Q.section},t.createElement(E.I,{className:"query-keyword",width:8,tooltip:t.createElement("div",null,"Filters does not work with tags, either of the two will work but not both.")},"Filters"),s.filters&&s.filters.map((p,F)=>t.createElement(E.I,{key:F,width:"auto","data-testid":Q.list+F},p.tagk," = ",p.type,"(",p.filter,"), groupBy = ",""+p.groupBy,t.createElement("button",{type:"button",className:i,onClick:()=>Ae(p,F)},t.createElement(k.I,{name:"pen"})),t.createElement("button",{type:"button",className:i,onClick:()=>N(F),"data-testid":Q.remove},t.createElement(k.I,{name:"times"})))),!f&&t.createElement(E.I,{width:2},t.createElement("button",{type:"button",className:i,onClick:h,"aria-label":"Add filter"},t.createElement(k.I,{name:"plus"}))),f&&t.createElement(d.B,{gap:.5,alignItems:"center"},t.createElement(d.B,{gap:0},t.createElement(x.l6,{inputId:"opentsdb-suggested-tagk-select",value:S?(0,b.z)(S):void 0,placeholder:"key",allowCustomValue:!0,filterOption:Me,onOpenMenu:async()=>{v(!0);const F=(await r(s)).map(Z=>(0,b.z)(Z));o(F),v(!1)},isLoading:m,options:n,onChange:({value:p})=>{p&&O(p)}})),t.createElement(d.B,{gap:0},t.createElement(B.c,{className:"width-4 query-keyword"},"Type"),t.createElement(x.l6,{inputId:"opentsdb-aggregator-select",value:y?(0,b.z)(y):void 0,options:Y,onChange:({value:p})=>{p&&w(p)}})),t.createElement(d.B,{gap:0},t.createElement(x.DW,{inputId:"opentsdb-suggested-tagv-select",value:T?(0,b.z)(T):void 0,placeholder:"filter",allowCustomValue:!0,loadOptions:Ne,defaultOptions:[],onChange:({value:p})=>{p&&M(p)}})),t.createElement(E.I,{width:5,className:"query-keyword"},"Group by"),t.createElement(L.K,{value:A,onChange:()=>{V(!A)}}),t.createElement(d.B,{gap:0},R&&t.createElement(B.c,{title:R,"data-testid":Q.error},t.createElement(k.I,{name:"exclamation-triangle",color:"rgb(229, 189, 28)"})),t.createElement(E.I,{width:5.5},t.createElement("button",{type:"button",className:i,onClick:K},"add filter"),t.createElement("button",{type:"button",className:i,onClick:h},t.createElement(k.I,{name:"times"}))))),t.createElement(d.B,{gap:0,grow:1},t.createElement(B.c,null," ")))}const Q={section:"opentsdb-filter",list:"opentsdb-filter-list",error:"opentsdb-filter-error",remove:"opentsdb-filter-remove"};function ve({query:s,onChange:e,onRunQuery:a,suggestMetrics:r,aggregators:l}){const c=l.map(n=>(0,b.z)(n)),i=U()(n=>r(n),350);return t.createElement(d.B,{gap:.5,alignItems:"flex-start","data-testid":ne.section},t.createElement(d.B,{gap:0},t.createElement(E.I,{width:8,className:"query-keyword"},"Metric"),t.createElement(x.DW,{width:25,inputId:"opentsdb-metric-select",value:s.metric?(0,b.z)(s.metric):void 0,placeholder:"Metric name",allowCustomValue:!0,loadOptions:i,defaultOptions:[],onChange:({value:n})=>{n&&(e({...s,metric:n}),a())}})),t.createElement(d.B,{gap:0,alignItems:"flex-start"},t.createElement(E.I,{width:"auto",className:"query-keyword"},"Aggregator"),t.createElement(x.l6,{inputId:"opentsdb-aggregator-select",value:s.aggregator?(0,b.z)(s.aggregator):void 0,options:c,onChange:({value:n})=>{n&&(e({...s,aggregator:n}),a())}})),t.createElement(d.B,{gap:0},t.createElement(E.I,{className:"query-keyword",width:6,tooltip:t.createElement("div",null,"Use patterns like $tag_tagname to replace part of the alias for a tag value")},"Alias"),t.createElement(P.p,{"data-testid":ne.alias,placeholder:"series alias",value:s.alias??"",onChange:n=>{const o=n.currentTarget.value;e({...s,alias:o})},onBlur:()=>a()})),t.createElement(d.B,{gap:0,grow:1},t.createElement(B.c,null," ")))}const ne={section:"opentsdb-metricsection",alias:"metric-alias"};function Ee({query:s,onChange:e,onRunQuery:a,tsdbVersion:r}){return t.createElement(d.B,{gap:0,"data-testid":z.section},t.createElement(E.I,{className:"query-keyword",width:8},"Rate"),t.createElement(L.K,{"data-testid":z.shouldComputeRate,value:s.shouldComputeRate??!1,onChange:()=>{const l=s.shouldComputeRate??!1;e({...s,shouldComputeRate:!l}),a()}}),s.shouldComputeRate&&t.createElement(t.Fragment,null,t.createElement(E.I,{className:"query-keyword",width:"auto"},"Counter"),t.createElement(L.K,{"data-testid":z.isCounter,value:s.isCounter??!1,onChange:()=>{const l=s.isCounter??!1;e({...s,isCounter:!l}),a()}})),s.shouldComputeRate&&s.isCounter&&t.createElement(d.B,{gap:0},t.createElement(B.c,{width:"auto",className:"query-keyword"},"Counter max"),t.createElement(P.p,{"data-testid":z.counterMax,placeholder:"max value",value:s.counterMax??"",onChange:l=>{const c=l.currentTarget.value;e({...s,counterMax:c})},onBlur:()=>a()}),t.createElement(B.c,{width:"auto",className:"query-keyword"},"Reset value"),t.createElement(P.p,{"data-testid":z.counterResetValue,placeholder:"reset value",value:s.counterResetValue??"",onChange:l=>{const c=l.currentTarget.value;e({...s,counterResetValue:c})},onBlur:()=>a()})),r>2&&t.createElement(t.Fragment,null,t.createElement(E.I,{className:"query-keyword",width:"auto"},"Explicit tags"),t.createElement(L.K,{"data-testid":z.explicitTags,value:s.explicitTags??!1,onChange:()=>{const l=s.explicitTags??!1;e({...s,explicitTags:!l}),a()}})),t.createElement(d.B,{gap:0,grow:1},t.createElement(B.c,null," ")))}const z={section:"opentsdb-rate",shouldComputeRate:"opentsdb-shouldComputeRate",isCounter:"opentsdb-is-counter",counterMax:"opentsdb-counter-max",counterResetValue:"opentsdb-counter-reset-value",explicitTags:"opentsdb-explicit-tags"};function Te({query:s,onChange:e,onRunQuery:a,suggestTagKeys:r,suggestTagValues:l,tsdbVersion:c}){const i=(0,H.of)(re.my),[n,o]=(0,t.useState)(),[m,v]=(0,t.useState)(),[f,C]=(0,t.useState)(!1),[y,w]=(0,t.useState)(""),[S,O]=(0,t.useState)(""),[T,M]=(0,t.useState)("");function A(){C(!f)}function V(){if(s.filters&&(0,g.size)(s.filters)>0){M("Please remove filters to use tags, tags and filters are mutually exclusive.");return}if(!f){C(!0);return}if(s.tags&&(0,g.has)(s.tags,y)){const h="Duplicate tag key '"+y+"'.";M(h);return}s.tags||(s.tags={}),s.tags[y]=S,w(""),O(""),e(s),a(),A()}function R(h){delete s.tags[h],e(s),a()}function X(h,K){R(h),w(h),O(K),V()}const Y=U()(h=>l(h),350);return t.createElement(d.B,{gap:0,"data-testid":j.section},t.createElement(E.I,{className:"query-keyword",width:8,tooltip:c>=2?t.createElement("div",null,"Please use filters, tags are deprecated in opentsdb 2.2"):void 0},"Tags"),s.tags&&Object.keys(s.tags).map((h,K)=>{const N=s.tags[h];return t.createElement(E.I,{key:K,width:"auto","data-testid":j.list+K},h,"=",N,t.createElement("button",{type:"button",className:i,onClick:()=>X(h,N)},t.createElement(k.I,{name:"pen"})),t.createElement("button",{type:"button",className:i,onClick:()=>R(h),"data-testid":j.remove},t.createElement(k.I,{name:"times"})))}),!f&&t.createElement(E.I,{width:2},t.createElement("button",{type:"button",className:i,onClick:A,"aria-label":"Add tag"},t.createElement(k.I,{name:"plus"}))),f&&t.createElement(d.B,{gap:.5,alignItems:"center"},t.createElement(d.B,{gap:0},t.createElement(x.l6,{inputId:"opentsdb-suggested-tagk-select",value:y?(0,b.z)(""+y):void 0,placeholder:"key",allowCustomValue:!0,onOpenMenu:async()=>{v(!0);const K=(await r(s)).map(N=>(0,b.z)(N));o(K),v(!1)},isLoading:m,options:n,onChange:({value:h})=>{h&&w(h)}})),t.createElement(d.B,{gap:0},t.createElement(x.DW,{inputId:"opentsdb-suggested-tagv-select",value:S?(0,b.z)(S):void 0,placeholder:"value",allowCustomValue:!0,loadOptions:Y,defaultOptions:[],onChange:({value:h})=>{h&&O(h)}})),t.createElement(d.B,{gap:0},T&&t.createElement(B.c,{title:T,"data-testid":j.error},t.createElement(k.I,{name:"exclamation-triangle",color:"rgb(229, 189, 28)"})),t.createElement(E.I,{width:5.5},t.createElement("button",{type:"button",className:i,onClick:V},"add tag"),t.createElement("button",{type:"button",className:i,onClick:A},t.createElement(k.I,{name:"times"}))))),t.createElement(d.B,{gap:0,grow:1},t.createElement(B.c,null," ")))}const j={section:"opentsdb-tag",list:"opentsdb-tag-list",error:"opentsdb-tag-error",remove:"opentsdb-tag-remove"};function be({datasource:s,onRunQuery:e,onChange:a,query:r,range:l,queries:c}){const i=(0,H.of)(ye),[n,o]=(0,t.useState)(["avg","sum","min","max","dev","zimsum","mimmin","mimmax"]),m=["none","nan","null","zero"],[v,f]=(0,t.useState)(["wildcard","iliteral_or","not_iliteral_or","not_literal_or","iwildcard","literal_or","regexp"]),C=s.tsdbVersion;r.aggregator||(r.aggregator="sum"),r.downsampleAggregator||(r.downsampleAggregator="avg"),r.downsampleFillPolicy||(r.downsampleFillPolicy="none"),(0,t.useEffect)(()=>{s.getAggregators().then(T=>{T.length!==0&&o(T)})},[s]),(0,t.useEffect)(()=>{s.getFilterTypes().then(T=>{T.length!==0&&f(T)})},[s]);async function y(T){return s.metricFindQuery(`metrics(${T})`).then(O)}async function w(T){return s.metricFindQuery(`suggest_tagv(${T})`).then(O)}async function S(T){return s.suggestTagKeys(T)}function O(T){const M=s.getVariables().map(V=>({value:ae.sQ.escapeHtml(V),description:V})),A=T.map(V=>({value:ae.sQ.escapeHtml(V.text),description:V.text}));return M.concat(A)}return t.createElement("div",{className:i.container,"data-testid":we.editor},t.createElement(d.B,{gap:.5,direction:"column",grow:1},t.createElement(ve,{query:r,onChange:a,onRunQuery:e,suggestMetrics:y,aggregators:n}),t.createElement(de,{query:r,onChange:a,onRunQuery:e,aggregators:n,fillPolicies:m,tsdbVersion:C}),C>=2&&t.createElement(fe,{query:r,onChange:a,onRunQuery:e,filterTypes:v,suggestTagValues:w,suggestTagKeys:S}),t.createElement(Te,{query:r,onChange:a,onRunQuery:e,suggestTagValues:w,suggestTagKeys:S,tsdbVersion:C}),t.createElement(Ee,{query:r,onChange:a,onRunQuery:e,tsdbVersion:C})))}function ye(s){return{container:(0,te.css)` display: flex; `,toggleButton:(0,te.css)` margin-left: ${s.spacing(.5)}; `}}const we={editor:"opentsdb-editor"};var Ie=u(88483),Ce=u(44240),J=u(62467),D=u(75505),Se=u(66847),I=u(81160),le=u(14236),Ve=u(85858),oe=u(17172),xe=u(87986);const Be=s=>{const{query:e,onChange:a}=s,[r,l]=(0,t.useState)(e.target??""),[c,i]=(0,t.useState)(e.isGlobal??!1),n=(m,v)=>{a({...e,[m]:v,fromAnnotations:!0})},o=m=>{m=!m,i(m),n("isGlobal",m)};return t.createElement("div",{className:"gf-form-group"},t.createElement("div",{className:"gf-form"},t.createElement(E.I,{width:12},"OpenTSDB metrics query"),t.createElement(P.p,{value:r,onChange:m=>l(m.currentTarget.value??""),onBlur:()=>n("target",r),placeholder:"events.eventname"})),t.createElement("div",{className:"gf-form"},t.createElement(E.I,{width:12},"Show Global Annotations?"),t.createElement(L.K,{value:c,onChange:m=>o(c)})))},Fe=s=>({fromAnnotations:!0,target:s.target??"",name:s.name??"",isGlobal:s.isGlobal??!1}),ke=s=>{const e=s.target&&typeof s.target!="string"?s.target:Fe(s);return s.target=e,s};class Oe extends _.mA{constructor(e,a=(0,xe.w)()){super(e),this.templateSrv=a,this.type="opentsdb",this.url=e.url,this.name=e.name,this.withCredentials=e.withCredentials,this.basicAuth=e.basicAuth,e.jsonData=e.jsonData||{},this.tsdbVersion=e.jsonData.tsdbVersion||1,this.tsdbResolution=e.jsonData.tsdbResolution||1,this.lookupLimit=e.jsonData.lookupLimit||1e3,this.tagKeys={},this.aggregatorsPromise=null,this.filterTypesPromise=null,this.annotations={QueryEditor:Be,prepareAnnotation:ke}}query(e){if(e.targets.some(n=>n.fromAnnotations)){const n=[];for(const o of e.targets)o.target&&n.push(new Ie.c(m=>{this.annotationEvent(e,o).then(v=>m.next({data:[(0,le.Vc)(v)]})).catch(v=>m.next({data:[(0,le.Vc)([])]})).finally(()=>m.complete())}));return(0,Ce.h)(...n)}const a=this.convertToTSDBTime(e.range.raw.from,!1,e.timezone),r=this.convertToTSDBTime(e.range.raw.to,!0,e.timezone),l=[];(0,g.each)(e.targets,n=>{n.metric&&l.push(this.convertTargetToQuery(n,e,this.tsdbVersion))});const c=(0,g.compact)(l);if((0,g.isEmpty)(c))return(0,J.of)({data:[]});const i={};return(0,g.each)(c,n=>{n.filters&&n.filters.length>0?(0,g.each)(n.filters,o=>{i[o.tagk]=!0}):(0,g.each)(n.tags,(o,m)=>{i[m]=!0})}),e.targets=(0,g.filter)(e.targets,n=>n.hide!==!0),this.performTimeSeriesQuery(c,a,r).pipe((0,Se.W)(n=>{throw n?.data?.error?.message||"Error performing time series query."}),(0,I.T)(n=>{const o=this.mapMetricsToTargets(n.data,e,this.tsdbVersion);return{data:(0,g.map)(n.data,(v,f)=>(f=o[f],f===-1&&(f=0),this._saveTagKeys(v),this.transformMetricData(v,i,e.targets[f],e,this.tsdbResolution)))}}))}annotationEvent(e,a){const r=this.convertToTSDBTime(e.range.raw.from,!1,e.timezone),l=this.convertToTSDBTime(e.range.raw.to,!0,e.timezone),c=[],i=[];c.push({aggregator:"sum",metric:a.target});const n=(0,g.compact)(c);return(0,D.s)(this.performTimeSeriesQuery(n,r,l).pipe((0,I.T)(o=>{if(o.data[0]){let m=o.data[0].annotations;a.isGlobal&&(m=o.data[0].globalAnnotations),m&&(0,g.each)(m,v=>{const f={text:v.description,time:Math.floor(v.startTime)*1e3,annotation:a};i.push(f)})}return i})))}targetContainsTemplate(e){if(e.filters&&e.filters.length>0){for(let a=0;a
0){for(const a in e.tags)if(this.templateSrv.containsTemplate(e.tags[a]))return!0}return!1}performTimeSeriesQuery(e,a,r){let l=!1;this.tsdbResolution===2&&(l=!0);const c={start:a,queries:e,msResolution:l,globalAnnotations:!0};this.tsdbVersion===3&&(c.showQuery=!0),r&&(c.end=r);const i={method:"POST",url:this.url+"/api/query",data:c};return this._addCredentialOptions(i),(0,oe.AI)().fetch(i)}suggestTagKeys(e){const a=e.metric??"";return Promise.resolve(this.tagKeys[a]||[])}_saveTagKeys(e){const a=Object.keys(e.tags);(0,g.each)(e.aggregateTags,r=>{a.push(r)}),this.tagKeys[e.metric]=a}_performSuggestQuery(e,a){return this._get("/api/suggest",{type:a,q:e,max:this.lookupLimit}).pipe((0,I.T)(r=>r.data))}_performMetricKeyValueLookup(e,a){if(!e||!a)return(0,J.of)([]);const r=a.split(",").map(n=>n.trim()),l=r[0];let c=l+"=*";r.length>1&&(c+=","+r.splice(1).join(","));const i=e+"{"+c+"}";return this._get("/api/search/lookup",{m:i,limit:this.lookupLimit}).pipe((0,I.T)(n=>{n=n.data.results;const o=[];return(0,g.each)(n,m=>{o.indexOf(m.tags[l])===-1&&o.push(m.tags[l])}),o}))}_performMetricKeyLookup(e){return e?this._get("/api/search/lookup",{m:e,limit:1e3}).pipe((0,I.T)(a=>{a=a.data.results;const r=[];return(0,g.each)(a,l=>{(0,g.each)(l.tags,(c,i)=>{r.indexOf(i)===-1&&r.push(i)})}),r})):(0,J.of)([])}_get(e,a){const r={method:"GET",url:this.url+e,params:a};return this._addCredentialOptions(r),(0,oe.AI)().fetch(r)}_addCredentialOptions(e){(this.basicAuth||this.withCredentials)&&(e.withCredentials=!0),this.basicAuth&&(e.headers={Authorization:this.basicAuth})}metricFindQuery(e){if(!e)return Promise.resolve([]);let a;try{a=this.templateSrv.replace(e,{},"distributed")}catch(w){return Promise.reject(w)}const r=w=>(0,g.map)(w,S=>({text:S})),l=/metrics\((.*)\)/,c=/tag_names\((.*)\)/,i=/tag_values\((.*?),\s?(.*)\)/,n=/suggest_tagk\((.*)\)/,o=/suggest_tagv\((.*)\)/,m=a.match(l);if(m)return(0,D.s)(this._performSuggestQuery(m[1],"metrics").pipe((0,I.T)(r)));const v=a.match(c);if(v)return(0,D.s)(this._performMetricKeyLookup(v[1]).pipe((0,I.T)(r)));const f=a.match(i);if(f)return(0,D.s)(this._performMetricKeyValueLookup(f[1],f[2]).pipe((0,I.T)(r)));const C=a.match(n);if(C)return(0,D.s)(this._performSuggestQuery(C[1],"tagk").pipe((0,I.T)(r)));const y=a.match(o);return y?(0,D.s)(this._performSuggestQuery(y[1],"tagv").pipe((0,I.T)(r))):Promise.resolve([])}testDatasource(){return(0,D.s)(this._performSuggestQuery("cpu","metrics").pipe((0,I.T)(()=>({status:"success",message:"Data source is working"}))))}getAggregators(){return this.aggregatorsPromise?this.aggregatorsPromise:(this.aggregatorsPromise=(0,D.s)(this._get("/api/aggregators").pipe((0,I.T)(e=>e.data&&(0,g.isArray)(e.data)?e.data.sort():[]))),this.aggregatorsPromise)}getFilterTypes(){return this.filterTypesPromise?this.filterTypesPromise:(this.filterTypesPromise=(0,D.s)(this._get("/api/config/filters").pipe((0,I.T)(e=>e.data?Object.keys(e.data).sort():[]))),this.filterTypesPromise)}transformMetricData(e,a,r,l,c){const i=this.createMetricLabel(e,r,a,l),n=[];return(0,g.each)(e.dps,(o,m)=>{c===2?n.push([o,m*1]):n.push([o,m*1e3])}),{target:i,datapoints:n}}createMetricLabel(e,a,r,l){if(a.alias){const n=(0,g.clone)(l.scopedVars||{});return(0,g.each)(e.tags,(o,m)=>{n["tag_"+m]={value:o}}),this.templateSrv.replace(a.alias,n)}let c=e.metric;const i=[];return(0,g.isEmpty)(e.tags)||(0,g.each)((0,g.toPairs)(e.tags),n=>{(0,g.has)(r,n[0])&&i.push(n[0]+"="+n[1])}),(0,g.isEmpty)(i)||(c+="{"+i.join(", ")+"}"),c}convertTargetToQuery(e,a,r){if(!e.metric||e.hide)return null;const l=this.interpolateVariablesInQuery(e,a.scopedVars);if(e.shouldComputeRate&&(l.rate=!0,l.rateOptions={counter:!!e.isCounter},e.counterMax&&e.counterMax.length&&(l.rateOptions.counterMax=parseInt(e.counterMax,10)),e.counterResetValue&&e.counterResetValue.length&&(l.rateOptions.resetValue=parseInt(e.counterResetValue,10)),r>=2&&(l.rateOptions.dropResets=!l.rateOptions.counterMax&&(!l.rateOptions.ResetValue||l.rateOptions.ResetValue===0))),!e.disableDownsampling){let c=this.templateSrv.replace(e.downsampleInterval||a.interval);c.match(/\.[0-9]+s/)&&(c=parseFloat(c)*1e3+"ms"),l.downsample=c+"-"+e.downsampleAggregator,e.downsampleFillPolicy&&e.downsampleFillPolicy!=="none"&&(l.downsample+="-"+e.downsampleFillPolicy)}return e.explicitTags&&(l.explicitTags=!0),l}interpolateVariablesInFilters(e,a){e.filters=e.filters?.map(r=>(r.tagk=this.templateSrv.replace(r.tagk,a,"pipe"),r.filter=this.templateSrv.replace(r.filter,a,"pipe"),r))}getVariables(){return this.templateSrv.getVariables().map(e=>`$${e.name}`)}mapMetricsToTargets(e,a,r){let l,c;return(0,g.map)(e,i=>r===3?i.query.index:(0,g.findIndex)(a.targets,n=>n.filters&&n.filters.length>0?n.metric===i.metric:n.metric===i.metric&&(0,g.every)(n.tags,(o,m)=>(l=this.templateSrv.replace(o,a.scopedVars,"pipe"),c=l.split("|"),(0,g.includes)(c,i.tags[m])||l==="*"))))}interpolateVariablesInQueries(e,a){return e.length?e.map(r=>this.interpolateVariablesInQuery(r,a)):e}interpolateVariablesInQuery(e,a){const r=(0,g.cloneDeep)(e);if(r.metric=this.templateSrv.replace(e.metric,a,"pipe"),r.aggregator="avg",e.aggregator&&(r.aggregator=this.templateSrv.replace(e.aggregator)),r.filters&&r.filters.length>0)this.interpolateVariablesInFilters(r,a);else if(r.tags)for(const l in r.tags)r.tags[l]=this.templateSrv.replace(r.tags[l],a,"pipe");return r}convertToTSDBTime(e,a,r){return e==="now"?null:(e=Ve.parse(e,a,r),e.valueOf())}}const De=new _.tD(Oe).setQueryEditor(be).setConfigEditor(pe)}}]); //# sourceMappingURL=opentsdbPlugin.418b8c8ea0d97ed99edb.js.map