我已按照此页面上的说明在Python中编写了Datadog Agent检查:https ://docs.datadoghq.com/developers/agent_checks/ 。
代理检查应该读取指定网络文件夹中的所有文件,然后将某些指标发送到Datadog。
要读取的文件夹在Yaml文件中指定如下:
init_config:
taskResultLocation: "Z:/TaskResults"
这是用于读取文件夹的代码,它是Python 2.7,因为Datadog要求
task_result_location = self.init_config.get('taskResultLocation')
# Loop through all the XML files in the specified folder
for file in os.listdir(task_result_location):
如果仅在IDE中运行Python脚本,则一切正常。当将检查添加到与IDE处于同一台计算机上的Datadog Agent Manager并运行检查时,Datadog Agent Manager日志中将引发错误,提示:
2018-08-14 14:33:26东部时间| 错误| (runner.go:277在工作)| 运行检查TaskTaskErrorErrorReader时出错:[{“ message”:“ [错误3]系统找不到指定的路径:'Z:/ TaskResults / 。 '”,“ traceback”:“跟踪(最近一次调用):\ n文件\“ C:\ Program Files \ Datadog \ Datadog Agent \ embedded \ lib \ site-packages \ datadog_checks \ checks \ base.py \”,行294,运行\ n self.check(copy.deepcopy(self.instances [ 0])))\ n文件\“ c:\ programdata \ datadog \ checks.d \ TaskResultErrorReader.py \”,第42行,位于os.listdir(task_result_location)中的文件的check \ n中:\ nWindowsError:[错误3]系统找不到指定的路径:'Z:/ TaskResults / 。 '\ n“}]
我尝试用单引号和双引号,正斜杠和反斜杠以及双斜杠以多种方式指定文件夹位置,但是会引发相同的错误。
有谁知道这是Yaml语法错误还是Datadog或Python出现某种问题?
白衣非少年
慕森王
相关分类