@aliyun-sls/lsp-core
TypeScript icon, indicating that this package has built-in type declarations

0.1.65 • Public • Published

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

Readme

Keywords

none

Package Sidebar

Install

npm i @aliyun-sls/lsp-core

Weekly Downloads

5

Version

0.1.65

License

Apache-2.0

Unpacked Size

3.14 MB

Total Files

6

Last publish

Collaborators

  • nosmilen
  • ruiqi.hy
  • yuecjnadt