summaryrefslogtreecommitdiff
path: root/playbooks
diff options
context:
space:
mode:
authorIlya Shakhat <shakhat@gmail.com>2018-09-14 12:00:08 +0200
committerIlya Shakhat <shakhat@gmail.com>2018-09-17 18:06:22 +0200
commitb4e8a72d29cab340fa68318045cf335267ff09ff (patch)
treee3e7de9c099ae4be6275454dd27e5b7c5280acaf /playbooks
parent175cfeef5c98e67299842d5ff3e36ed5e1978c4b (diff)
downloadosprofiler-b4e8a72d29cab340fa68318045cf335267ff09ff.tar.gz
Collect traces from Tempest job
All traces are stored under osprofiler-traces subfolder. Change-Id: I01a1f93c3a69a3e4bd2ed7777b0cdff58016d728
Diffstat (limited to 'playbooks')
-rw-r--r--playbooks/osprofiler-post.yaml57
1 files changed, 57 insertions, 0 deletions
diff --git a/playbooks/osprofiler-post.yaml b/playbooks/osprofiler-post.yaml
new file mode 100644
index 0000000..1455aad
--- /dev/null
+++ b/playbooks/osprofiler-post.yaml
@@ -0,0 +1,57 @@
+- hosts: controller
+ vars:
+ osprofiler_traces_dir: '/opt/stack/osprofiler-traces'
+ tasks:
+ - name: Create OSProfiler home directory
+ become: True
+ become_user: stack
+ file:
+ path: '{{ osprofiler_traces_dir }}'
+ state: directory
+ owner: stack
+ group: stack
+
+ - name: Get list of traces
+ command: osprofiler trace list --connection-string redis://localhost:6379
+ become: True
+ become_user: stack
+ register: osprofiler_trace_list
+
+ - debug:
+ msg: "{{ osprofiler_trace_list }}"
+
+ - name: Save traces to file
+ shell: |
+ osprofiler trace list --connection-string redis://localhost:6379 > {{ osprofiler_traces_dir }}/trace_list.txt
+ cat {{ osprofiler_traces_dir }}/trace_list.txt | tail -n +4 | head -n -1 | awk '{print $2}' > {{ osprofiler_traces_dir }}/trace_ids.txt
+
+ while read p; do
+ osprofiler trace show --connection-string redis://localhost:6379 --html $p > {{ osprofiler_traces_dir }}/trace-$p.html
+ done < {{ osprofiler_traces_dir }}/trace_ids.txt
+ become: True
+ become_user: stack
+
+ - name: Gzip results files
+ become: yes
+ become_user: stack
+ shell: "gzip * -9 -q | true"
+ args:
+ chdir: '{{ osprofiler_traces_dir }}'
+
+ - name: List all files
+ shell:
+ cmd: "ls -al {{ osprofiler_traces_dir }}"
+ become: True
+ become_user: stack
+
+ - name: Copy osprofiler output
+ become: yes
+ synchronize:
+ src: "{{ osprofiler_traces_dir }}"
+ dest: "{{ zuul.executor.log_root }}"
+ mode: pull
+ copy_links: true
+ verify_host: true
+ rsync_opts:
+ - "--include=/**"
+ - "--include=*/"