События системного журнала#
Системный лог выводится в консоль контейнера приложения. Для просмотра системного журнала через веб-интерфейс Kubernetes необходимо выполнить следующие действия:
Шаг |
Действие |
|---|---|
Вход в веб-консоль Kubernetes |
Перейдите по ссылке (URL) веб-консоли нужного кластера Kubernetes, в окне ввода учетных данных введите токен пользователя или kubeconfig |
Переход в нужный Namespace (проект) |
Выберите нужный Namespace (проект) в выпадающем списке в верхней части веб-интерфейса Kubernetes |
Переход в Workload/Pods |
1. В меню выберите пункт Workload/Pods |
Просмотр событий системного журнала |
В появившемся окне увидите системный журнал приложения |
Выход из веб-консоли Kubernetes |
1. Нажмите по имени пользователя, чтобы раскрыть меню учетной записи |
В разделе Событий видно как успешные события, связанные с установкой и обработкой kind:AnsibleRun/kind:ProviderConfig, так и различные ошибки.
События типа DEBUG и VERBOSE можно увидеть, изменив уровень логирования SYAP. Информацию об изменении уровня логирования можно увидеть в документе «Руководство по системному администрированию» раздела «Изменение уровня логирования в системном логе».
Уровень логирования INFO включён по умолчанию и подразумевает вывод только лога Ansible.
Уровень логирования VERBOSE определяется как DEBUG на уровне оператора SYAP и как -vv на уровне Ansible.
Уровень логирования DEBUG определяется как DEBUG на уровне оператора SYAP и как -vvv на уровне Ansible.
Включать события уровня VERBOSE,DEBUG не рекомендуется в промышленных инсталляциях SYAP.
Информацию об изменении уровня логирования можно увидеть в документе «Руководство по системному администрированию» раздела «Изменение уровня логирования в системном логе».
Пример событий:
Пример лога с уровнем VERBOSE:
VLEVEL
-vv
ansible-playbook [core 2.14.5]
config file = None
configured module search path = ['/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /venv/lib/python3.11/site-packages/ansible
ansible collection location = /.ansible/collections:/usr/share/ansible/collections
executable location = /venv/bin/ansible-playbook
python version = 3.11.2 (main, Sep 14 2024, 03:00:30) [GCC 12.2.0] (/venv/bin/python3)
jinja version = 3.1.2
libyaml = True
No config file found; using defaults
[WARNING]: Unable to parse /ansibleDir/07a564cc-
fdbd-42c2-a3c4-8d9f9f314c54/hosts as an inventory source
[WARNING]: No inventory was parsed, only implicit localhost is available
[WARNING]: provided hosts list is empty, only localhost is available. Note that
the implicit localhost does not match 'all'
Skipping callback 'awx_display', as we already have a stdout callback.
Skipping callback 'default', as we already have a stdout callback.
Skipping callback 'minimal', as we already have a stdout callback.
Skipping callback 'oneline', as we already have a stdout callback.
PLAYBOOK: egress_create_playbook.yaml ******************************************
2 plays in egress_create_playbook.yaml
PLAY [localhost] ***************************************************************
TASK [Gathering Facts] *********************************************************
task path: /.ansible/collections/ansible_collections/synapse/utils/playbooks/create_istio_configs.yaml:1
ok: [localhost]
TASK [create owner reference] **************************************************
task path: /.ansible/collections/ansible_collections/synapse/utils/playbooks/create_istio_configs.yaml:3
ok: [localhost] => {"ansible_facts": {"ownerRef": {"ansibleRun": "example1", "ansibleRunKind": "AnsibleRun", "ansibleRunUid": "07a564cc-fdbd-42c2-a3c4-8d9f9f314c54", "apiVersion": "ansible.crossplane.io/v1alpha1"}}, "changed": false}
TASK [push to k8s] *************************************************************
task path: /.ansible/collections/ansible_collections/synapse/utils/playbooks/create_istio_configs.yaml:10
skipping: [localhost] => {"changed": false, "skipped_reason": "No items in the list"}
PLAY [all] *********************************************************************
skipping: no hosts matched
PLAY RECAP *********************************************************************
localhost : ok=2 changed=0 unreachable=0 failed=0 skipped=1 rescued=0 ignored=0
VLEVEL
-vv
ansible-playbook [core 2.14.5]
config file = None
configured module search path = ['/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /venv/lib/python3.11/site-packages/ansible
ansible collection location = /.ansible/collections:/usr/share/ansible/collections
executable location = /venv/bin/ansible-playbook
python version = 3.11.2 (main, Sep 14 2024, 03:00:30) [GCC 12.2.0] (/venv/bin/python3)
jinja version = 3.1.2
libyaml = True
No config file found; using defaults
[WARNING]: Unable to parse /ansibleDir/07a564cc-
fdbd-42c2-a3c4-8d9f9f314c54/hosts as an inventory source
[WARNING]: No inventory was parsed, only implicit localhost is available
[WARNING]: provided hosts list is empty, only localhost is available. Note that
the implicit localhost does not match 'all'
Skipping callback 'awx_display', as we already have a stdout callback.
Skipping callback 'default', as we already have a stdout callback.
Skipping callback 'minimal', as we already have a stdout callback.
Skipping callback 'oneline', as we already have a stdout callback.
PLAYBOOK: egress_create_playbook_1.yaml ****************************************
1 plays in egress_create_playbook_1.yaml
PLAY [localhost] ***************************************************************
TASK [Gathering Facts] *********************************************************
task path: /.ansible/collections/ansible_collections/synapse/utils/playbooks/create_istio_configs_download_archive.yaml:1
skipping: [localhost] => {"changed": false, "skip_reason": "Conditional result was False"}
TASK [create owner reference] **************************************************
task path: /.ansible/collections/ansible_collections/synapse/utils/playbooks/create_istio_configs_download_archive.yaml:4
skipping: [localhost] => {"changed": false, "skip_reason": "Conditional result was False"}
TASK [push to k8s] *************************************************************
task path: /.ansible/collections/ansible_collections/synapse/utils/playbooks/create_istio_configs_download_archive.yaml:11
skipping: [localhost] => {"changed": false, "skipped_reason": "No items in the list"}
TASK [register username] *******************************************************
task path: /.ansible/collections/ansible_collections/synapse/utils/playbooks/create_istio_configs_download_archive.yaml:26
skipping: [localhost] => {"changed": false, "skip_reason": "Conditional result was False"}
TASK [register pass] ***********************************************************
task path: /.ansible/collections/ansible_collections/synapse/utils/playbooks/create_istio_configs_download_archive.yaml:29
skipping: [localhost] => {"changed": false, "skip_reason": "Conditional result was False"}
TASK [download distrib] ********************************************************
task path: /.ansible/collections/ansible_collections/synapse/utils/playbooks/create_istio_configs_download_archive.yaml:32
skipping: [localhost] => {"changed": false, "skipped_reason": "No items in the list"}
TASK [debug] *******************************************************************
task path: /.ansible/collections/ansible_collections/synapse/utils/playbooks/create_istio_configs_download_archive.yaml:47
skipping: [localhost] => {}
TASK [push to k8s] *************************************************************
task path: /.ansible/collections/ansible_collections/synapse/utils/playbooks/create_istio_configs_download_archive.yaml:49
skipping: [localhost] => {"changed": false, "skipped_reason": "No items in the list"}
TASK [push to k8s] *************************************************************
task path: /.ansible/collections/ansible_collections/synapse/utils/playbooks/create_istio_configs_download_archive.yaml:64
skipping: [localhost] => {"changed": false, "skipped_reason": "No items in the list"}
PLAY RECAP *********************************************************************
localhost : ok=0 changed=0 unreachable=0 failed=0 skipped=9 rescued=0 ignored=0
VLEVEL
-vv
ansible-playbook [core 2.14.5]
config file = None
configured module search path = ['/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /venv/lib/python3.11/site-packages/ansible
ansible collection location = /.ansible/collections:/usr/share/ansible/collections
executable location = /venv/bin/ansible-playbook
python version = 3.11.2 (main, Sep 14 2024, 03:00:30) [GCC 12.2.0] (/venv/bin/python3)
jinja version = 3.1.2
libyaml = True
No config file found; using defaults
[WARNING]: Unable to parse /ansibleDir/07a564cc-
fdbd-42c2-a3c4-8d9f9f314c54/hosts as an inventory source
[WARNING]: No inventory was parsed, only implicit localhost is available
[WARNING]: provided hosts list is empty, only localhost is available. Note that
the implicit localhost does not match 'all'
Skipping callback 'awx_display', as we already have a stdout callback.
Skipping callback 'default', as we already have a stdout callback.
Skipping callback 'minimal', as we already have a stdout callback.
Skipping callback 'oneline', as we already have a stdout callback.
PLAYBOOK: playbook.yml *********************************************************
1 plays in playbook.yml
PLAY [localhost] ***************************************************************
TASK [Gathering Facts] *********************************************************
task path: /ansibleDir/07a564cc-fdbd-42c2-a3c4-8d9f9f314c54/playbook.yml:3
ok: [localhost]
TASK [debug] *******************************************************************
task path: /ansibleDir/07a564cc-fdbd-42c2-a3c4-8d9f9f314c54/playbook.yml:5
ok: [localhost] => {
"msg": "here"
}
PLAY RECAP *********************************************************************
localhost : ok=2 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
VLEVEL
-vv
ansible-playbook [core 2.14.5]
config file = None
configured module search path = ['/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /venv/lib/python3.11/site-packages/ansible
ansible collection location = /.ansible/collections:/usr/share/ansible/collections
executable location = /venv/bin/ansible-playbook
python version = 3.11.2 (main, Sep 14 2024, 03:00:30) [GCC 12.2.0] (/venv/bin/python3)
jinja version = 3.1.2
libyaml = True
No config file found; using defaults
[WARNING]: Unable to parse /ansibleDir/07a564cc-
fdbd-42c2-a3c4-8d9f9f314c54/hosts as an inventory source
[WARNING]: No inventory was parsed, only implicit localhost is available
[WARNING]: provided hosts list is empty, only localhost is available. Note that
the implicit localhost does not match 'all'
Skipping callback 'awx_display', as we already have a stdout callback.
Skipping callback 'default', as we already have a stdout callback.
Skipping callback 'minimal', as we already have a stdout callback.
Skipping callback 'oneline', as we already have a stdout callback.
PLAYBOOK: rollback_egress_create_playbook.yaml *********************************
1 plays in rollback_egress_create_playbook.yaml
PLAY [localhost] ***************************************************************
TASK [Gathering Facts] *********************************************************
task path: /.ansible/collections/ansible_collections/synapse/utils/playbooks/delete_istio_configs.yaml:1
ok: [localhost]
TASK [create owner reference] **************************************************
task path: /.ansible/collections/ansible_collections/synapse/utils/playbooks/delete_istio_configs.yaml:3
ok: [localhost] => {"ansible_facts": {"ownerRef": {"ansibleRun": "example1", "ansibleRunKind": "AnsibleRun", "ansibleRunUid": "07a564cc-fdbd-42c2-a3c4-8d9f9f314c54", "apiVersion": "ansible.crossplane.io/v1alpha1"}}, "changed": false}
TASK [push to k8s to delete] ***************************************************
task path: /.ansible/collections/ansible_collections/synapse/utils/playbooks/delete_istio_configs.yaml:10
skipping: [localhost] => {"changed": false, "skipped_reason": "No items in the list"}
TASK [push to k8s to update] ***************************************************
task path: /.ansible/collections/ansible_collections/synapse/utils/playbooks/delete_istio_configs.yaml:26
skipping: [localhost] => {"changed": false, "skipped_reason": "No items in the list"}
PLAY RECAP *********************************************************************
localhost : ok=2 changed=0 unreachable=0 failed=0 skipped=2 rescued=0 ignored=0
{"level":"debug","ts":"2025-02-06T09:34:55Z","logger":"provider-ansible","msg":"External resource is up to date","controller":"managed/ansiblerun.ansible.crossplane.io","request":{"name":"example1","namespace":"cloud-esb-syap"},"uid":"07a564cc-fdbd-42c2-a3c4-8d9f9f314c54","version":"705505547","external-name":"example1","namespace":"cloud-esb-syap","requeue-after":"2025-02-06T09:35:55Z"}
Пример лога с уровнем INFO:
PLAY [localhost] ***************************************************************
TASK [Gathering Facts] *********************************************************
ok: [localhost]
TASK [test] ********************************************************************
ok: [localhost] => {
"msg": "this is a test"
}
PLAY RECAP *********************************************************************
localhost : ok=2 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
Пример лога с уровнем DEBUG:
{"level":"debug","ts":"2024-12-18T07:57:05Z","logger":"provider-ansible","msg":"Reconciling","controller":"managed/ansiblerun.ansible.crossplane.io","request":{"name":"example","namespace":"cloud-esb-syap"}}
{"level":"debug","ts":"2024-12-18T07:57:05Z","logger":"provider-ansible","msg":"secret being downloaded for the first time OR triggerUponChange is false","Connect.credentialProcess":{"filename":"ansible-vault","source":"Secret","secretRef":{"name":"ansible-vault","namespace":"cloud-esb-syap","key":"ansible-vault"}},"secret":{"name":"ansible-vault","namespace":"cloud-esb-syap","key":"ansible-vault"}}
[0;34mansible-playbook [core 2.14.5][0m
[0;34m config file = None[0m
[0;34m configured module search path = ['/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules'][0m
[0;34m ansible python module location = /opt/app-root/lib64/python3.9/site-packages/ansible[0m
[0;34m ansible collection location = /.ansible/collections:/usr/share/ansible/collections[0m
[0;34m executable location = /opt/app-root/bin/ansible-playbook[0m
[0;34m python version = 3.9.16 (main, Apr 4 2023, 12:57:32) [GCC 8.5.0 20210514 (Platform V SberLinux 8.5.0-17)] (/opt/app-root/bin/python)[0m
[0;34m jinja version = 3.1.2[0m
[0;34m libyaml = True[0m
[0;34mNo config file found; using defaults[0m
[1;35m[WARNING]: Unable to parse[0m
[1;35m/ansibleDir/44a502b8-ac7a-4715-9514-c4569fb02757/hosts as an inventory source[0m
[1;35m[WARNING]: No inventory was parsed, only implicit localhost is available[0m
[1;35m[WARNING]: provided hosts list is empty, only localhost is available. Note that[0m
[1;35mthe implicit localhost does not match 'all'[0m
[0;34mSkipping callback 'awx_display', as we already have a stdout callback.[0m
[0;34mSkipping callback 'default', as we already have a stdout callback.[0m
[0;34mSkipping callback 'minimal', as we already have a stdout callback.[0m
[0;34mSkipping callback 'oneline', as we already have a stdout callback.[0m
PLAYBOOK: egress_create_playbook.yaml ******************************************
[0;34m2 plays in egress_create_playbook.yaml[0m
PLAY [localhost] ***************************************************************
TASK [Gathering Facts] *********************************************************
[1;30mtask path: /.ansible/collections/ansible_collections/synapse/igeg/playbooks/create_istio_configs.yaml:1[0m
[0;36mskipping: [localhost] => {"changed": false, "skip_reason": "Conditional result was False"}[0m
TASK [create owner reference] **************************************************
[1;30mtask path: /.ansible/collections/ansible_collections/synapse/igeg/playbooks/create_istio_configs.yaml:3[0m
[0;36mskipping: [localhost] => {"changed": false, "skip_reason": "Conditional result was False"}[0m
TASK [push to k8s] *************************************************************
[1;30mtask path: /.ansible/collections/ansible_collections/synapse/igeg/playbooks/create_istio_configs.yaml:10[0m
[0;36mskipping: [localhost] => {"changed": false, "skip_reason": "Conditional result was False"}[0m
PLAY [all] *********************************************************************
[0;36mskipping: no hosts matched[0m
PLAY RECAP *********************************************************************
[0;32mlocalhost[0m : ok=0 changed=0 unreachable=0 failed=0 [0;36mskipped=3 [0m rescued=0 ignored=0
[0;34mansible-playbook [core 2.14.5][0m
[0;34m config file = None[0m
[0;34m configured module search path = ['/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules'][0m
[0;34m ansible python module location = /opt/app-root/lib64/python3.9/site-packages/ansible[0m
[0;34m ansible collection location = /.ansible/collections:/usr/share/ansible/collections[0m
[0;34m executable location = /opt/app-root/bin/ansible-playbook[0m
[0;34m python version = 3.9.16 (main, Apr 4 2023, 12:57:32) [GCC 8.5.0 20210514 (Platform V SberLinux 8.5.0-17)] (/opt/app-root/bin/python)[0m
[0;34m jinja version = 3.1.2[0m
[0;34m libyaml = True[0m
[0;34mNo config file found; using defaults[0m
[1;35m[WARNING]: Unable to parse[0m
[1;35m/ansibleDir/44a502b8-ac7a-4715-9514-c4569fb02757/hosts as an inventory source[0m
[1;35m[WARNING]: No inventory was parsed, only implicit localhost is available[0m
[1;35m[WARNING]: provided hosts list is empty, only localhost is available. Note that[0m
[1;35mthe implicit localhost does not match 'all'[0m
[0;34mSkipping callback 'awx_display', as we already have a stdout callback.[0m
[0;34mSkipping callback 'default', as we already have a stdout callback.[0m
[0;34mSkipping callback 'minimal', as we already have a stdout callback.[0m
[0;34mSkipping callback 'oneline', as we already have a stdout callback.[0m
PLAYBOOK: playbook.yml *********************************************************
[0;34m1 plays in playbook.yml[0m
PLAY [localhost] ***************************************************************
TASK [Gathering Facts] *********************************************************
[1;30mtask path: /ansibleDir/44a502b8-ac7a-4715-9514-c4569fb02757/playbook.yml:2[0m
[0;32mok: [localhost][0m
TASK [test] ********************************************************************
[1;30mtask path: /ansibleDir/44a502b8-ac7a-4715-9514-c4569fb02757/playbook.yml:4[0m
[0;32mok: [localhost] => {[0m
[0;32m "msg": "this is a test"[0m
[0;32m}[0m
PLAY RECAP *********************************************************************
[0;32mlocalhost[0m : [0;32mok=2 [0m changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
{"level":"debug","ts":"2024-12-18T07:57:12Z","logger":"provider-ansible","msg":"External resource is up to date","controller":"managed/ansiblerun.ansible.crossplane.io","request":{"name":"example","namespace":"cloud-esb-syap"},"uid":"44a502b8-ac7a-4715-9514-c4569fb02757","version":"659093884","external-name":"example","namespace":"cloud-esb-syap","requeue-after":"2024-12-18T07:58:12Z"}
{"level":"debug","ts":"2024-12-18T07:57:12Z","logger":"provider-ansible.events","msg":"External resource is up to date","type":"Normal","object":{"kind":"AnsibleRun","namespace":"cloud-esb-syap","name":"example","uid":"44a502b8-ac7a-4715-9514-c4569fb02757","apiVersion":"ansible.crossplane.io/v1alpha1","resourceVersion":"659093892"},"reason":"UpdatedExternalResource"}