D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
usr
/
share
/
grafana
/
public
/
build
/
Filename :
loki-query-field.120c9af28a9460de4072.js
back
Copy
"use strict";(self.webpackChunkgrafana=self.webpackChunkgrafana||[]).push([[7142,1598],{52903:($,N)=>{var a;a={value:!0},N.hl=N.x=void 0,N.x={wordPattern:/(-?\d*\.\d\w*)|([^`~!#%^&*()\-=+\[{\]}\\|;:'",.<>\/?\s]+)/g,comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"},{open:"<",close:">"}],folding:{}};var O=["sum","avg","min","max","stddev","stdvar","count","topk","bottomk"],S=["json","logfmt","regexp","unpack","pattern"],E=["line_format","label_format"],T=["count_over_time","rate","bytes_over_time","bytes_rate","avg_over_time","sum_over_time","min_over_time","max_over_time","stdvar_over_time","stddev_over_time","quantile_over_time","first_over_time","last_over_time","absent_over_time"],I=["by","without"],D="(".concat(I.reduce(function(G,z){return"".concat(G,"|").concat(z)}),")"),F=["+","-","*","/","%","^","==","!=",">","<",">=","<=","|=","!=","|~","!~","and","or","unless","|"],W=O.concat(S).concat(E).concat(T).concat(I);N.hl={ignoreCase:!1,defaultToken:"",tokenPostfix:".logql",keywords:W,operators:F,vectorMatching:D,symbols:/[=><!~?:&|+\-*\/^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,digits:/\d+(_+\d+)*/,octaldigits:/[0-7]+(_+[0-7]+)*/,binarydigits:/[0-1]+(_+[0-1]+)*/,hexdigits:/[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,integersuffix:/(ll|LL|u|U|l|L)?(ll|LL|u|U|l|L)?/,floatsuffix:/[fFlL]?/,tokenizer:{root:[[/@vectorMatching\s*(?=\()/,"type","@clauses"],[/[a-z_]\w*(?=\s*(=|!=|=~|!~))/,"tag"],[/(^#.*$)/,"comment"],[/[a-zA-Z_]\w*/,{cases:{"@keywords":"type","@default":"identifier"}}],[/"/,"string","@string_double"],[/'/,"string","@string_single"],[/`/,"string","@string_backtick"],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d+(?:ms|[smhdwy])/,"number"],[/\d*\d+[eE]([\-+]?\d+)?(@floatsuffix)/,"number.float"],[/\d*\.\d+([eE][\-+]?\d+)?(@floatsuffix)/,"number.float"],[/0[xX][0-9a-fA-F']*[0-9a-fA-F](@integersuffix)/,"number.hex"],[/0[0-7']*[0-7](@integersuffix)/,"number.octal"],[/0[bB][0-1']*[0-1](@integersuffix)/,"number.binary"],[/\d[\d']*\d(@integersuffix)/,"number"],[/\d(@integersuffix)/,"number"]],string_double:[[/\{\{(.*?)\}\}/,{token:"number"}],[/[^\\"]/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],string_single:[[/[^\\']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/'/,"string","@pop"]],string_backtick:[[/\{\{(.*?)\}\}/,{token:"number"}],[/[^\\`]/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/`/,"string","@pop"]],clauses:[[/[^(,)]/,"tag"],[/\)/,"identifier","@pop"]],whitespace:[[/[ \t\r\n]+/,"white"]]}}},11742:($,N,a)=>{a.r(N),a.d(N,{default:()=>Ye});var O=a(42844),S=a(89949),E=a(27702),T=a(92024),I=a(66117),D=a(74639),F=a(52903),W=a(66310),G=a(15939);function z(){const e=new Map;return e.set("expandSuggestionDocs",(!0).toString()),{onDidChangeValue:t=>{},onDidChangeTarget:t=>{},onWillSaveState:t=>{},get:(t,n,r)=>e.get(t)??r,getBoolean:(t,n,r)=>{const s=e.get(t);return s!==void 0?s==="true":r},getNumber:(t,n,r)=>{const s=e.get(t);return s!==void 0?parseInt(s,10):r},store:(t,n,r,s)=>{n==null?e.delete(t):e.set(t,n.toString())},remove:(t,n)=>{e.delete(t)},keys:(t,n)=>Array.from(e.keys()),logStorage:()=>{console.log("logStorage: not implemented")},migrate:()=>Promise.resolve(void 0),isNew:t=>!0,flush:t=>Promise.resolve(void 0)}}let ue={storageService:z()};function ce(){return ue}class X extends Error{constructor(t){super(`Unexpected case in switch statement: ${JSON.stringify(t)}`)}}var j=a(64826),U=a(73565),m=a(25577),h=a(4737),Q=a(62434);const de=[{type:"PATTERN",label:"{}",insertText:"{$0}",isSnippet:!0,triggerOnInsert:!0}],Y=Q.$5.map(e=>({type:"FUNCTION",label:e.label,insertText:`${e.insertText??""}($0)`,isSnippet:!0,triggerOnInsert:!0,detail:e.detail,documentation:e.documentation})),q=Q.EH.map(e=>({type:"FUNCTION",label:e.label,insertText:`${e.insertText??""}({$0}[\\$__interval])`,isSnippet:!0,triggerOnInsert:!0,detail:e.detail,documentation:e.documentation})),ge=Q.md.map(e=>({type:"FUNCTION",label:e.label,insertText:`${e.insertText??""}($0)`,isSnippet:!0,triggerOnInsert:!0,detail:e.detail,documentation:e.documentation})),fe=["$__interval","$__range","1m","5m","10m","30m","1h","1d"].map(e=>({type:"DURATION",label:e,insertText:e})),pe=[{type:"FUNCTION",label:"duration_seconds",documentation:"Will convert the label value in seconds from the go duration format (e.g 5m, 24s30ms).",insertText:"duration_seconds()"},{type:"FUNCTION",label:"duration",documentation:"Short version of duration_seconds().",insertText:"duration()"},{type:"FUNCTION",label:"bytes",documentation:"Will convert the label value to raw bytes applying the bytes unit (e.g. 5 MiB, 3k, 1G).",insertText:"bytes()"}],me=[{operator:"|=",documentation:(0,m.kf)(h.B5.LineContains),afterPipe:!0},{operator:"!=",documentation:(0,m.kf)(h.B5.LineContainsNot)},{operator:"|~",documentation:(0,m.kf)(h.B5.LineMatchesRegex),afterPipe:!0},{operator:"!~",documentation:(0,m.kf)(h.B5.LineMatchesRegexNot)}];function he(e){return me.filter(t=>!e||t.afterPipe).map(({operator:t,documentation:n})=>({type:"LINE_FILTER",label:`${t} ""`,insertText:`${e?t.replace("|",""):t} "$0"`,isSnippet:!0,documentation:n}))}async function ye(e){return(await e.getHistory()).map(n=>({type:"HISTORY",label:n,insertText:n}))}async function Le(e,t){return(await t.getLabelNames(e)).map(r=>({type:"LABEL_NAME",label:r,insertText:`${r}=`,triggerOnInsert:!0}))}async function Ee(e,t){const{extractedLabelKeys:n}=await t.getParserAndLabelKeys(e);return n.map(r=>({type:"LABEL_NAME",label:r,insertText:r,triggerOnInsert:!1}))}const ve=["json","logfmt","pattern","regexp","unpack"];async function be(e,t,n,r,s,i){const l=new Set(ve),d=[],y=s.some(u=>u==="level");if(t){const u=i?"":" (detected)";r?(l.delete("unpack"),d.push({type:"PARSER",label:`unpack${u}`,insertText:`${e}unpack`,documentation:(0,m.kf)(h.B5.Unpack)})):(l.delete("json"),d.push({type:"PARSER",label:`json${u}`,insertText:`${e}json`,documentation:y?"Use it to get log-levels in the histogram":(0,m.kf)(h.B5.Json)}))}if(n){l.delete("logfmt");const u=i?"":" (detected)";d.push({type:"PARSER",label:`logfmt${u}`,insertText:`${e}logfmt`,documentation:y?"Get detected levels in the histogram":(0,m.kf)(h.B5.Logfmt)})}return Array.from(l).sort().forEach(u=>{d.push({type:"PARSER",label:u,insertText:`${e}${u}`,documentation:(0,m.kf)(u)})}),d}async function Ne(e,t,n,r){let s=e;t&&(s=(0,S.trimEnd)(e,"| "));const{extractedLabelKeys:i,hasJSON:l,hasLogfmt:d,hasPack:y}=await r.getParserAndLabelKeys(s),f=(0,U.cQ)(s).queryWithParser,u=`${n?"":" "}${t?"":"| "}`,p=await be(u,l,d,y,i,f);return p.push({type:"PIPE_OPERATION",label:"line_format",insertText:`${u}line_format "{{.$0}}"`,isSnippet:!0,documentation:(0,m.kf)(h.B5.LineFormat)}),p.push({type:"PIPE_OPERATION",label:"label_format",insertText:`${u}label_format`,isSnippet:!0,documentation:(0,m.kf)(h.B5.LabelFormat)}),p.push({type:"PIPE_OPERATION",label:"unwrap",insertText:`${u}unwrap`,documentation:(0,m.kf)(h.B5.Unwrap)}),p.push({type:"PIPE_OPERATION",label:"decolorize",insertText:`${u}decolorize`,documentation:(0,m.kf)(h.B5.Decolorize)}),f&&i.forEach(x=>{p.push({type:"LABEL_NAME",label:`${x} (detected)`,insertText:`${u}${x}`,documentation:`"${x}" was suggested based on the content of your log lines for the label filter expression.`})}),f?[...p]:[...t&&n?[]:he(t),...p]}async function Te(e,t,n,r){return(await r.getLabelValues(e,n)).map(i=>({type:"LABEL_VALUE",label:i,insertText:t?(0,j.U9)(i):`"${(0,j.U9)(i)}"`}))}async function Ce(e,t){const{unwrapLabelKeys:n}=await t.getParserAndLabelKeys(e);return[...n.map(s=>({type:"LABEL_NAME",label:s,insertText:s,triggerOnInsert:!1})),...pe]}async function Ae(e,t){switch(e.type){case"EMPTY":case"AT_ROOT":return[...await ye(t),...de,...Y,...ge,...q];case"IN_RANGE":return fe;case"IN_GROUPING":return Ee(e.logQuery,t);case"IN_LABEL_SELECTOR_NO_LABEL_NAME":return Le(e.otherLabels,t);case"IN_LABEL_SELECTOR_WITH_LABEL_NAME":return Te(e.labelName,e.betweenQuotes,e.otherLabels,t);case"AFTER_SELECTOR":return Ne(e.logQuery,e.afterPipe,e.hasSpace,t);case"AFTER_UNWRAP":return Ce(e.logQuery,t);case"IN_AGGREGATION":return[...q,...Y];default:throw new X(e)}}var o=a(25224);function Se(e,t){return e[t]}function g(e,t){let n=e;for(const[r,s]of t)if(n=Se(n,r),n===null||n.type.id!==s)return null;return n}function V(e,t){return t.slice(e.from,e.to)}function Ie(e){const t=e.slice(1,e.length-1);if(e.startsWith('"')&&e.endsWith('"'))return t.replace(/\\"/gm,'"');if(e.startsWith("'")&&e.endsWith("'"))return t.replace(/\\'/gm,"'");if(e.startsWith("`")&&e.endsWith("`"))return t;throw new Error(`Invalid string literal: ${e}`)}function Pe(e,t){return e.every((n,r)=>n===t[r])}const C=0,Re=[{path:[o.Qf],fun:ne},{path:[C,o.gP,o.Qf],fun:ne},{path:[o.WZ],fun:$e},{path:[o.Ld,o.xO],fun:te},{path:[o.Kz],fun:Me},{path:[o.UN],fun:Ue},{path:[C,o.xO],fun:te},{path:[C,o.e6],fun:Fe},{path:[C,o.UN],fun:ke},{path:[C,o.dh,o.cq,o.M0],fun:()=>({type:"IN_AGGREGATION"})},{path:[C,o.We,o.iP],fun:we},{path:[C,o.Xt],fun:ee},{path:[o.Xt],fun:ee}],Oe=new Map([["Eq","="],["Re","=~"],["Neq","!="],["Nre","!~"]]);function xe(e){return Oe.get(e.name)??null}function _e(e,t){if(e.type.id!==o.xO)return null;const n=g(e,[["firstChild",o.xb]]);if(n===null)return null;const r=n.nextSibling;if(r===null)return null;const s=xe(r);if(s===null)return null;const i=g(e,[["lastChild",o.Ld]]);if(i===null)return null;const l=V(n,t),d=Ie(V(i,t));return{name:l,value:d,op:s}}function J(e,t){if(e.type.id!==o.Qf)return[];let n=g(e,[["firstChild",o.gP]]);const r=[];for(;n!==null;){const s=g(n,[["lastChild",o.xO]]);if(s!==null){const i=_e(s,t);i!==null&&r.push(i)}n=g(n,[["firstChild",o.gP]])}return r.reverse(),r}function ee(e,t,n){return{type:"AFTER_UNWRAP",logQuery:(0,U.SP)(t).trim()}}function we(e,t,n){const r=g(e,[["parent",o.We],["parent",o.iP]]);if(r===null)return null;const{parent:s}=r;return s===null?null:s.type.id===o.bL||s.type.id===o.UN?k(s,t,n,!0):null}function Me(e,t,n){const r=g(e,[["parent",o.M0]]);if(r===null)return null;const s=r.getChild("MetricExpr");return s===null||g(s,[["firstChild",o.Tr],["lastChild",o.UN],["firstChild",o.Qf]])===null?null:{type:"IN_GROUPING",logQuery:(0,U.SP)(t).trim()}}function te(e,t,n){const r=!e.type.isError,s=g(e,[["parent",o.xO]]);if(s===null)return null;const i=g(s,[["firstChild",o.xb]]);if(i===null)return null;const l=V(i,t),d=g(s,[["parent",o.gP]]);if(d===null)return null;let y=d,f=null;for(;f===null;){const L=y.parent;if(L===null)return null;switch(L.type.id){case o.gP:y=L;continue;case o.Qf:f=L;continue;default:return null}}const p=J(f,t).filter(L=>L.name!==l);return{type:"IN_LABEL_SELECTOR_WITH_LABEL_NAME",labelName:l,betweenQuotes:r,otherLabels:p}}function $e(e,t,n){const r=g(e,[["lastChild",o.wi],["lastChild",o.bL]]);return r!=null?k(r,t,n,!1):g(e,[["firstChild",C],["firstChild",o.xb]])!=null?{type:"AT_ROOT"}:null}function Fe(e,t,n){return{type:"IN_RANGE"}}function Ue(e,t,n){return k(e,t,n,!1)}function ke(e,t,n){const r=g(e,[["parent",o.UN]]);return r===null?null:k(r,t,n,!1)}function k(e,t,n,r){const s=g(e,[["firstChild",o.Qf]]);return!s||s.to>n?null:{type:"AFTER_SELECTOR",afterPipe:r,hasSpace:t.endsWith(" "),logQuery:(0,U.SP)(t).trim()}}function ne(e,t,n){const r=g(e,[["firstChild",o.gP]]);if(r!==null&&!t.slice(r.from,n).trim().endsWith(","))return null;const s=e.type.id===C?g(e,[["parent",o.gP],["parent",o.Qf]]):e;return s?{type:"IN_LABEL_SELECTOR_NO_LABEL_NAME",otherLabels:J(s,t)}:null}function Be(e,t,n){const r=t.trimEnd().length,s=r<n?r:n,i=e.cursorAt(s);do if(i.from===s&&i.to===s){const{node:l}=i;if(l.type.isError)return l}while(i.next());return null}function Ke(e,t){if(e==="")return{type:"EMPTY"};const n=o.E2.parse(e),r=Be(n,e,t),s=r!=null?r.cursor():n.cursorAt(t),i=s.node,l=[s.type.id];for(;s.parent();)l.push(s.type.id);for(let d of Re)if(Pe(d.path,l))return d.fun(i,e,t);return null}const De=4;function We(){return{showWords:!1}}function Ge(e,t){switch(e){case"DURATION":return t.languages.CompletionItemKind.Unit;case"FUNCTION":return t.languages.CompletionItemKind.Variable;case"HISTORY":return t.languages.CompletionItemKind.Snippet;case"LABEL_NAME":return t.languages.CompletionItemKind.Enum;case"LABEL_VALUE":return t.languages.CompletionItemKind.EnumMember;case"PATTERN":return t.languages.CompletionItemKind.Constructor;case"PARSER":return t.languages.CompletionItemKind.Class;case"LINE_FILTER":return t.languages.CompletionItemKind.TypeParameter;case"PIPE_OPERATION":return t.languages.CompletionItemKind.Interface;default:throw new X(e)}}function ze(e,t){return{triggerCharacters:["{",",","[","(","=","~"," ",'"',"|"],provideCompletionItems:(r,s)=>{const i=r.getWordAtPosition(s),l=i!=null?e.Range.lift({startLineNumber:s.lineNumber,endLineNumber:s.lineNumber,startColumn:i.startColumn,endColumn:i.endColumn}):e.Range.fromPositions(s),d={column:s.column,lineNumber:s.lineNumber},y=r.getOffsetAt(d),f=Ke(r.getValue(),y);return(f!=null?Ae(f,t):Promise.resolve([])).then(p=>{const L=p.length.toString().length;return{suggestions:p.map((v,H)=>({kind:Ge(v.type,e),label:v.label,insertText:v.insertText,insertTextRules:v.isSnippet?De:void 0,detail:v.detail,documentation:v.documentation,sortText:H.toString().padStart(L,"0"),range:l,command:v.triggerOnInsert?{id:"editor.action.triggerSuggest",title:""}:void 0}))}})}}}var Qe=a(73308);class Ve{constructor(t,n={current:[]}){this.languageProvider=t,this.historyRef=n,this.queryToLabelKeysCache=new Map}buildSelector(t){return`{${t.map(r=>`${r.name}${r.op}"${(0,Qe.U9)(r.value)}"`).join(",")}}`}getHistory(){return(0,S.chain)(this.historyRef.current).map(t=>t.query.expr).filter().uniq().value()}async getLabelNames(t=[]){if(t.length===0)return this.languageProvider.getLabelKeys();const n=await this.getSeriesLabels(t),r=Object.keys(n),s=new Set(t.map(i=>i.name));return r.filter(i=>!s.has(i))}async getLabelValues(t,n){return n.length===0?await this.languageProvider.getLabelValues(t):(await this.getSeriesLabels(n))[t]??[]}async getParserAndLabelKeys(t){const r=this.queryToLabelKeysCache.has(t)?this.queryToLabelKeysCache.get(t):null;if(r)return r;{if(this.queryToLabelKeysCache.size>=2){const l=this.queryToLabelKeysCache.keys().next().value;this.queryToLabelKeysCache.delete(l)}const s=await this.languageProvider.getParserAndLabelKeys(t);return this.queryToLabelKeysCache.set(t,s),s}}async getSeriesLabels(t){return await this.languageProvider.getSeriesLabels(this.buildSelector(t)).then(n=>n??{})}}var re=a(53310);const He={codeLens:!1,contextmenu:!1,fixedOverflowWidgets:!0,folding:!1,fontSize:14,lineDecorationsWidth:8,lineNumbers:"off",minimap:{enabled:!1},overviewRulerBorder:!1,overviewRulerLanes:0,padding:{top:4,bottom:5},renderLineHighlight:"none",scrollbar:{vertical:"hidden",verticalScrollbarSize:8,horizontal:"hidden",horizontalScrollbarSize:0},scrollBeyondLastLine:!1,suggest:We(),suggestFontSize:12,wordWrap:"on"},Ze=2,_="logql";let se=!1;function Xe(e){se===!1&&(se=!0,e.languages.register({id:_}),e.languages.setMonarchTokensProvider(_,F.hl),e.languages.setLanguageConfiguration(_,F.x))}const je=(e,t)=>({container:(0,O.css)` border-radius: ${e.shape.borderRadius()}; border: 1px solid ${e.components.input.borderColor}; width: 100%; .monaco-editor .suggest-widget { min-width: 50%; } `,placeholder:(0,O.css)` ::after { content: '${t}'; font-family: ${e.typography.fontFamilyMonospace}; opacity: 0.3; } `}),Ye=({history:e,onBlur:t,onRunQuery:n,initialValue:r,datasource:s,placeholder:i,onQueryType:l})=>{const d=(0,I.Z)(),y=(0,E.useRef)(ce()),f=(0,E.useRef)(null),u=(0,T.Z)(s.languageProvider),p=(0,T.Z)(e),L=(0,T.Z)(n),x=(0,T.Z)(t),v=(0,E.useRef)(null),H=(0,W.l4)(),oe=je(H,i);(0,E.useEffect)(()=>()=>{v.current?.()},[]);const qe=(c,b)=>{const B=[{range:new c.Range(1,1,1,1),options:{className:oe.placeholder,isWholeLine:!0}}];let K=[];const w=()=>{const M=b.getModel();if(!M)return;const Z=M.getValueLength()===0?B:[];K=M.deltaDecorations(K,Z)};w(),b.onDidChangeModelContent(w)},Je=(0,S.debounce)(async c=>{l&&l(c)},1e3);return E.createElement("div",{"aria-label":D.wl.components.QueryField.container,className:oe.container,ref:f},E.createElement(G.o,{overrideServices:y.current,options:He,language:_,value:r,beforeMount:c=>{Xe(c)},onMount:(c,b)=>{const B=c.createContextKey("isEditorFocused"+d,!1);c.onDidBlurEditorWidget(()=>{B.set(!1),x.current(c.getValue())}),c.onDidChangeModelContent(P=>{const A=c.getModel();if(!A)return;const R=A.getValue(),et=((0,re.O)(R,s.interpolateString(R,re.t),A.getLinesContent())||[]).map(({error:ae,...tt})=>({message:`${ae?`Error parsing "${ae}"`:"Parse error"}. The query appears to be incorrect and could fail to be executed.`,severity:b.MarkerSeverity.Error,...tt}));Je(R),b.editor.setModelMarkers(A,"owner",et)});const K=new Ve(u.current,p),w=ze(b,K),M={...w,provideCompletionItems:(P,A,R,le)=>c.getModel()?.id!==P.id?{suggestions:[]}:w.provideCompletionItems(P,A,R,le)},{dispose:Z}=b.languages.registerCompletionItemProvider(_,M);v.current=Z;const ie=()=>{const P=f.current;if(P!==null){const A=c.getContentHeight();P.style.height=`${A+Ze}px`;const R=P.clientWidth;c.layout({width:R,height:A})}};c.onDidContentSizeChange(ie),ie(),c.addCommand(b.KeyMod.Shift|b.KeyCode.Enter,()=>{L.current(c.getValue())},"isEditorFocused"+d),c.onDidFocusEditorText(()=>{B.set(!0),c.getValue().trim()===""&&c.trigger("","editor.action.triggerSuggest",{})}),qe(b,c)}}))}},92024:($,N,a)=>{a.d(N,{Z:()=>E});var O=a(27702),S=function(T){var I=(0,O.useRef)(T);return I.current=T,I};const E=S},93716:$=>{$.exports={id:"loki"}}}]); //# sourceMappingURL=loki-query-field.120c9af28a9460de4072.js.map