我正在为 Windows 上的 Sensu 创建安装脚本,并在启动服务时收到此错误:
{
"timestamp": "2016-04-14T23:05:45.043371+0100",
"level": "warn",
"message": "config file must be valid json",
"file": "C:/opt/sensu/conf.d/client.json",
"error": "unexpected character at line 1, column 1 [parse.c:652]"
}
所有 JSON 配置文件都会出现此错误。
这是我的安装脚本,它成功安装了 msi 并按照我想要的方式写入文件: http://pastebin.com/GgQsNcAX
以下是其输出的配置文件示例:
{
"client": {
"name": "Server1",
"address": "1.1.1.1",
"subscriptions": [ "none" ]
}
}
符号:
我觉得还不错!?
答案1
建议:使用十六进制编辑器查看文件。您可能会在文件头发现一个恶意的 FE FF;这是 Unicode 的字节顺序标记,不会显示在支持 Unicode 的文本编辑器中。顺便说一句,记事本支持 Unicode。(在这种情况下,您还会发现,您的花括号不是 0x7B,而是 0x00 0x7B。)