Make Heka collect Keystone logs
Partially implements: blueprint heka Change-Id: I940143876981a04464af67aff65c09a06926701d
This commit is contained in:
parent
b16724e09a
commit
684873b89b
@ -33,3 +33,4 @@
|
|||||||
- "rabbitmq"
|
- "rabbitmq"
|
||||||
- "openstack"
|
- "openstack"
|
||||||
- "mariadb"
|
- "mariadb"
|
||||||
|
- "keystone"
|
||||||
|
13
ansible/roles/common/templates/heka-keystone.toml.j2
Normal file
13
ansible/roles/common/templates/heka-keystone.toml.j2
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
{% set apache_dir = 'apache2' if kolla_base_distro in ['ubuntu', 'debian'] else 'httpd' %}
|
||||||
|
[keystone_apache_log_decoder]
|
||||||
|
type = "SandboxDecoder"
|
||||||
|
filename = "lua_decoders/os_keystone_apache_log.lua"
|
||||||
|
[keystone_apache_log_decoder.config]
|
||||||
|
apache_log_pattern = '%h %l %u %t \"%r\" %>s %b %D \"%{Referer}i\" \"%{User-Agent}i\"'
|
||||||
|
|
||||||
|
[keystone_apache_logstreamer_input]
|
||||||
|
type = "LogstreamerInput"
|
||||||
|
decoder = "keystone_apache_log_decoder"
|
||||||
|
log_directory = "/var/log/kolla"
|
||||||
|
file_match = '{{ apache_dir }}/keystone-apache-(?P<Service>.+)-access\.log'
|
||||||
|
differentiator = ["keystone-apache-", "Service"]
|
@ -6,5 +6,5 @@ filename = "lua_decoders/os_openstack_log.lua"
|
|||||||
type = "LogstreamerInput"
|
type = "LogstreamerInput"
|
||||||
decoder = "openstack_log_decoder"
|
decoder = "openstack_log_decoder"
|
||||||
log_directory = "/var/log/kolla"
|
log_directory = "/var/log/kolla"
|
||||||
file_match = '(?P<Service>nova|glance)/(?P<Program>.*)\.log'
|
file_match = '(?P<Service>nova|glance|keystone)/(?P<Program>.*)\.log'
|
||||||
differentiator = ["Service", "_", "Program"]
|
differentiator = ["Service", "_", "Program"]
|
||||||
|
@ -30,6 +30,12 @@
|
|||||||
"dest": "/etc/heka/heka-mariadb.toml",
|
"dest": "/etc/heka/heka-mariadb.toml",
|
||||||
"owner": "heka",
|
"owner": "heka",
|
||||||
"perm": "0600"
|
"perm": "0600"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"source": "{{ container_config_directory }}/heka-keystone.toml",
|
||||||
|
"dest": "/etc/heka/heka-keystone.toml",
|
||||||
|
"owner": "heka",
|
||||||
|
"perm": "0600"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
@ -34,13 +34,6 @@ $template NeutronMetadataAgentFile,"/var/log/neutron/neutron-metadata-agent.log"
|
|||||||
$template NeutronL3AgentFile,"/var/log/neutron/neutron-l3-agent.log"
|
$template NeutronL3AgentFile,"/var/log/neutron/neutron-l3-agent.log"
|
||||||
:syslogtag,contains,"neutron-l3-agent" ?NeutronL3AgentFile
|
:syslogtag,contains,"neutron-l3-agent" ?NeutronL3AgentFile
|
||||||
|
|
||||||
$template KeystoneErrorFile,"/var/log/keystone/keystone-error.log"
|
|
||||||
if ($syslogtag contains "keystone-error") \
|
|
||||||
or ($syslogtag contains "keystone" and $syslogseverity <=4) then ?KeystoneErrorFile
|
|
||||||
|
|
||||||
$template KeystoneAccessFile,"/var/log/keystone/keystone-access.log"
|
|
||||||
:syslogtag,contains,"keystone-access" ?KeystoneAccessFile
|
|
||||||
|
|
||||||
$template CinderApiFile,"/var/log/cinder/cinder-api.log"
|
$template CinderApiFile,"/var/log/cinder/cinder-api.log"
|
||||||
:syslogtag,contains,"cinder-api" ?CinderApiFile
|
:syslogtag,contains,"cinder-api" ?CinderApiFile
|
||||||
|
|
||||||
|
@ -12,6 +12,8 @@
|
|||||||
BOOTSTRAP:
|
BOOTSTRAP:
|
||||||
name: "bootstrap_keystone"
|
name: "bootstrap_keystone"
|
||||||
restart_policy: "never"
|
restart_policy: "never"
|
||||||
volumes: "{{ node_config_directory }}/keystone/:{{ container_config_directory }}/:ro"
|
volumes:
|
||||||
|
- "{{ node_config_directory }}/keystone/:{{ container_config_directory }}/:ro"
|
||||||
|
- "kolla_logs:/var/log/kolla/"
|
||||||
run_once: True
|
run_once: True
|
||||||
delegate_to: "{{ groups['keystone'][0] }}"
|
delegate_to: "{{ groups['keystone'][0] }}"
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
name: "keystone"
|
name: "keystone"
|
||||||
volumes:
|
volumes:
|
||||||
- "{{ node_config_directory }}/keystone/:{{ container_config_directory }}/:ro"
|
- "{{ node_config_directory }}/keystone/:{{ container_config_directory }}/:ro"
|
||||||
- "rsyslog_socket:/var/lib/kolla/rsyslog/"
|
- "kolla_logs:/var/log/kolla/"
|
||||||
|
|
||||||
- name: Wait for keystone startup
|
- name: Wait for keystone startup
|
||||||
wait_for: host={{ keystone_admin_address }} port={{ keystone_admin_port }}
|
wait_for: host={{ keystone_admin_address }} port={{ keystone_admin_port }}
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
[DEFAULT]
|
[DEFAULT]
|
||||||
debug = {{ keystone_logging_debug }}
|
debug = {{ keystone_logging_debug }}
|
||||||
syslog_log_facility=LOG_LOCAL0
|
|
||||||
use_syslog = True
|
# NOTE(elemoine) log_dir alone does not work for Keystone
|
||||||
|
log_file = /var/log/kolla/keystone/keystone.log
|
||||||
|
|
||||||
admin_token = {{ keystone_admin_token }}
|
admin_token = {{ keystone_admin_token }}
|
||||||
|
|
||||||
|
@ -12,8 +12,9 @@ Listen {{ hostvars[inventory_hostname]['ansible_' + api_interface]['ipv4']['addr
|
|||||||
<IfVersion >= 2.4>
|
<IfVersion >= 2.4>
|
||||||
ErrorLogFormat "%{cu}t %M"
|
ErrorLogFormat "%{cu}t %M"
|
||||||
</IfVersion>
|
</IfVersion>
|
||||||
ErrorLog "|/usr/bin/logger -t keystone-error"
|
ErrorLog "/var/log/kolla/{{ apache_dir }}/keystone-apache-public-error.log"
|
||||||
CustomLog "|/usr/bin/logger -t keystone-access" combined
|
LogFormat "%h %l %u %t \"%r\" %>s %b %D \"%{Referer}i\" \"%{User-Agent}i\"" logformat
|
||||||
|
CustomLog "/var/log/kolla/{{ apache_dir }}/keystone-apache-public-access.log" logformat
|
||||||
</VirtualHost>
|
</VirtualHost>
|
||||||
|
|
||||||
<VirtualHost *:{{ keystone_admin_port }}>
|
<VirtualHost *:{{ keystone_admin_port }}>
|
||||||
@ -25,6 +26,7 @@ Listen {{ hostvars[inventory_hostname]['ansible_' + api_interface]['ipv4']['addr
|
|||||||
<IfVersion >= 2.4>
|
<IfVersion >= 2.4>
|
||||||
ErrorLogFormat "%{cu}t %M"
|
ErrorLogFormat "%{cu}t %M"
|
||||||
</IfVersion>
|
</IfVersion>
|
||||||
ErrorLog "|/usr/bin/logger -t keystone-error"
|
ErrorLog "/var/log/kolla/{{ apache_dir }}/keystone-apache-admin-error.log"
|
||||||
CustomLog "|/usr/bin/logger -t keystone-access" combined
|
LogFormat "%h %l %u %t \"%r\" %>s %b %D \"%{Referer}i\" \"%{User-Agent}i\"" logformat
|
||||||
|
CustomLog "/var/log/kolla/{{ apache_dir }}/keystone-apache-admin-access.log" logformat
|
||||||
</VirtualHost>
|
</VirtualHost>
|
||||||
|
@ -66,7 +66,8 @@ RUN ln -s keystone-source/* keystone \
|
|||||||
# TODO(SamYaple): Replace this with `keystone-manage bootstrap`
|
# TODO(SamYaple): Replace this with `keystone-manage bootstrap`
|
||||||
RUN sed -i 's|token_auth json_body|token_auth admin_token_auth json_body|g' /etc/keystone/keystone-paste.ini
|
RUN sed -i 's|token_auth json_body|token_auth admin_token_auth json_body|g' /etc/keystone/keystone-paste.ini
|
||||||
|
|
||||||
RUN chown -R keystone: /var/www/cgi-bin/keystone \
|
RUN usermod -a -G kolla keystone \
|
||||||
|
&& chown -R keystone: /var/www/cgi-bin/keystone \
|
||||||
&& chmod 755 /var/www/cgi-bin/keystone/*
|
&& chmod 755 /var/www/cgi-bin/keystone/*
|
||||||
|
|
||||||
COPY extend_start.sh /usr/local/bin/kolla_extend_start
|
COPY extend_start.sh /usr/local/bin/kolla_extend_start
|
||||||
|
@ -4,6 +4,9 @@ if [[ "${KOLLA_BASE_DISTRO}" == "ubuntu" || \
|
|||||||
"${KOLLA_BASE_DISTRO}" == "debian" ]]; then
|
"${KOLLA_BASE_DISTRO}" == "debian" ]]; then
|
||||||
# Loading Apache2 ENV variables
|
# Loading Apache2 ENV variables
|
||||||
source /etc/apache2/envvars
|
source /etc/apache2/envvars
|
||||||
|
APACHE_DIR="apache2"
|
||||||
|
else
|
||||||
|
APACHE_DIR="httpd"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# NOTE(pbourke): httpd will not clean up after itself in some cases which
|
# NOTE(pbourke): httpd will not clean up after itself in some cases which
|
||||||
@ -13,6 +16,27 @@ if [[ "${KOLLA_BASE_DISTRO}" =~ fedora|centos|oraclelinux|rhel ]]; then
|
|||||||
rm -rf /var/run/httpd/* /run/httpd/* /tmp/httpd*
|
rm -rf /var/run/httpd/* /run/httpd/* /tmp/httpd*
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Create log dir for Keystone logs
|
||||||
|
KEYSTONE_LOG_DIR="/var/log/kolla/keystone"
|
||||||
|
if [[ ! -d "${KEYSTONE_LOG_DIR}" ]]; then
|
||||||
|
mkdir -p ${KEYSTONE_LOG_DIR}
|
||||||
|
fi
|
||||||
|
if [[ $(stat -c %U:%G ${KEYSTONE_LOG_DIR}) != "keystone:kolla" ]]; then
|
||||||
|
chown keystone:kolla ${KEYSTONE_LOG_DIR}
|
||||||
|
fi
|
||||||
|
if [[ $(stat -c %a ${KEYSTONE_LOG_DIR}) != "755" ]]; then
|
||||||
|
chmod 755 ${KEYSTONE_LOG_DIR}
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Create log dir for Apache logs
|
||||||
|
APACHE_LOG_DIR="/var/log/kolla/${APACHE_DIR}"
|
||||||
|
if [[ ! -d "${APACHE_LOG_DIR}" ]]; then
|
||||||
|
mkdir -p ${APACHE_LOG_DIR}
|
||||||
|
fi
|
||||||
|
if [[ $(stat -c %a ${APACHE_LOG_DIR}) != "755" ]]; then
|
||||||
|
chmod 755 ${APACHE_LOG_DIR}
|
||||||
|
fi
|
||||||
|
|
||||||
# Bootstrap and exit if KOLLA_BOOTSTRAP variable is set. This catches all cases
|
# Bootstrap and exit if KOLLA_BOOTSTRAP variable is set. This catches all cases
|
||||||
# of the KOLLA_BOOTSTRAP variable being set, including empty.
|
# of the KOLLA_BOOTSTRAP variable being set, including empty.
|
||||||
if [[ "${!KOLLA_BOOTSTRAP[@]}" ]]; then
|
if [[ "${!KOLLA_BOOTSTRAP[@]}" ]]; then
|
||||||
|
Loading…
Reference in New Issue
Block a user