无法将vespa指标推送到cloudwatch
基本上,我需要监控vespa指标,为此我正在尝试实现将指标推送到cloudwatch的方法 这就是我所指的文件 我已在附加的IAM角色中添加了凭据文件和putMetricData权限。我在代码中使用的service.xml文件如下所示:无法将vespa指标推送到cloudwatch,vespa,Vespa,基本上,我需要监控vespa指标,为此我正在尝试实现将指标推送到cloudwatch的方法 这就是我所指的文件 我已在附加的IAM角色中添加了凭据文件和putMetricData权限。我在代码中使用的service.xml文件如下所示: <admin version="2.0"> <adminserver hostalias="admin0"/> <configservers> &
<admin version="2.0">
<adminserver hostalias="admin0"/>
<configservers>
<configserver hostalias="admin0"/>
</configservers>
<monitoring>
</monitoring>
<metrics>
<consumer id="my-cloudwatch">
<metric-set id="vespa" />
<cloudwatch region="ap-south-1" namespace="vespa">
<shared-credentials file="~/.aws/credentials" profile="default" />
</cloudwatch>
</consumer>
</metrics>
</admin>
但在部署时出现此错误:
Request failed. HTTP status code: 400
Invalid application package: default.default: Error loading model: XML error in services.xml: element "interval" not allowed here; expected the element end-tag [9:16], input:
如何解决此问题。或者至少调试我面临的问题。我建议使用凭据文件的绝对路径,因为运行时,
~
可能无法解析到您想要的目录
还有几件事:
- 我建议使用
指标集,因为default
包含大量指标,这将提高您的CloudWatch成本。如果需要其他指标,可以在vespa
中添加消费者
标记指标
元素在这种上下文中没有任何用处,因此您应该将其删除monitoring
如果您仍然没有看到任何指标,请检查vespa日志文件(使用)和Telegraf日志文件中的警告或错误:
/opt/vespa/logs/Telegraf/Telegraf.log
。(Vespa在内部使用向CloudWatch发送度量值。)感谢您的建议,我已经应用了您所描述的更改,但仍然没有看到任何度量值推送到CloudWatch。因此,我检查了/opt/vespa/logs/vespa/vespa.log中的日志,发现了以下错误消息:com.yahoo.container.di.componentgraph.core.ComponentNode$ComponentConstructorException:error construction'ai.vespa.metricsproxy.telegraf.telegraf':null\n由:java.io.UncheckedIOException:java.FileNotFoundException:/etc/telegraf/telegraf.conf使用(无此类文件或目录)另外,当我尝试使用默认度量集时,在部署代码时遇到以下错误:无效的应用程序包:默认值。默认值:错误加载模型:无此类度量集:default@YashKasat,我怀疑您需要更新版本的Vespa。您当前使用的是哪个版本?我使用的Vespa版本是:7.145.41
Request failed. HTTP status code: 400
Invalid application package: default.default: Error loading model: XML error in services.xml: element "interval" not allowed here; expected the element end-tag [9:16], input: