Submit
Path:
~
/
/
usr
/
share
/
grafana
/
public
/
app
/
plugins
/
datasource
/
loki
/
migrations
/
File Content:
variableQueryMigrations.ts
import { LokiVariableQuery, LokiVariableQueryType } from '../types'; export const labelNamesRegex = /^label_names\(\)\s*$/; export const labelValuesRegex = /^label_values\((?:(.+),\s*)?([a-zA-Z_$][a-zA-Z0-9_]*)\)\s*$/; export function migrateVariableQuery(rawQuery: string | LokiVariableQuery): LokiVariableQuery { // If not string, we assume LokiVariableQuery if (typeof rawQuery !== 'string') { return rawQuery; } const queryBase = { refId: 'LokiVariableQueryEditor-VariableQuery', type: LokiVariableQueryType.LabelNames, }; const labelNames = rawQuery.match(labelNamesRegex); if (labelNames) { return { ...queryBase, type: LokiVariableQueryType.LabelNames, }; } const labelValues = rawQuery.match(labelValuesRegex); if (labelValues) { return { ...queryBase, type: LokiVariableQueryType.LabelValues, label: labelValues[2] ? labelValues[2] : labelValues[1], stream: labelValues[2] ? labelValues[1] : undefined, }; } return queryBase; }
Edit
Rename
Chmod
Delete
FILE
FOLDER
INFO
Name
Size
Permission
Action
variableQueryMigrations.test.ts
2917 bytes
0644
variableQueryMigrations.ts
1031 bytes
0644
N4ST4R_ID | Naxtarrr