- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我目前正在使用 Ansible 自动设置collectd。除了配置文件传输之外,一切都按预期进行。
每次我使用 Ansible 将collectd 配置文件发送到我的collectd 服务器时,都会出现以下错误。
Parse error in file `/etc/collectd.conf', line 23 near `': syntax error, unexpected $end
此问题已在“Config file finding unexpected $end, not sure why”中处理。
根据我在那里找到的答案,我应该在文件末尾放置一个新行。每次我尝试都会发生同样的错误...
但是,当我在collectd服务器上手动重新保存文件时,它确实可以工作。有谁知道这是什么原因以及如何解决?配置文件需要由Ansible发送。
Linux CentOS 7
Collectd版本5.8.1
MacOS Mojave 10.14.3
安塞 bool 版本 2.7.9
Ansible 代码:tasks/configuration.yml
---
- name: Install main configuration file
template:
src: collectd.conf.j2
dest: "{{ collectd_config_file }}"
owner: root
group: root
mode: 0644
force: yes
notify: restart collectd
tags: collectd
- name: Install interface configuration file
template:
src: interface.conf.j2
dest: "{{ collectd_include_dir }}/interface.conf"
owner: root
group: root
mode: 0644
force: yes
notify: restart collectd
tags: collectd
- name: Install snmp configuration file
template:
src: snmp.conf.j2
dest: "{{ collectd_include_dir }}/snmp.conf"
owner: root
group: root
mode: 0644
force: yes
notify: restart collectd
tags: collectd
- name: Install write_graphite configuration file
template:
src: write_graphite.conf.j2
dest: "{{ collectd_include_dir }}/write_graphite.conf"
owner: root
group: root
mode: 0644
force: yes
notify: restart collectd
tags: collectd
Ansible 代码:templates/collectd.conf.j2
Hostname "localhost"
FQDNLookup true
#BaseDir "/var/lib/collectd"
#PIDFile "/var/run/collectd.pid"
#PluginDir "/usr/lib64/collectd"
#TypesDB "/usr/share/collectd/types.db"
#AutoLoadPlugin false
#CollectInternalStats false
#Interval 10
#MaxReadInterval 86400
#Timeout 2
#ReadThreads 5
#WriteThreads 5
#WriteQueueLimitHigh 1000000
#WriteQueueLimitLow 800000
LoadPlugin syslog
<Plugin syslog>
LogLevel info
</Plugin>
LoadPlugin interface
LoadPlugin snmp
LoadPlugin write_graphite
Include "/etc/collectd.d/*.conf"
错误输出:
localhost.localdomain collectd[19021]: Parse error in file `/etc/collectd.conf', line 23 near `': syntax error, unexpected $end
localhost.localdomain collectd[19021]: yyparse returned error #1
localhost.localdomain collectd[19021]: configfile: Cannot read file `/etc/collectd.conf'.
localhost.localdomain collectd[19021]: Unable to read config file /etc/collectd.conf.
localhost.localdomain collectd[19021]: Error: Reading the config file failed!
localhost.localdomain collectd[19021]: Read the logs for details.
localhost.localdomain systemd[1]: collectd.service: main process exited, code=exited, status=1/FAILURE
localhost.localdomain systemd[1]: Failed to start Collectd statistics daemon.
问题不在于/etc/collectd.d/*.conf 文件的语法。我只需打开文件,无需任何更改即可再次保存它们,它们就可以工作了。但是,如果您确实想查看这些插件配置文件的代码,您可以找到它们 here .
提前致谢!
最佳答案
显然是之前发布的答案 question确实是我问题的答案。需要在每个配置文件的末尾添加一个空行。
关于linux - Collectd 无法读取 Ansible 发送的配置文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55335175/
Collectd 默认将其插件存储在哪里?我缺少一个 perl 插件,我想确保它不是因为安装被冲洗掉了。 最佳答案 插件位置使用指令 PluginDir 配置。在 collectd.conf . 可以
我正在运行collectd 5.4.2.788.gf87af5a,我也尝试过使用5.4.1。 我在日志中看到以下内容: May 8 00:50:01 ip_172_1_1_1 collectd[19
以下内容聚合了一台特定主机中的所有 CPU,创建了 cpu-all-sum/cpu-idle、cpu-all-sum/cpu-nice 等. Plugin "cpu" Type "c
我已经使用sudo apt-get installcollectd安装了collectd。有没有命令可以获取当前安装的 Collectd 版本? 我尝试了collectd -v。显然它不起作用。我没有
我已经安装了collectd在我的 ubuntu 机器上。我想启用redis plugin ,但默认情况下它不附带。有人知道如何以及在哪里可以下载该插件吗? 最佳答案 在编译collectd之前,需要
我已经使用sudo apt-get installcollectd安装了collectd。有没有命令可以获取当前安装的 Collectd 版本? 我尝试了collectd -v。显然它不起作用。我没有
我有 5 个节点的 hadoop 集群(Linux 操作系统)。我必须监控所有节点的统计信息,如 CPU 使用率、内存、流量等。为此,我知道 Graphite /收集是最好的选择。据我所知,这个工具只
我有 Graphite +collectd设置来收集系统相关的指标。这个问题与collectd的内存插件有关。 我的基础设施具有使用collectd收集内存使用数据的格式: ..memory.memo
我有 4 台机器。我必须监控他们不同的统计数据。我决定使用 Graphite/collectd 来实现此目的。所有机器上的操作系统都是centos 7。我已经成功配置了 Graphite 并在两台机器
问题是我在系统日志文件中没有看到预期的输出。我写了一个Python插件,位于“/home/my/collectd/pyPlugin.py”。 “/etc/collectd/collectd.conf”
我在使用 Collectd 时遇到了一个很奇怪的问题。我对 Collectd 并不陌生,在基于 CentOS 的盒子上使用了很长时间,但现在我们有了 Ubuntu TLS 12.04 盒子,我遇到了一
我有一个安装了 collectd 的 aws 实例。我可以从实例 CURL 到我的 splunk 服务器并放入消息,这样就不会出现任何网络问题。我使用与我的 collectd 配置中相同的端点和 to
我的collectd配置如下: LoadPlugin nginx ... URL "http://localhost:8080/nginx_status?auto" Nginx 配置看起来
我目前正在使用 Ansible 自动设置collectd。除了配置文件传输之外,一切都按预期进行。 每次我使用 Ansible 将collectd 配置文件发送到我的collectd 服务器时,都会出
不幸的是,没有关于如何使用该插件的文档/手册页。链接如下:https://collectd.org/wiki/index.php/Plugin:Users 我看到 Sebastian Harl 是该插
我是 collectd 和 Riemann 的新手。我本质上是在尝试将 collectd 日志定向到 riemann 服务器实例。我知道我需要安装 write_riemann 插件。我尝试编译在线可用
我在 collectd.conf 中取消注释 LoadPlugin dbi,但现在重新启动 collectd 给我: Stopping collectd:
我的 collectd 正在通过端口 25826 将数据发送到 logstash,但我在运行 logstash 时看到这个错误 UDP listener died {:exception=>#, :b
我正在使用 Collectd 收集系统指标。我正在小范围内收集测量值以获得准确的值。但是我想使用 Statsd 在本地聚合这些值。 Statsd 应该聚合这些值并以更长的时间间隔将它们发送到 libr
想问一下Collectd的插件Perl和Python及其注册功能。 我尝试在 Perl(以及 Python)中编写插件代码,设置读写函数,然后将它们注册到 Collectd(plugin_regist
我是一名优秀的程序员,十分优秀!