From 0711c75dabab15dbf383ce45a10c8bbe431cf3e2 Mon Sep 17 00:00:00 2001 From: Varun Arbatti Date: Fri, 11 Oct 2019 05:04:22 +0000 Subject: [PATCH] Merged in DCD-697-additional-cw-logs (pull request #31) DCD-697: Adds ansible and cfn logs to cloudwatch * DCD-697: Adds ansible and cfn logs to cloudwatch * DCD-697: Adds provisioning logs to a separarte log group. Adds a test to ensure provisioining logs exist * DCD-697: Refers to files, not directory, for provisioning log groups * DCD-697: Adds a comma between log groups * DCD-697: Removes redundant comma between the 2 log groups Approved-by: Steve Smith Approved-by: Adam Brokes --- group_vars/aws_node_local.yml | 4 ++++ roles/aws_common/defaults/main.yml | 1 + roles/aws_common/molecule/default/tests/test_default.py | 1 + .../aws_common/templates/amazon-cloudwatch-agent.json.j2 | 9 ++++++++- 4 files changed, 14 insertions(+), 1 deletion(-) diff --git a/group_vars/aws_node_local.yml b/group_vars/aws_node_local.yml index 69285f9..aff781d 100644 --- a/group_vars/aws_node_local.yml +++ b/group_vars/aws_node_local.yml @@ -45,6 +45,10 @@ atl_product_log_locations: - "{{ atl_product_home }}/log" crowd: [] +atl_provisioner_log_locations: + - "/var/log/ansible-bootstrap.log" + - "/var/log/cfn-*.log" + # The following are imports from the environment. These are generally # set in /etc/atl by the CloudFormation template and sourced before # Ansible is run. See bin/ansible-with-atl-env for a convenient wrapper diff --git a/roles/aws_common/defaults/main.yml b/roles/aws_common/defaults/main.yml index 3cb3b65..d43b4c4 100644 --- a/roles/aws_common/defaults/main.yml +++ b/roles/aws_common/defaults/main.yml @@ -11,3 +11,4 @@ atl_aws_enable_cloudwatch_logs: false atl_aws_agent_restart: true atl_aws_log_group: "{{ atl_product_edition }}-{{ atl_aws_stack_name }}" +atl_aws_provisioning_log_group: "{{ atl_aws_log_group }}-provisioning" diff --git a/roles/aws_common/molecule/default/tests/test_default.py b/roles/aws_common/molecule/default/tests/test_default.py index 53261bb..f605623 100644 --- a/roles/aws_common/molecule/default/tests/test_default.py +++ b/roles/aws_common/molecule/default/tests/test_default.py @@ -20,6 +20,7 @@ def test_package_exes(host, exe): def test_service_file(host): f = host.file('/opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.json') assert f.contains('"log_group_name": "jira-software-MY_STACK"') + assert f.contains('"log_group_name": "jira-software-MY_STACK-provisioning"') assert f.user == 'root' assert f.group == 'root' assert f.mode == 0o0644 diff --git a/roles/aws_common/templates/amazon-cloudwatch-agent.json.j2 b/roles/aws_common/templates/amazon-cloudwatch-agent.json.j2 index 17b31ca..81caac2 100644 --- a/roles/aws_common/templates/amazon-cloudwatch-agent.json.j2 +++ b/roles/aws_common/templates/amazon-cloudwatch-agent.json.j2 @@ -19,7 +19,14 @@ "log_stream_name": "{instance_id}" } {% endfor %} - + {% for path in atl_provisioner_log_locations %} + {{ comma() }} + { + "file_path": "{{ path }}", + "log_group_name": "{{ atl_aws_provisioning_log_group }}", + "log_stream_name": "{instance_id}" + } + {% endfor %} ] } }