@aliyun-sls/lsp-core
v0.1.65
Published
## 基本信息 包含 sls 查询语句、sql、spl以及promql的语法服务包
Downloads
174
Readme
SLS lsp-core
基本信息
包含 sls 查询语句、sql、spl以及promql的语法服务包
使用
- 一些接口
import { splitQuery, findMetrics, findAggregations, operateLabelForPromql, getGroupBy, setGroupBy } from @aliyun-sls/lsp-core
// 将 input 语句按第一个管道符拆分,获取两个子句
const { indexstr, statement } = splitQuery(input)
// 解析 promql 语句,返回语句包含的指标集
const metricRes = findMetrics(input)
metricRes.forEach((m) => {
console.log('metricName: ', m.name)
console.log('metricLabelList: ', m.labels)
})
// 解析 promql 语句,返回在 listRange 范围内的所有聚合算子
const listRange = ['avg', 'max']
const aggRes = findAggregations(input, listRange)
// 操作 promql 语句, 返回新的 promql 语句
// modifiers, see type MetricModifierList
const newStr = operateLabelForPromql(input, modifiers)
// 获取 group by 节点, 返回节点(字符串)集
const res = getGroupBy(input)
// 设置 group by 节点,返回操作完后的语句
const res = setGroupBy(input, groupByList)
- 核心语言服务
not recommended to use manually