首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Kapacitor:在定义刻度文件时获取错误

Kapacitor:在定义刻度文件时获取错误
EN

Stack Overflow用户
提问于 2017-07-12 13:33:23
回答 2查看 637关注 0票数 0

我的第一部剧本是用kapacitor写的。我写了一份刻度文件。下面是剧本。

代码语言:javascript
复制
stream
        .from().measurement('cpu')
                .where("cpu" == 'cpu-total')
        .alert()
                .info(lamda:TRUE)
                .log('/tmp/cpu.log')

我使用以下命令将滴答文件定义为kapacitor

代码语言:javascript
复制
kapacitor define highcpu -type stream -dbrp telegraf.default -tick cpu.tick

跟踪误差

代码语言:javascript
复制
invalid TICKscript: parser: unexpected unknown state, last char: ':' line 5 char 14 in "info(lamda:TRUE)". expected: ")"

我没搞错。我确信配置和telegraf以及进水数据库没有什么问题。

Kapacitor版本1.3.1 OS: Fedora 22

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-08-01 17:33:22

在兰达失踪了“b”。应该是:兰博达。

票数 3
EN

Stack Overflow用户

发布于 2017-07-26 01:18:13

问:,我没有搞错。

A:简短的答案,语法错误。

不幸的是,Kapacitor的TICK脚本的解析器还不够成熟,您不能为此责怪他们。这个项目还处于起步阶段,因此这些错误只会在运行时出现。

问题在于您的lambda表达式.info(lamda:TRUE)。您需要告诉哪个表达式fieldtag来查找它的值。

典型的lambda表达式如下所示

  1. info(lambda: if ("sum" >= 45000, '1', '0'))
  2. info(lambda: "isPeakHour" == 'true')

这里要注意的是,Kapacitor中还没有TrueFalse10通常用于表示布尔值。

您还可能希望在滴答脚本中注意到single quotedouble quotes

  • 单引号是字符串文本。
  • 双引号是对字段或标记的引用。双引号仅用于lambda表达式。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45059191

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档