Previously ironic inspector logs were not being collected, as they are
stored in /var/log/kolla/ironic-inspector/ rather than
/var/log/kolla/ironic/. This change modifies the fluentd input
configuration to use the correct directory.
Also adds the ironic-inspector service to the fluentd programname
rewrite rule.
Change-Id: Ie5d67f395e4c32fef992e674f2d53dbd6a17f238
Although there is an option "enable_fluentd", but there are still
some tasks that make fluentd not configurable.
Change-Id: Ic0a9deb36fce154022925d26411e01a8ffe18b50
Signed-off-by: Xinliang Liu <xinliang.liu@linaro.org>
The owner and permission check for config directories
should be executed only when the service is enabled.
Change-Id: I6dd2a8fcce83cba8a9a79b1c302d6b1ef4305144
Closes-Bug: #1734789
- Sets the hostname on rabbitmq and mariadb log messages
according to the local host.
- Sets the hostname on syslog log messages by extracting it
from the syslog message. In many cases this will be the
same as the local host, but it may also be a remote host.
Closes-Bug: #1726596
Change-Id: If7c53916d5a355b3aac33d6a62d89d02474e8b53
The current syntax of Ubuntu fluentd rewrite rules are not supported
anymore, reference to this commit[1].
According to the build of this patch[2], The Centos has no such isuue.
Only Ubuntu needs to be upgrade to use the <rule> section.
* Centos use 01-rewrite-0.12.conf.j2
* Ubuntu use 01-rewrite-0.14.conf.j2
backport: pike
[1] 248ed8e97d
[2] https://review.openstack.org/#/c/517907
Depends-on: I47985113fe732569d640a262ca832c6edc8c2bb6
Change-Id: I0b131c2f65652cf3c61b33d8162097b047603923
Closes-Bug: #1730664
Become option is missed in patch #398682, this patchset fix this issue.
Change-Id: I228c31486210ef1de76601d3ea4ee955a628ca73
Partial-Implements: blueprint ansible-specific-task-become
By default the syslog input plugin won't extract the
log level from a syslog message. By setting the priority
key, the log level is extracted.
Partial-Bug: #1725240
Change-Id: I9ad5f5e1c875ef62b39fbbba7b271d98cee68dd6
Use the same field name for extracting all log messages to make it
simpler to parse the output from fluentd.
Closes-Bug: #1723459
Change-Id: I55b86061c8f70b25cf88e394fdfc78fa3c85c79f
We want to treat the nova-compute-ironic log in the same way as
the other nova logs so that it doesn't go missing from fluentd
output.
Change-Id: I145389cd0cceeed506e2a9c084d290341047c9aa
Closes-Bug: #1721814
Record transformer is used to add a 'Severity' field in event.
This Field is unused and not generated for other programs, hence
It can be removed safely.
Change-Id: I62e461e5006516dcbd6c64e1770d6936f9a9d55c
This change adds enable_fluentd option and enables some other log shippers
to be integrated. When enable_fluentd is "no", syslog server is also disabled.
Then, this change also adds syslog parameters to use a syslog server
prepared by users.
Change-Id: I7c83ef7fe30a6b9ab7385bcee953ad07e96b0a83
Implements: blueprint fluentd-enable-option
When deploying on arm64, common reports error:
stat /usr/bin/ansible: no such file or directory
The reason is ansible is installed to /usr/local/bin/ansible
rather that /usr/bin/ansible
Fix the issue to call ansible directly, to consider both cases.
Change-Id: Ie90bd9c4d7d3a4b7b0aef884351cb58ed13ebd11
Signed-off-by: Kevin Zhao <kevin.zhao@linaro.org>
Signed-off-by: Zhangfei Gao <zhangfei.gao@linaro.org>
The following warning logs appears in fluentd container:
[warn]: pattern not match: "170908 21:34:12 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql/"
This patch fix it
Change-Id: I9820b8c5fd3456ba9c032fdf326c65632d147e50
Closes-Bug: #1708571
Fluentd config actually used two keywords to named log level:
"log_level" and "severity_label".
This doesn't allow to search and sort ALL logs in Kibana using a unique
field (ex: log_level).
This fix standardize log level keyword naming.
Closes-Bug: #1713410
Change-Id: Ibb2eaf3b6aa21ce6f7945e768e6362c0d40f0507
Add config_owner_user and config_owner_group to group_vars/all,
which is user and group of Kolla configuration files in /etc/kolla.
Add become to post-deploy playbook.
Add become to only neccesary tasks in roles:
- certificate
- common
- destroy
- haproxy
- mariadb
- memcached
- rabbitmq
Change-Id: I2aba745a6e3928c52642f64551470fd08cbfd058
Partial-Implements: blueprint ansible-specific-task-become
progname is actually only fullfilled for Openstack logs and infra logs.
They are missing for program logging in RSYSLOG: HAPROXY and SWIFT.
When using Kibana, "progname" field appears empty, hence it's difficult
to know where logs come from.
Change-Id: Iae98af083cfb79d2a64fa0b70c86b0a01f7a336f
Closes-Bug: #1716051
Disable the additional watch timer (enable_watch_timer).
Setting this parameter to false will significantly reduce CPU and I/O
consumption when tailing a large number of files on systems with inotify
support.
Change-Id: Ib432e6cdece01dbb94b3d2f3d7fbdd04b81d25fa
In some scenarios it may be useful to configure custom fluentd outputs
to forward logs to a logging service other than elasticsearch.
This change supports configuration of fluentd outputs by placing
output configuration files in /etc/kolla/config/fluentd/output/*.conf.
Change-Id: I3c0b271d88dbb307ba3a23546e29c72e8baeca55
Implements: blueprint fluentd-custom-outputs
Barbican-api log is a uswsgi process and fluentd expects as
openstack service process.
This change moves log type to uswgi group.
Change-Id: Ifaf5645d0d19e133e41de0c55a55321fccfc391f
Closes-Bug: #1716513
Libvirt logs are not managed by Fluentd. It can be very helpful to
debug 'booting' issue on KVM.
Change-Id: Ie04322adec0482f4d586d2f8564a1a77f2da2605
Closes-Bug: #1713429
'progname' is actually only fullfilled for Openstack services logs.
They are missing for MariaDB and RabbitMQ logs.
When using Kibana, "progname" field appears empty, hence it's difficult
to known where logs comes from.
Change-Id: Ifcbfd981a34a8d64ea69d37934c7f0fae10a90b5
Closes-Bug: #1713412
Actual Fluentd config doesn't manage multiline log pattern like:
2017-08-16 21:41:03.097 7 WARNING oslo_config.cfg [-] Option "firewall_driver" from group "DEFAULT" is deprecated for removal (
nova-network is deprecated, as are any related configuration options.
). Its value may be silently ignored in the future.
This log will generate 1 Fluentd event for each line (in previous
example 3 events).
This is really a wrong behaviour and made Kibana interface not friendly.
This patch uses a multiline parser.
Change-Id: Iee337645d1dc42876ec79be08ee3715f11a53d87
Closes-Bug: #1711399
They dropped the cloudkitty-api command line[0], so we should add wsgi
support for cloudkitty-api.
[0]https://review.openstack.org/#/c/366043/
Change-Id: Ie34d4f2d5c303bbd7ac09a8ab9e8d9bdc763c57b
Closes-Bug: #1713879
Actually a unique 'tail' source is used for all logs files in
kolla/*/*.log.
So log files from services like: chrony, elasticsearch, etcd, grafana,
influxdb, kibana, mongodb... are actually processed by our Fluentd
config, but should not cause all following config will failed to parse
them. It just uses CPU for nothing cause they will
never match the following filters:
* record_transformer => add Hostname, Logger, programname field
* rewrite_tag_filter => rewrite 'programname' TAG if needed
Hence these filters should only be applied to Openstack services logs to
avoid CPU usage.
Furthermore WGI and Apache logs files must be treated differently.
Change-Id: I425979160291e1123e3775e39243bca06ed22c2f
Closes-Bug: #1711390
Tacker has included a new conductor service
to manage mistral workflows for VIM monitoring.
Without conductor, Tacker cannot create VIMs.
This change reworks tacker to include tacker-conductor
service.
Depends-On: I52778e86e4f2c297ead8d4b09983e5e38ca88c70
Closes-Bug: #1710874
Change-Id: I6901e919887551bedc9dba8983ac904e8c48c9ce
Fluentd repo/packages are changed in depends changes below.
Rpm distros need changes in their config for properly
start and deploy fluentd containers.
Change-Id: I474c4d20c407717c6da973383bbbd5539be480f1
Depends-On: I4802618373cfa53d67d1dfe65be7abe1950b3d04