# TODO: convert this to ansible
- name: Export journal files
  become: true
  shell:
    cmd: |
      u=""
      name=""
      for u in `systemctl list-unit-files | grep devstack | awk '{print $1}'`; do
        name=$(echo $u | sed 's/devstack@/screen-/' | sed 's/\.service//')
        journalctl -o short-precise --unit $u | tee {{ devstack_base_dir }}/logs/$name.txt > /dev/null
      done

      # Export the journal in export format to make it downloadable
      # for later searching. It can then be rewritten to a journal native
      # format locally using systemd-journal-remote. This makes a class of
      # debugging much easier. We don't do the native conversion here as
      # some distros do not package that tooling.
      journalctl -u 'devstack@*' -o export | \
          xz --threads=0 - > {{ devstack_base_dir }}/logs/devstack.journal.xz

      # The journal contains everything running under systemd, we'll
      # build an old school version of the syslog with just the
      # kernel and sudo messages.
      journalctl \
          -t kernel \
          -t sudo \
          --no-pager \
          --since="$(cat {{ devstack_base_dir }}/log-start-timestamp.txt)" \
        | tee {{ devstack_base_dir }}/logs/syslog.txt > /dev/null