From 493668f74655e720d1b09ef38148db41b06ef818 Mon Sep 17 00:00:00 2001 From: Bruno Charest Date: Wed, 17 Dec 2025 23:59:17 -0500 Subject: [PATCH] Add comprehensive SSH terminal drawer feature with embedded and popout modes, integrate playbook lint results API with local cache fallback, and enhance host management UI with terminal access buttons --- .../0013_add_terminal_sessions_table.py | 50 ++ .../playbooks/_builtin_collect_cpu_info.yml | 50 ++ app/crud/terminal_session.py | 172 ++++ app/index.html | 199 +++++ app/main.js | 408 +++++++++- app/models/__init__.py | 6 + app/models/database.py | 1 + app/models/playbook_lint.py | 81 ++ app/models/terminal_session.py | 53 ++ app/routes/__init__.py | 2 + app/routes/lint.py | 85 +- app/routes/playbooks.py | 10 +- app/routes/terminal.py | 756 ++++++++++++++++++ app/schemas/terminal.py | 52 ++ app/services/terminal_service.py | 368 +++++++++ data/homelab.db | Bin 196608 -> 233472 bytes data/homelab.db-shm | Bin 32768 -> 32768 bytes data/homelab.db-wal | Bin 49472 -> 16512 bytes docker/Dockerfile | 1 + documentation/SSH_TERMINAL.md | 276 +++++++ logs/tasks_logs/.metadata_cache.json | 2 +- ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ...as.home_Vérification_de_santé_completed.md | 58 ++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ ..._[Planifié]_Health-check-5min_completed.md | 224 ++++++ run_dev.sh | 3 + tests/backend/test_terminal.py | 181 +++++ 110 files changed, 22054 insertions(+), 24 deletions(-) create mode 100644 alembic/versions/0013_add_terminal_sessions_table.py create mode 100644 ansible/playbooks/_builtin_collect_cpu_info.yml create mode 100644 app/crud/terminal_session.py create mode 100644 app/models/playbook_lint.py create mode 100644 app/models/terminal_session.py create mode 100644 app/routes/terminal.py create mode 100644 app/schemas/terminal.py create mode 100644 app/services/terminal_service.py create mode 100644 documentation/SSH_TERMINAL.md create mode 100644 logs/tasks_logs/2025/12/17/task_000022_9ceb5e_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_000521_20083c_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_001023_391704_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_001521_1392f0_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_002102_4b36a5_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_010021_09d437_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_010522_e1cdb6_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_011024_1b98c9_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_011522_c1638f_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_012022_ac50e3_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_012528_6ad0b1_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_013021_7b5a06_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_013522_94bf2d_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_014022_e81b20_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_014524_0f3032_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_015021_290c80_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_015521_e7dbcf_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_020525_89d26a_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_021523_ca6966_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_022022_d37d12_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_022523_1a3b33_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_023021_e6dfaa_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_023521_66bbc0_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_024022_715018_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_024522_372bd9_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_025022_513dc5_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_025522_3c9963_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_030022_cc12a8_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_030521_2308d5_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_031022_52d48f_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_031521_990e47_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_032021_44b936_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_032521_77e533_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_033021_10398b_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_033522_8767f6_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_034021_d99c3d_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_034522_be7c73_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_035022_ae93c0_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_035522_72eba0_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_040021_114af8_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_040522_10d661_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_041021_fe4a80_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_041521_f4e403_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_042022_0d14dc_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_042522_b6adc9_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_043022_d2e88b_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_043521_d13c4d_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_044022_9d7724_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_044521_166a36_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_045022_82e9dd_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_045523_1bec31_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_204524_8f158d_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_205021_7cfd75_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_205521_704592_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_210022_7c40f3_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_210520_02511d_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_211022_6d6312_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_211102_6edeae_hp.nas.home_Vérification_de_santé_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_211531_e20f01_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_212030_c321de_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_212532_76f2ae_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_213022_047da4_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_213523_8d07bf_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_214021_a142ad_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_214521_7904e0_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_215021_c0f04a_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_215520_c2bc14_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_220024_257f37_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_220520_5b0b1a_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_221023_e38fad_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_221521_4b8729_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_222020_a91dea_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_224526_4f39d3_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_225022_12f870_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_225531_673385_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_230023_5dbda7_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_230521_f49a00_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_231023_8278a8_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_231521_68231f_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_232023_5d2f51_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_232522_5dad01_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_233023_eb43cc_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_233521_2f3b52_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_234022_5fd810_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_234520_12eedd_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_235022_e825b9_all_[Planifié]_Health-check-5min_completed.md create mode 100644 logs/tasks_logs/2025/12/17/task_235522_1d2888_all_[Planifié]_Health-check-5min_completed.md create mode 100644 tests/backend/test_terminal.py diff --git a/alembic/versions/0013_add_terminal_sessions_table.py b/alembic/versions/0013_add_terminal_sessions_table.py new file mode 100644 index 0000000..0551ad5 --- /dev/null +++ b/alembic/versions/0013_add_terminal_sessions_table.py @@ -0,0 +1,50 @@ +"""Add terminal_sessions table for SSH web terminal feature. + +Revision ID: 0013 +Revises: 0012_add_docker_unique_constraints +Create Date: 2024-12-17 + +""" +from typing import Sequence, Union + +from alembic import op +import sqlalchemy as sa + + +# revision identifiers, used by Alembic. +revision: str = '0013' +down_revision: Union[str, None] = '0012' +branch_labels: Union[str, Sequence[str], None] = None +depends_on: Union[str, Sequence[str], None] = None + + +def upgrade() -> None: + op.create_table( + 'terminal_sessions', + sa.Column('id', sa.String(64), primary_key=True), + sa.Column('host_id', sa.String(), nullable=False, index=True), + sa.Column('host_name', sa.String(), nullable=False), + sa.Column('host_ip', sa.String(), nullable=False), + sa.Column('user_id', sa.String(), nullable=True), + sa.Column('username', sa.String(), nullable=True), + sa.Column('token_hash', sa.String(128), nullable=False), + sa.Column('ttyd_port', sa.Integer(), nullable=False), + sa.Column('ttyd_pid', sa.Integer(), nullable=True), + sa.Column('mode', sa.String(20), nullable=False, server_default='embedded'), + sa.Column('status', sa.String(20), nullable=False, server_default='active'), + sa.Column('created_at', sa.DateTime(timezone=True), nullable=False, server_default=sa.func.now()), + sa.Column('expires_at', sa.DateTime(timezone=True), nullable=False), + sa.Column('closed_at', sa.DateTime(timezone=True), nullable=True), + ) + + # Index for cleanup queries + op.create_index('ix_terminal_sessions_status', 'terminal_sessions', ['status']) + op.create_index('ix_terminal_sessions_expires_at', 'terminal_sessions', ['expires_at']) + op.create_index('ix_terminal_sessions_user_id', 'terminal_sessions', ['user_id']) + + +def downgrade() -> None: + op.drop_index('ix_terminal_sessions_user_id', table_name='terminal_sessions') + op.drop_index('ix_terminal_sessions_expires_at', table_name='terminal_sessions') + op.drop_index('ix_terminal_sessions_status', table_name='terminal_sessions') + op.drop_table('terminal_sessions') diff --git a/ansible/playbooks/_builtin_collect_cpu_info.yml b/ansible/playbooks/_builtin_collect_cpu_info.yml new file mode 100644 index 0000000..a2e4ed1 --- /dev/null +++ b/ansible/playbooks/_builtin_collect_cpu_info.yml @@ -0,0 +1,50 @@ +--- +# Builtin Playbook: Collecte des informations CPU +- name: Collect CPU Information + hosts: all + become: false + gather_facts: true + vars: + _builtin_playbook: true + _builtin_id: collect_cpu_info + _collect_metrics: true + tasks: + - name: Get CPU load averages + ansible.builtin.shell: cat /proc/loadavg | awk '{print $1, $2, $3}' + register: cpu_load + changed_when: false + + - name: Get CPU temperature + ansible.builtin.shell: | + if [ -f /sys/class/thermal/thermal_zone0/temp ]; then + cat /sys/class/thermal/thermal_zone0/temp | awk '{printf "%.1f", $1/1000}' + else + echo "null" + fi + register: cpu_temp + changed_when: false + ignore_errors: true + + - name: Get CPU usage percentage + ansible.builtin.shell: | + top -bn1 | grep "Cpu(s)" | awk '{print 100 - $8}' 2>/dev/null || echo "0" + register: cpu_usage + changed_when: false + ignore_errors: true + + - name: Build metrics output + ansible.builtin.set_fact: + metrics_output: + host: "{{ inventory_hostname }}" + data: + cpu_count: "{{ ansible_processor_vcpus | default(ansible_processor_count, true) | default(1) }}" + cpu_model: "{{ ansible_processor[2] | default('Unknown', true) if (ansible_processor is defined and ansible_processor | length > 2) else 'Unknown' }}" + cpu_load_1m: "{{ cpu_load.stdout.split()[0] | default('0', true) | float }}" + cpu_load_5m: "{{ cpu_load.stdout.split()[1] | default('0', true) | float }}" + cpu_load_15m: "{{ cpu_load.stdout.split()[2] | default('0', true) | float }}" + cpu_usage_percent: "{{ cpu_usage.stdout | default('0', true) | float }}" + cpu_temperature: "{{ cpu_temp.stdout if (cpu_temp.stdout is defined and cpu_temp.stdout != 'null') else '' }}" + + - name: Output metrics + ansible.builtin.debug: + msg: "METRICS_JSON_START:{{ metrics_output | to_json }}:METRICS_JSON_END" diff --git a/app/crud/terminal_session.py b/app/crud/terminal_session.py new file mode 100644 index 0000000..6ebac7e --- /dev/null +++ b/app/crud/terminal_session.py @@ -0,0 +1,172 @@ +""" +CRUD operations for terminal sessions. +""" +from datetime import datetime, timezone +from typing import List, Optional + +from sqlalchemy import select, update, and_ +from sqlalchemy.ext.asyncio import AsyncSession + +from app.models.terminal_session import TerminalSession + + +class TerminalSessionRepository: + """Repository for TerminalSession CRUD operations.""" + + def __init__(self, session: AsyncSession): + self.session = session + + async def create( + self, + id: str, + host_id: str, + host_name: str, + host_ip: str, + token_hash: str, + ttyd_port: int, + expires_at: datetime, + user_id: Optional[str] = None, + username: Optional[str] = None, + ttyd_pid: Optional[int] = None, + mode: str = "embedded", + ) -> TerminalSession: + """Create a new terminal session.""" + session = TerminalSession( + id=id, + host_id=host_id, + host_name=host_name, + host_ip=host_ip, + user_id=user_id, + username=username, + token_hash=token_hash, + ttyd_port=ttyd_port, + ttyd_pid=ttyd_pid, + mode=mode, + status="active", + expires_at=expires_at, + ) + self.session.add(session) + await self.session.flush() + return session + + async def get(self, session_id: str) -> Optional[TerminalSession]: + """Get a terminal session by ID.""" + result = await self.session.execute( + select(TerminalSession).where(TerminalSession.id == session_id) + ) + return result.scalar_one_or_none() + + async def get_active_by_id(self, session_id: str) -> Optional[TerminalSession]: + """Get an active terminal session by ID.""" + now = datetime.now(timezone.utc) + result = await self.session.execute( + select(TerminalSession).where( + and_( + TerminalSession.id == session_id, + TerminalSession.status == "active", + TerminalSession.expires_at > now + ) + ) + ) + return result.scalar_one_or_none() + + async def list_active_for_user(self, user_id: str) -> List[TerminalSession]: + """List all active sessions for a user.""" + now = datetime.now(timezone.utc) + result = await self.session.execute( + select(TerminalSession).where( + and_( + TerminalSession.user_id == user_id, + TerminalSession.status == "active", + TerminalSession.expires_at > now + ) + ).order_by(TerminalSession.created_at.desc()) + ) + return list(result.scalars().all()) + + async def count_active_for_user(self, user_id: str) -> int: + """Count active sessions for a user.""" + sessions = await self.list_active_for_user(user_id) + return len(sessions) + + async def list_expired(self) -> List[TerminalSession]: + """List all expired but not yet closed sessions.""" + now = datetime.now(timezone.utc) + result = await self.session.execute( + select(TerminalSession).where( + and_( + TerminalSession.status == "active", + TerminalSession.expires_at <= now + ) + ) + ) + return list(result.scalars().all()) + + async def update_status( + self, + session_id: str, + status: str, + closed_at: Optional[datetime] = None + ) -> Optional[TerminalSession]: + """Update session status.""" + session = await self.get(session_id) + if session: + session.status = status + if closed_at: + session.closed_at = closed_at + await self.session.flush() + return session + + async def close_session(self, session_id: str) -> Optional[TerminalSession]: + """Close a terminal session.""" + return await self.update_status( + session_id, + status="closed", + closed_at=datetime.now(timezone.utc) + ) + + async def mark_expired(self, session_id: str) -> Optional[TerminalSession]: + """Mark a session as expired.""" + return await self.update_status( + session_id, + status="expired", + closed_at=datetime.now(timezone.utc) + ) + + async def cleanup_old_sessions(self, days: int = 7) -> int: + """Delete sessions older than specified days.""" + from datetime import timedelta + cutoff = datetime.now(timezone.utc) - timedelta(days=days) + + result = await self.session.execute( + select(TerminalSession).where( + and_( + TerminalSession.status.in_(["closed", "expired", "error"]), + TerminalSession.created_at < cutoff + ) + ) + ) + sessions = result.scalars().all() + count = len(sessions) + + for session in sessions: + await self.session.delete(session) + + await self.session.flush() + return count + + async def close_all_active(self) -> int: + """Close all active sessions (for cleanup/reset).""" + now = datetime.now(timezone.utc) + result = await self.session.execute( + select(TerminalSession).where(TerminalSession.status == "active") + ) + sessions = list(result.scalars().all()) + count = len(sessions) + + for session in sessions: + session.status = "closed" + session.closed_at = now + + await self.session.flush() + return count diff --git a/app/index.html b/app/index.html index 58a0171..bf528c0 100644 --- a/app/index.html +++ b/app/index.html @@ -2967,6 +2967,205 @@ padding: 12px; } } + + /* ===================================================== + Terminal SSH Drawer Styles + ===================================================== */ + .terminal-drawer { + position: fixed; + inset: 0; + z-index: 1000; + pointer-events: none; + opacity: 0; + transition: opacity 0.3s ease; + } + + .terminal-drawer.open { + opacity: 1; + pointer-events: all; + } + + .terminal-drawer-backdrop { + position: absolute; + inset: 0; + background: rgba(0, 0, 0, 0.5); + z-index: 0; + } + + .terminal-drawer-panel { + position: absolute; + top: 0; + right: 0; + bottom: 0; + width: 50vw; + min-width: 400px; + max-width: 900px; + background: #0f0f1a; + border-left: 1px solid #374151; + display: flex; + flex-direction: column; + z-index: 1; + transform: translateX(100%); + transition: transform 0.3s ease; + } + + .terminal-drawer.open .terminal-drawer-panel { + transform: translateX(0); + } + + .terminal-drawer-header { + padding: 0.75rem 1rem; + background: #1a1a2e; + border-bottom: 1px solid #374151; + display: flex; + align-items: center; + justify-content: space-between; + flex-shrink: 0; + } + + .terminal-host-info { + display: flex; + align-items: center; + gap: 0.75rem; + } + + .terminal-host-name { + font-weight: 600; + color: #fff; + } + + .terminal-host-ip { + color: #9ca3af; + font-size: 0.875rem; + } + + .terminal-status-badge { + padding: 0.25rem 0.75rem; + border-radius: 9999px; + font-size: 0.75rem; + font-weight: 500; + } + + .terminal-status-badge.online { + background: rgba(34, 197, 94, 0.2); + color: #4ade80; + } + + .terminal-status-badge.connecting { + background: rgba(251, 191, 36, 0.2); + color: #fbbf24; + } + + .terminal-header-actions { + display: flex; + gap: 0.5rem; + } + + .terminal-btn { + padding: 0.5rem 0.75rem; + border-radius: 0.375rem; + font-size: 0.875rem; + border: none; + cursor: pointer; + display: flex; + align-items: center; + gap: 0.375rem; + transition: all 0.15s; + } + + .terminal-btn-secondary { + background: #374151; + color: #e5e7eb; + } + + .terminal-btn-secondary:hover { + background: #4b5563; + } + + .terminal-btn-danger { + background: #dc2626; + color: #fff; + } + + .terminal-btn-danger:hover { + background: #b91c1c; + } + + .terminal-drawer-body { + flex: 1; + position: relative; + overflow: hidden; + background: #000; + } + + .terminal-iframe { + width: 100%; + height: 100%; + border: none; + background: #000; + } + + .terminal-loading { + position: absolute; + inset: 0; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + background: #0f0f1a; + } + + .terminal-loading .spinner { + width: 48px; + height: 48px; + border: 3px solid #374151; + border-top-color: #3b82f6; + border-radius: 50%; + animation: spin 1s linear infinite; + } + + .terminal-loading .loading-text { + margin-top: 1rem; + color: #9ca3af; + } + + .terminal-drawer-footer { + padding: 0.5rem 1rem; + background: #1a1a2e; + border-top: 1px solid #374151; + display: flex; + align-items: center; + gap: 0.5rem; + flex-shrink: 0; + } + + .terminal-timer { + margin-left: auto; + font-size: 0.875rem; + color: #9ca3af; + font-family: monospace; + } + + .terminal-timer.warning { + color: #fbbf24; + } + + .terminal-timer.expired { + color: #ef4444; + } + + /* Mobile responsive */ + @media (max-width: 768px) { + .terminal-drawer-panel { + width: 100vw; + min-width: unset; + max-width: unset; + } + + .terminal-host-ip { + display: none; + } + } diff --git a/app/main.js b/app/main.js index e04de09..df19b1e 100644 --- a/app/main.js +++ b/app/main.js @@ -84,6 +84,11 @@ class DashboardManager { // WebSocket this.ws = null; + + // Terminal SSH + this.terminalSession = null; + this.terminalDrawerOpen = false; + this.terminalFeatureAvailable = false; // Configuration: collecte métriques this.metricsCollectionInterval = 'off'; @@ -465,6 +470,9 @@ class DashboardManager { schedules: this.schedules.length }); + // Charger les résultats de lint depuis l'API + await this.loadPlaybookLintResults(); + // Mettre à jour l'affichage this.renderHosts(); this.renderTasks(); @@ -1035,6 +1043,24 @@ class DashboardManager { // Initialiser le calendrier de filtrage des tâches this.setupTaskDateCalendar(); + // Event delegation for terminal buttons (avoids inline onclick issues) + document.addEventListener('click', (e) => { + const btn = e.target.closest('[data-action="terminal"], [data-action="terminal-popout"]'); + if (!btn || btn.disabled) return; + + e.stopPropagation(); + const action = btn.dataset.action; + const hostId = btn.dataset.hostId; + const hostName = btn.dataset.hostName; + const hostIp = btn.dataset.hostIp; + + if (action === 'terminal') { + this.openTerminal(hostId, hostName, hostIp); + } else if (action === 'terminal-popout') { + this.openTerminalPopout(hostId, hostName, hostIp); + } + }); + // Navigation est gérée par le script de navigation des pages dans index.html } @@ -1576,6 +1602,24 @@ class DashboardManager { + + `; // Append to all containers @@ -7319,11 +7363,58 @@ class DashboardManager { // ===== GESTION DES PLAYBOOKS ===== + // Cache des résultats lint (chargé depuis l'API backend) + playbookLintResults = {}; + + async loadPlaybookLintResults() { + /** + * Charge tous les résultats de lint depuis l'API backend. + * Appelé au démarrage et après chaque lint. + */ + try { + const data = await this.apiCall('/api/playbooks/results'); + this.playbookLintResults = data?.results || {}; + console.log('[Dashboard] Loaded lint results for', Object.keys(this.playbookLintResults).length, 'playbooks'); + } catch (e) { + console.warn('[Dashboard] Failed to load lint results from API:', e); + // Fallback: essayer localStorage + this.playbookLintResults = this.getPlaybookLintResultsFromLocalStorage(); + } + } + getPlaybookLintStorageKey() { return 'playbookLintResults:v1'; } + getPlaybookLintResultsFromLocalStorage() { + try { + const raw = localStorage.getItem(this.getPlaybookLintStorageKey()); + if (!raw) return {}; + const map = JSON.parse(raw); + // Convertir au format attendu (result -> direct) + const converted = {}; + for (const [filename, entry] of Object.entries(map)) { + if (entry?.result) { + converted[filename] = { + ...entry.result, + updated_at: entry.stored_at + }; + } + } + return converted; + } catch (e) { + return {}; + } + } + storePlaybookLintResult(filename, lintResult) { + // Mettre à jour le cache local immédiatement + this.playbookLintResults[filename] = { + ...lintResult, + updated_at: new Date().toISOString() + }; + + // Aussi sauvegarder en localStorage comme fallback try { const key = this.getPlaybookLintStorageKey(); const raw = localStorage.getItem(key); @@ -7336,32 +7427,29 @@ class DashboardManager { localStorage.setItem(key, JSON.stringify(map)); } catch (e) { - console.warn('Failed to store lint result:', e); + console.warn('Failed to store lint result in localStorage:', e); } } getPlaybookLintResult(filename) { - try { - const raw = localStorage.getItem(this.getPlaybookLintStorageKey()); - if (!raw) return null; - const map = JSON.parse(raw); - return map?.[filename] || null; - } catch (e) { - return null; + // Utiliser le cache chargé depuis l'API + const result = this.playbookLintResults?.[filename]; + if (result) { + return { result, stored_at: result.updated_at }; } + return null; } async copyPlaybookLintToClipboard(filename) { - const entry = this.getPlaybookLintResult(filename); - if (!entry?.result) { + const lintData = this.playbookLintResults?.[filename]; + if (!lintData) { this.showNotification('Aucun résultat lint à copier (exécutez Lint d\'abord)', 'warning'); return; } const payload = { filename, - stored_at: entry.stored_at, - ...entry.result + ...lintData }; const text = JSON.stringify(payload, null, 2); @@ -7484,14 +7572,14 @@ class DashboardManager { // Calculer le temps relatif const modifiedAgo = playbook.modified ? this.getRelativeTime(playbook.modified) : 'Date inconnue'; - const lintEntry = this.getPlaybookLintResult(playbook.filename); - const lintResult = lintEntry?.result || null; - const qualityScore = typeof lintResult?.quality_score === 'number' ? lintResult.quality_score : null; - const lintSummary = lintResult?.summary || null; - const lintTooltip = lintResult ? ( + // Récupérer le résultat lint depuis le cache (API backend ou localStorage) + const lintData = this.playbookLintResults?.[playbook.filename] || null; + const qualityScore = typeof lintData?.quality_score === 'number' ? lintData.quality_score : null; + const lintSummary = lintData?.summary || null; + const lintTooltip = lintData ? ( `Quality: ${qualityScore}/100\n` + `Total: ${lintSummary?.total ?? 0} | Errors: ${lintSummary?.errors ?? 0} | Warnings: ${lintSummary?.warnings ?? 0}\n` + - `Dernier lint: ${lintEntry?.stored_at ? new Date(lintEntry.stored_at).toLocaleString('fr-FR') : ''}` + `Dernier lint: ${lintData?.updated_at ? new Date(lintData.updated_at).toLocaleString('fr-FR') : ''}` ) : 'Aucun lint exécuté'; let lintBadgeHtml = ''; @@ -10002,6 +10090,290 @@ class DashboardManager { `; }).join(''); } + + // ===================================================== + // Terminal SSH - Web Terminal Feature + // ===================================================== + + async checkTerminalFeatureStatus() { + try { + const data = await this.apiCall('/api/terminal/status'); + this.terminalFeatureAvailable = Boolean(data && data.available); + return data; + } catch (e) { + console.warn('Terminal feature check failed:', e); + this.terminalFeatureAvailable = false; + } + return { available: false }; + } + + async openTerminal(hostId, hostName, hostIp) { + // Check if terminal feature is available + if (!this.terminalFeatureAvailable) { + const status = await this.checkTerminalFeatureStatus(); + if (!status.available) { + this.showNotification('Terminal SSH non disponible: ttyd n\'est pas installé', 'error'); + return; + } + } + + // Show loading state + this.showTerminalDrawer(hostName, hostIp, true); + + try { + const session = await this.apiCall(`/api/terminal/${hostId}/terminal-sessions`, { + method: 'POST', + body: JSON.stringify({ mode: 'embedded' }) + }); + this.terminalSession = session; + + // Update drawer with terminal iframe + this.updateTerminalDrawer(session); + + } catch (e) { + console.error('Failed to open terminal:', e); + this.showNotification(`Erreur terminal: ${e.message}`, 'error'); + this.closeTerminalDrawer(); + } + } + + async openTerminalPopout(hostId, hostName, hostIp) { + // Check if terminal feature is available + if (!this.terminalFeatureAvailable) { + const status = await this.checkTerminalFeatureStatus(); + if (!status.available) { + this.showNotification('Terminal SSH non disponible: ttyd n\'est pas installé', 'error'); + return; + } + } + + this.showNotification('Création de la session terminal...', 'info'); + + try { + const session = await this.apiCall(`/api/terminal/${hostId}/terminal-sessions`, { + method: 'POST', + body: JSON.stringify({ mode: 'popout' }) + }); + + // Open in popup window + const popupUrl = session.url; + const popupFeatures = 'width=900,height=600,menubar=no,toolbar=no,location=no,status=no,resizable=yes,scrollbars=no'; + const popup = window.open(popupUrl, `terminal_${session.session_id}`, popupFeatures); + + if (!popup || popup.closed) { + // Popup blocked - open in new tab instead + window.open(popupUrl, '_blank'); + this.showNotification('Terminal ouvert dans un nouvel onglet (popup bloqué)', 'warning'); + } + + } catch (e) { + console.error('Failed to open terminal popout:', e); + this.showNotification(`Erreur terminal: ${e.message}`, 'error'); + } + } + + showTerminalDrawer(hostName, hostIp, loading = false) { + this.terminalDrawerOpen = true; + + // Create drawer if it doesn't exist + let drawer = document.getElementById('terminalDrawer'); + if (!drawer) { + drawer = document.createElement('div'); + drawer.id = 'terminalDrawer'; + drawer.className = 'terminal-drawer'; + document.body.appendChild(drawer); + } + + const loadingContent = loading ? ` +
+
+
Connexion à ${this.escapeHtml(hostName)}...
+
+ ` : ''; + + drawer.innerHTML = ` +
+
+
+
+ ${this.escapeHtml(hostName)} + ${this.escapeHtml(hostIp)} + Connexion... +
+
+ + +
+
+
+ ${loadingContent} +
+ +
+ `; + + // Animate in + requestAnimationFrame(() => { + drawer.classList.add('open'); + }); + + // Add escape key handler + this._terminalEscHandler = (e) => { + if (e.key === 'Escape' && this.terminalDrawerOpen) { + this.closeTerminalDrawer(); + } + }; + document.addEventListener('keydown', this._terminalEscHandler); + } + + updateTerminalDrawer(session) { + const body = document.getElementById('terminalDrawerBody'); + if (!body) return; + + const statusBadge = document.querySelector('.terminal-status-badge'); + if (statusBadge) { + statusBadge.textContent = 'Connecté'; + statusBadge.classList.remove('connecting'); + statusBadge.classList.add('online'); + } + + // Create iframe for terminal + body.innerHTML = ` + + `; + + // Start countdown timer + this.startTerminalTimer(session.ttl_seconds); + } + + onTerminalIframeLoad() { + const iframe = document.getElementById('terminalIframe'); + if (iframe) { + iframe.focus(); + } + } + + startTerminalTimer(seconds) { + const timerEl = document.getElementById('terminalTimer'); + if (!timerEl) return; + + let remaining = seconds; + + const updateTimer = () => { + if (remaining <= 0) { + timerEl.textContent = 'Session expirée'; + timerEl.classList.add('expired'); + return; + } + + const mins = Math.floor(remaining / 60); + const secs = remaining % 60; + timerEl.textContent = `${mins}:${secs.toString().padStart(2, '0')}`; + + if (remaining < 60) { + timerEl.classList.add('warning'); + } + + remaining--; + }; + + updateTimer(); + this._terminalTimerInterval = setInterval(updateTimer, 1000); + } + + async closeTerminalDrawer() { + const drawer = document.getElementById('terminalDrawer'); + if (drawer) { + drawer.classList.remove('open'); + setTimeout(() => { + drawer.remove(); + }, 300); + } + + // Clean up timer + if (this._terminalTimerInterval) { + clearInterval(this._terminalTimerInterval); + this._terminalTimerInterval = null; + } + + // Remove escape handler + if (this._terminalEscHandler) { + document.removeEventListener('keydown', this._terminalEscHandler); + this._terminalEscHandler = null; + } + + // Close session on server (best effort) + if (this.terminalSession) { + try { + await this.apiCall(`/api/terminal/sessions/${this.terminalSession.session_id}`, { + method: 'DELETE' + }); + } catch (e) { + console.warn('Failed to close terminal session:', e); + } + this.terminalSession = null; + } + + this.terminalDrawerOpen = false; + } + + openCurrentTerminalPopout() { + if (!this.terminalSession) { + this.showNotification('Aucune session terminal active', 'warning'); + return; + } + + const popupUrl = this.terminalSession.url; + const popupFeatures = 'width=900,height=600,menubar=no,toolbar=no,location=no,status=no,resizable=yes,scrollbars=no'; + window.open(popupUrl, `terminal_${this.terminalSession.session_id}`, popupFeatures); + } + + copySSHCommand() { + if (!this.terminalSession) { + this.showNotification('Aucune session terminal active', 'warning'); + return; + } + + const cmd = `ssh automation@${this.terminalSession.host.ip}`; + navigator.clipboard.writeText(cmd).then(() => { + this.showNotification(`Commande copiée: ${cmd}`, 'success'); + }).catch(() => { + this.showNotification('Impossible de copier dans le presse-papier', 'error'); + }); + } + + async reconnectTerminal() { + if (!this.terminalSession) { + this.showNotification('Aucune session terminal active', 'warning'); + return; + } + + const { host } = this.terminalSession; + + // Close current session + await this.closeTerminalDrawer(); + + // Reopen + await this.openTerminal(host.id, host.name, host.ip); + } } // Initialize dashboard when DOM is loaded diff --git a/app/models/__init__.py b/app/models/__init__.py index f292dc5..95f22b4 100644 --- a/app/models/__init__.py +++ b/app/models/__init__.py @@ -13,9 +13,14 @@ from .docker_container import DockerContainer from .docker_image import DockerImage from .docker_volume import DockerVolume from .docker_alert import DockerAlert +from .terminal_session import TerminalSession __all__ = [ "Base", + "get_db", + "init_db", + "async_session_maker", + "engine", "Host", "BootstrapStatus", "Task", @@ -31,4 +36,5 @@ __all__ = [ "DockerImage", "DockerVolume", "DockerAlert", + "TerminalSession", ] diff --git a/app/models/database.py b/app/models/database.py index 3e96561..111ca7e 100644 --- a/app/models/database.py +++ b/app/models/database.py @@ -124,6 +124,7 @@ async def init_db() -> None: docker_image, docker_volume, docker_alert, + playbook_lint, ) # noqa: F401 async with engine.begin() as conn: diff --git a/app/models/playbook_lint.py b/app/models/playbook_lint.py new file mode 100644 index 0000000..2901ee7 --- /dev/null +++ b/app/models/playbook_lint.py @@ -0,0 +1,81 @@ +""" +Model for storing ansible-lint results per playbook. +""" + +from datetime import datetime, timezone +from typing import Optional + +from sqlalchemy import Column, DateTime, Integer, String, Text, JSON +from sqlalchemy.orm import Mapped, mapped_column + +from .database import Base + + +class PlaybookLintResult(Base): + """Stores the latest ansible-lint result for each playbook.""" + + __tablename__ = "playbook_lint_results" + + id: Mapped[int] = mapped_column(Integer, primary_key=True, autoincrement=True) + + # Playbook filename (unique constraint) + filename: Mapped[str] = mapped_column(String(255), unique=True, nullable=False, index=True) + + # Quality score (0-100) + quality_score: Mapped[int] = mapped_column(Integer, nullable=False, default=100) + + # Summary counts + total_issues: Mapped[int] = mapped_column(Integer, nullable=False, default=0) + errors_count: Mapped[int] = mapped_column(Integer, nullable=False, default=0) + warnings_count: Mapped[int] = mapped_column(Integer, nullable=False, default=0) + + # Execution time in milliseconds + execution_time_ms: Mapped[int] = mapped_column(Integer, nullable=False, default=0) + + # Full issues list as JSON + issues_json: Mapped[Optional[str]] = mapped_column(Text, nullable=True) + + # Raw output from ansible-lint (for copy to clipboard) + raw_output: Mapped[Optional[str]] = mapped_column(Text, nullable=True) + + # Timestamps + created_at: Mapped[datetime] = mapped_column( + DateTime(timezone=True), + nullable=False, + default=lambda: datetime.now(timezone.utc) + ) + updated_at: Mapped[datetime] = mapped_column( + DateTime(timezone=True), + nullable=False, + default=lambda: datetime.now(timezone.utc), + onupdate=lambda: datetime.now(timezone.utc) + ) + + def __repr__(self) -> str: + return f"" + + def to_dict(self) -> dict: + """Convert to dictionary for API response.""" + import json + + issues = [] + if self.issues_json: + try: + issues = json.loads(self.issues_json) + except (json.JSONDecodeError, TypeError): + issues = [] + + return { + "id": self.id, + "filename": self.filename, + "quality_score": self.quality_score, + "summary": { + "total": self.total_issues, + "errors": self.errors_count, + "warnings": self.warnings_count, + }, + "issues": issues, + "execution_time_ms": self.execution_time_ms, + "created_at": self.created_at.isoformat() if self.created_at else None, + "updated_at": self.updated_at.isoformat() if self.updated_at else None, + } diff --git a/app/models/terminal_session.py b/app/models/terminal_session.py new file mode 100644 index 0000000..c854e2a --- /dev/null +++ b/app/models/terminal_session.py @@ -0,0 +1,53 @@ +""" +Model for terminal sessions - stores SSH terminal session metadata. +""" +from __future__ import annotations + +from datetime import datetime +from typing import Optional + +from sqlalchemy import DateTime, Integer, String, text +from sqlalchemy.orm import Mapped, mapped_column +from sqlalchemy.sql import func + +from .database import Base + + +class TerminalSession(Base): + """ + Represents an active or recent SSH terminal session. + + Sessions are created when a user opens a terminal to a host, + and cleaned up after expiration or manual closure. + """ + __tablename__ = "terminal_sessions" + + id: Mapped[str] = mapped_column(String(64), primary_key=True) + host_id: Mapped[str] = mapped_column(String, nullable=False, index=True) + host_name: Mapped[str] = mapped_column(String, nullable=False) + host_ip: Mapped[str] = mapped_column(String, nullable=False) + user_id: Mapped[Optional[str]] = mapped_column(String, nullable=True) + username: Mapped[Optional[str]] = mapped_column(String, nullable=True) + + # Token hash for session authentication (never store plain token) + token_hash: Mapped[str] = mapped_column(String(128), nullable=False) + + # ttyd process management + ttyd_port: Mapped[int] = mapped_column(Integer, nullable=False) + ttyd_pid: Mapped[Optional[int]] = mapped_column(Integer, nullable=True) + + # Session mode: 'embedded' or 'popout' + mode: Mapped[str] = mapped_column(String(20), nullable=False, server_default=text("'embedded'")) + + # Session status: 'active', 'closed', 'expired', 'error' + status: Mapped[str] = mapped_column(String(20), nullable=False, server_default=text("'active'")) + + # Timestamps + created_at: Mapped[datetime] = mapped_column( + DateTime(timezone=True), nullable=False, server_default=func.now() + ) + expires_at: Mapped[datetime] = mapped_column(DateTime(timezone=True), nullable=False) + closed_at: Mapped[Optional[datetime]] = mapped_column(DateTime(timezone=True), nullable=True) + + def __repr__(self) -> str: + return f"" diff --git a/app/routes/__init__.py b/app/routes/__init__.py index 2080a7b..05e2061 100644 --- a/app/routes/__init__.py +++ b/app/routes/__init__.py @@ -26,6 +26,7 @@ from app.routes.server import router as server_router from app.routes.alerts import router as alerts_router from app.routes.docker import router as docker_router from app.routes.lint import router as lint_router +from app.routes.terminal import router as terminal_router # Router principal qui agrège tous les sous-routers api_router = APIRouter() @@ -50,6 +51,7 @@ api_router.include_router(server_router, prefix="/server", tags=["Server"]) api_router.include_router(alerts_router, prefix="/alerts", tags=["Alerts"]) api_router.include_router(docker_router, prefix="/docker", tags=["Docker"]) api_router.include_router(lint_router, prefix="/playbooks", tags=["Lint"]) +api_router.include_router(terminal_router, prefix="/terminal", tags=["Terminal"]) __all__ = [ "api_router", diff --git a/app/routes/lint.py b/app/routes/lint.py index 38c51b1..e1066b2 100644 --- a/app/routes/lint.py +++ b/app/routes/lint.py @@ -9,11 +9,15 @@ import re import tempfile import time from pathlib import Path -from typing import Optional +from typing import Optional, List from fastapi import APIRouter, Depends, HTTPException +from sqlalchemy import select +from sqlalchemy.ext.asyncio import AsyncSession from app.core.dependencies import verify_api_key +from app.models.database import get_db +from app.models.playbook_lint import PlaybookLintResult from app.schemas.lint import ( LintRequest, LintResponse, @@ -272,7 +276,8 @@ def parse_ansible_lint_text(stdout: str, original_filename: str) -> list[LintIss async def lint_playbook( filename: str, request: LintRequest, - api_key_valid: bool = Depends(verify_api_key) + api_key_valid: bool = Depends(verify_api_key), + db: AsyncSession = Depends(get_db) ): """ Exécute ansible-lint sur le contenu d'un playbook. @@ -384,6 +389,43 @@ async def lint_playbook( info=sum(1 for i in issues if i.severity == "info"), ) + # Sauvegarder le résultat en base de données + try: + # Chercher un résultat existant pour ce playbook + stmt = select(PlaybookLintResult).where(PlaybookLintResult.filename == filename) + result = await db.execute(stmt) + existing = result.scalar_one_or_none() + + # Sérialiser les issues en JSON + issues_json = json.dumps([i.model_dump() for i in issues]) + + if existing: + # Mettre à jour + existing.quality_score = quality_score + existing.total_issues = summary.total + existing.errors_count = summary.errors + existing.warnings_count = summary.warnings + existing.execution_time_ms = execution_time_ms + existing.issues_json = issues_json + else: + # Créer nouveau + lint_result = PlaybookLintResult( + filename=filename, + quality_score=quality_score, + total_issues=summary.total, + errors_count=summary.errors, + warnings_count=summary.warnings, + execution_time_ms=execution_time_ms, + issues_json=issues_json, + ) + db.add(lint_result) + + await db.commit() + logger.debug("Lint result saved for %s", filename) + except Exception as e: + logger.warning("Failed to save lint result: %s", e) + # Ne pas faire échouer la requête si la sauvegarde échoue + return LintResponse( success=True, execution_time_ms=execution_time_ms, @@ -401,6 +443,45 @@ async def lint_playbook( pass +@router.get("/results") +async def get_all_lint_results( + api_key_valid: bool = Depends(verify_api_key), + db: AsyncSession = Depends(get_db) +): + """ + Récupère tous les résultats de lint stockés en base de données. + + Utile pour afficher les scores dans la liste des playbooks. + """ + stmt = select(PlaybookLintResult).order_by(PlaybookLintResult.updated_at.desc()) + result = await db.execute(stmt) + lint_results = result.scalars().all() + + return { + "results": {r.filename: r.to_dict() for r in lint_results}, + "count": len(lint_results) + } + + +@router.get("/results/{filename}") +async def get_lint_result( + filename: str, + api_key_valid: bool = Depends(verify_api_key), + db: AsyncSession = Depends(get_db) +): + """ + Récupère le dernier résultat de lint pour un playbook spécifique. + """ + stmt = select(PlaybookLintResult).where(PlaybookLintResult.filename == filename) + result = await db.execute(stmt) + lint_result = result.scalar_one_or_none() + + if not lint_result: + raise HTTPException(status_code=404, detail=f"Aucun résultat lint pour {filename}") + + return lint_result.to_dict() + + @router.get("/rules") async def list_lint_rules(api_key_valid: bool = Depends(verify_api_key)): """ diff --git a/app/routes/playbooks.py b/app/routes/playbooks.py index ed858c9..a3f2a91 100644 --- a/app/routes/playbooks.py +++ b/app/routes/playbooks.py @@ -21,12 +21,16 @@ async def get_playbook_content( filename: str, api_key_valid: bool = Depends(verify_api_key) ): - """Récupère le contenu d'un playbook.""" - playbook_path = ansible_service.playbooks_dir / filename - + """Récupère le contenu d'un playbook (normal ou builtin).""" if not filename.endswith(('.yml', '.yaml')): raise HTTPException(status_code=400, detail="Extension de fichier invalide. Utilisez .yml ou .yaml") + # Vérifier si c'est un builtin playbook (commence par _builtin_) + if filename.startswith("_builtin_"): + playbook_path = ansible_service.playbooks_dir / "builtin" / filename + else: + playbook_path = ansible_service.playbooks_dir / filename + if not playbook_path.exists(): raise HTTPException(status_code=404, detail=f"Playbook non trouvé: {filename}") diff --git a/app/routes/terminal.py b/app/routes/terminal.py new file mode 100644 index 0000000..4ac1455 --- /dev/null +++ b/app/routes/terminal.py @@ -0,0 +1,756 @@ +""" +Routes API pour les sessions terminal SSH web. + +Provides endpoints for: +- Creating terminal sessions +- Listing active sessions +- Closing sessions +- Serving terminal popout page +""" +import logging +from datetime import datetime, timedelta, timezone +from typing import Optional + +from fastapi import APIRouter, Depends, HTTPException, Request, status +from fastapi.responses import HTMLResponse +from sqlalchemy.ext.asyncio import AsyncSession + +from app.core.dependencies import get_db, get_current_user +from app.crud.host import HostRepository +from app.crud.bootstrap_status import BootstrapStatusRepository +from app.crud.terminal_session import TerminalSessionRepository +from app.schemas.terminal import ( + TerminalSessionRequest, + TerminalSessionResponse, + TerminalSessionHost, + TerminalSessionStatus, + TerminalSessionList, +) +from app.services.terminal_service import ( + terminal_service, + TERMINAL_SESSION_TTL_MINUTES, + TERMINAL_MAX_SESSIONS_PER_USER, + HostNotReadyError, + SessionLimitExceededError, + TtydNotAvailableError, +) + +logger = logging.getLogger(__name__) + +router = APIRouter() + + +def _as_utc_aware(dt: Optional[datetime]) -> Optional[datetime]: + if dt is None: + return None + if dt.tzinfo is None: + return dt.replace(tzinfo=timezone.utc) + return dt.astimezone(timezone.utc) + + +@router.get("/status") +async def get_terminal_feature_status(): + """ + Check if terminal feature is available. + + Returns availability status and configuration info. + """ + ttyd_available = terminal_service.check_ttyd_available() + + return { + "available": ttyd_available, + "ttyd_installed": ttyd_available, + "max_sessions_per_user": TERMINAL_MAX_SESSIONS_PER_USER, + "session_ttl_minutes": TERMINAL_SESSION_TTL_MINUTES, + "active_sessions": terminal_service.get_active_session_count(), + } + + +@router.post("/{host_id}/terminal-sessions", response_model=TerminalSessionResponse) +async def create_terminal_session( + host_id: str, + request: TerminalSessionRequest = TerminalSessionRequest(), + current_user: dict = Depends(get_current_user), + db_session: AsyncSession = Depends(get_db), +): + """ + Create a new terminal session for a host. + + Requires: + - Host must exist and be online + - Host must have bootstrap completed + - User must not exceed max sessions limit + + Returns session URL and metadata. + """ + # Check if ttyd is available + if not terminal_service.check_ttyd_available(): + raise HTTPException( + status_code=status.HTTP_503_SERVICE_UNAVAILABLE, + detail="Terminal feature unavailable: ttyd is not installed" + ) + + # Get host information + host_repo = HostRepository(db_session) + bs_repo = BootstrapStatusRepository(db_session) + session_repo = TerminalSessionRepository(db_session) + + # Try to get host by ID first, then by name + host = await host_repo.get(host_id) + if not host: + host = await host_repo.get_by_name(host_id) + if not host: + raise HTTPException( + status_code=status.HTTP_404_NOT_FOUND, + detail=f"Host '{host_id}' not found" + ) + + # Check host status + if host.status == "offline": + raise HTTPException( + status_code=status.HTTP_400_BAD_REQUEST, + detail=f"Host '{host.name}' is offline. Cannot open terminal." + ) + + # Check bootstrap status + bootstrap = await bs_repo.latest_for_host(host.id) + bootstrap_ok = bootstrap and bootstrap.status == "success" + + if not bootstrap_ok: + raise HTTPException( + status_code=status.HTTP_400_BAD_REQUEST, + detail=f"Host '{host.name}' has not been bootstrapped. Run bootstrap first to configure SSH access." + ) + + # Get user info + user_id = current_user.get("user_id") or current_user.get("type", "api_key") + username = current_user.get("username", "api_user") + + # Check session limit + active_count = await session_repo.count_active_for_user(user_id) + if active_count >= TERMINAL_MAX_SESSIONS_PER_USER: + raise HTTPException( + status_code=status.HTTP_429_TOO_MANY_REQUESTS, + detail=f"Maximum active sessions ({TERMINAL_MAX_SESSIONS_PER_USER}) reached. Close an existing session first." + ) + + # Generate session credentials + session_id = terminal_service.generate_session_id() + token, token_hash = terminal_service.generate_session_token() + + # Allocate port + try: + port = await terminal_service.allocate_port(session_id) + except Exception as e: + logger.error(f"Failed to allocate port: {e}") + raise HTTPException( + status_code=status.HTTP_503_SERVICE_UNAVAILABLE, + detail="No available ports for terminal session" + ) + + # Calculate expiration + expires_at = datetime.now(timezone.utc) + timedelta(minutes=TERMINAL_SESSION_TTL_MINUTES) + + # Spawn ttyd process + try: + pid = await terminal_service.spawn_ttyd( + session_id=session_id, + host_ip=host.ip_address, + port=port, + token=token, + ) + + if pid is None: + await terminal_service.release_port(port) + raise HTTPException( + status_code=status.HTTP_500_INTERNAL_SERVER_ERROR, + detail="Failed to start terminal process" + ) + + except TtydNotAvailableError: + await terminal_service.release_port(port) + raise HTTPException( + status_code=status.HTTP_503_SERVICE_UNAVAILABLE, + detail="Terminal feature unavailable: ttyd is not installed" + ) + except Exception as e: + await terminal_service.release_port(port) + logger.exception(f"Failed to spawn ttyd: {e}") + raise HTTPException( + status_code=status.HTTP_500_INTERNAL_SERVER_ERROR, + detail=f"Failed to start terminal: {str(e)}" + ) + + # Create session in database + try: + session = await session_repo.create( + id=session_id, + host_id=host.id, + host_name=host.name, + host_ip=host.ip_address, + token_hash=token_hash, + ttyd_port=port, + ttyd_pid=pid, + expires_at=expires_at, + user_id=user_id, + username=username, + mode=request.mode, + ) + await db_session.commit() + + except Exception as e: + # Cleanup on failure + await terminal_service.terminate_session(session_id) + await terminal_service.release_port(port) + logger.exception(f"Failed to create session in DB: {e}") + raise HTTPException( + status_code=status.HTTP_500_INTERNAL_SERVER_ERROR, + detail="Failed to create terminal session" + ) + + # Log audit event + logger.info(f"Terminal session created: user={username} host={host.name} session={session_id[:8]}...") + + connect_path = f"/api/terminal/connect/{session_id}?token={token}" + popout_path = f"/api/terminal/popout/{session_id}?token={token}" + session_url = popout_path if request.mode == "popout" else connect_path + + # Build response + return TerminalSessionResponse( + session_id=session_id, + url=session_url, + websocket_url=f"ws://localhost:{port}/ws", + expires_at=expires_at, + ttl_seconds=TERMINAL_SESSION_TTL_MINUTES * 60, + mode=request.mode, + host=TerminalSessionHost( + id=host.id, + name=host.name, + ip=host.ip_address, + status=host.status or "unknown", + bootstrap_ok=bootstrap_ok, + ), + ) + + +@router.get("/sessions", response_model=TerminalSessionList) +async def list_terminal_sessions( + current_user: dict = Depends(get_current_user), + db_session: AsyncSession = Depends(get_db), +): + """ + List active terminal sessions for the current user. + """ + user_id = current_user.get("user_id") or current_user.get("type", "api_key") + + session_repo = TerminalSessionRepository(db_session) + sessions = await session_repo.list_active_for_user(user_id) + + now = datetime.now(timezone.utc) + session_list = [] + + for session in sessions: + expires_at = _as_utc_aware(session.expires_at) + created_at = _as_utc_aware(session.created_at) + remaining = max(0, int(((expires_at or now) - now).total_seconds())) + session_list.append(TerminalSessionStatus( + session_id=session.id, + status=session.status, + host_name=session.host_name, + created_at=created_at, + expires_at=expires_at, + remaining_seconds=remaining, + )) + + return TerminalSessionList( + sessions=session_list, + total=len(session_list), + max_per_user=TERMINAL_MAX_SESSIONS_PER_USER, + ) + + +@router.delete("/sessions/{session_id}") +async def close_terminal_session( + session_id: str, + current_user: dict = Depends(get_current_user), + db_session: AsyncSession = Depends(get_db), +): + """ + Close a terminal session. + + Terminates the ttyd process and marks session as closed. + """ + user_id = current_user.get("user_id") or current_user.get("type", "api_key") + username = current_user.get("username", "api_user") + + session_repo = TerminalSessionRepository(db_session) + session = await session_repo.get(session_id) + + if not session: + raise HTTPException( + status_code=status.HTTP_404_NOT_FOUND, + detail="Session not found" + ) + + # Check ownership (unless admin) + if session.user_id != user_id and current_user.get("role") != "admin": + raise HTTPException( + status_code=status.HTTP_403_FORBIDDEN, + detail="Cannot close another user's session" + ) + + # Terminate ttyd process + await terminal_service.terminate_session(session_id) + await terminal_service.release_port(session.ttyd_port) + + # Update database + await session_repo.close_session(session_id) + await db_session.commit() + + logger.info(f"Terminal session closed: user={username} host={session.host_name} session={session_id[:8]}...") + + return {"message": "Session closed", "session_id": session_id} + + +@router.post("/cleanup") +async def cleanup_terminal_sessions( + current_user: dict = Depends(get_current_user), + db_session: AsyncSession = Depends(get_db), +): + """ + Force cleanup of all terminal sessions. + + Closes all active sessions in DB and terminates any orphaned ttyd processes. + Useful when sessions get stuck or to reset the terminal feature. + """ + session_repo = TerminalSessionRepository(db_session) + + # Get all active sessions to terminate their processes + active_sessions = await session_repo.list_active_for_user( + current_user.get("user_id") or current_user.get("type", "api_key") + ) + + terminated = 0 + for session in active_sessions: + try: + await terminal_service.terminate_session(session.id) + await terminal_service.release_port(session.ttyd_port) + terminated += 1 + except Exception as e: + logger.warning(f"Failed to terminate session {session.id[:8]}: {e}") + + # Close all active sessions in DB + closed = await session_repo.close_all_active() + await db_session.commit() + + # Also cleanup expired sessions + expired = await session_repo.list_expired() + for session in expired: + await session_repo.mark_expired(session.id) + await db_session.commit() + + logger.info(f"Terminal cleanup: {terminated} processes terminated, {closed} sessions closed") + + return { + "message": "Cleanup completed", + "processes_terminated": terminated, + "sessions_closed": closed, + "expired_marked": len(expired), + } + + +@router.get("/connect/{session_id}") +async def get_terminal_connect_page( + session_id: str, + token: str, + db_session: AsyncSession = Depends(get_db), +): + """ + Serve the terminal connection page. + + This page embeds the ttyd terminal in an iframe or directly connects. + Token is verified before serving the page. + """ + session_repo = TerminalSessionRepository(db_session) + session = await session_repo.get_active_by_id(session_id) + + if not session: + return HTMLResponse( + content=""" + + + + Session Expirée + + + +
+

Session Expirée ou Invalide

+

Cette session terminal n'existe pas ou a expiré.

+

Retour au Dashboard

+
+ + + """, + status_code=404 + ) + + # Verify token + if not terminal_service.verify_token(token, session.token_hash): + return HTMLResponse( + content=""" + + + + Accès Refusé + + + +
+

Accès Refusé

+

Token de session invalide.

+
+ + + """, + status_code=403 + ) + + # Calculate remaining time + now = datetime.now(timezone.utc) + expires_at = _as_utc_aware(session.expires_at) + remaining_seconds = max(0, int(((expires_at or now) - now).total_seconds())) + + # Generate the terminal page + html_content = f""" + + + + + + Terminal - {session.host_name} + + + +
+ 💡 Pour une expérience sans barre d'outils : installez en PWA ou utilisez chrome --app=URL + +
+ +
+
+ {session.host_name} + {session.host_ip} + Connecté +
+
+ + + + + {remaining_seconds // 60}:{remaining_seconds % 60:02d} +
+
+ + + + +
+
+ +
+
+
+
+
Connexion au terminal...
+
+
+ +
+ + + + + """ + + return HTMLResponse(content=html_content) + + +@router.get("/popout/{session_id}") +async def get_terminal_popout_page( + session_id: str, + token: str, + db_session: AsyncSession = Depends(get_db), +): + """ + Serve the terminal popout page (fullscreen, minimal UI). + + This is designed to be opened in a popup window or PWA. + """ + # Reuse the same connect page logic but with minimal header + return await get_terminal_connect_page(session_id, token, db_session) diff --git a/app/schemas/terminal.py b/app/schemas/terminal.py new file mode 100644 index 0000000..c58abb1 --- /dev/null +++ b/app/schemas/terminal.py @@ -0,0 +1,52 @@ +""" +Pydantic schemas for terminal session API. +""" +from datetime import datetime +from typing import Optional, Literal + +from pydantic import BaseModel, Field + + +class TerminalSessionRequest(BaseModel): + """Request to create a new terminal session.""" + mode: Literal["embedded", "popout"] = Field( + default="embedded", + description="Terminal display mode: embedded in drawer or popout window" + ) + + +class TerminalSessionHost(BaseModel): + """Host information included in session response.""" + id: str + name: str + ip: str + status: str + bootstrap_ok: bool + + +class TerminalSessionResponse(BaseModel): + """Response after creating a terminal session.""" + session_id: str + url: str + websocket_url: str + expires_at: datetime + ttl_seconds: int + mode: str + host: TerminalSessionHost + + +class TerminalSessionStatus(BaseModel): + """Current status of a terminal session.""" + session_id: str + status: str + host_name: str + created_at: datetime + expires_at: datetime + remaining_seconds: int + + +class TerminalSessionList(BaseModel): + """List of active terminal sessions.""" + sessions: list[TerminalSessionStatus] + total: int + max_per_user: int diff --git a/app/services/terminal_service.py b/app/services/terminal_service.py new file mode 100644 index 0000000..97eedae --- /dev/null +++ b/app/services/terminal_service.py @@ -0,0 +1,368 @@ +""" +Terminal Service - Manages SSH terminal sessions via ttyd. + +This service handles: +- Creating terminal sessions with unique tokens +- Spawning ttyd processes for SSH connections +- Managing session lifecycle (creation, expiration, cleanup) +- Port allocation for ttyd instances +""" +import asyncio +import hashlib +import logging +import os +import secrets +import shutil +import signal +import socket +import subprocess +from datetime import datetime, timedelta, timezone +from typing import Dict, Optional, Tuple + +from app.core.config import settings + +logger = logging.getLogger(__name__) + + +# Configuration +TERMINAL_SESSION_TTL_MINUTES = int(os.environ.get("TERMINAL_SESSION_TTL_MINUTES", "30")) +TERMINAL_MAX_SESSIONS_PER_USER = int(os.environ.get("TERMINAL_MAX_SESSIONS_PER_USER", "3")) +TERMINAL_PORT_RANGE_START = int(os.environ.get("TERMINAL_PORT_RANGE_START", "7680")) +TERMINAL_PORT_RANGE_END = int(os.environ.get("TERMINAL_PORT_RANGE_END", "7700")) +SSH_USER = os.environ.get("TERMINAL_SSH_USER", "automation") +TTYD_PATH = os.environ.get("TTYD_PATH", "ttyd") + + +class TerminalServiceError(Exception): + """Base exception for terminal service errors.""" + pass + + +class HostNotReadyError(TerminalServiceError): + """Host is not ready for terminal connection.""" + pass + + +class SessionLimitExceededError(TerminalServiceError): + """User has too many active sessions.""" + pass + + +class TtydNotAvailableError(TerminalServiceError): + """ttyd binary is not available.""" + pass + + +class TerminalService: + """ + Manages terminal sessions and ttyd processes. + + This service is responsible for: + - Generating secure session tokens + - Allocating ports for ttyd instances + - Spawning and managing ttyd processes + - Cleaning up expired sessions + """ + + def __init__(self): + # Track active ttyd processes: session_id -> subprocess.Popen + self._processes: Dict[str, subprocess.Popen] = {} + # Track allocated ports: port -> session_id + self._allocated_ports: Dict[int, str] = {} + # Lock for thread-safe operations + self._lock = asyncio.Lock() + # Check if ttyd is available + self._ttyd_available: Optional[bool] = None + + def check_ttyd_available(self) -> bool: + """Check if ttyd binary is available.""" + if self._ttyd_available is not None: + return self._ttyd_available + + self._ttyd_available = shutil.which(TTYD_PATH) is not None + if not self._ttyd_available: + logger.warning(f"ttyd not found at '{TTYD_PATH}'. Terminal feature will be unavailable.") + else: + logger.info(f"ttyd found at: {shutil.which(TTYD_PATH)}") + + return self._ttyd_available + + def generate_session_id(self) -> str: + """Generate a unique session ID.""" + return secrets.token_hex(32) + + def generate_session_token(self) -> Tuple[str, str]: + """ + Generate a session token and its hash. + + Returns: + Tuple of (plain_token, token_hash) + """ + token = secrets.token_urlsafe(48) + token_hash = hashlib.sha256(token.encode()).hexdigest() + return token, token_hash + + def verify_token(self, token: str, token_hash: str) -> bool: + """Verify a token against its hash.""" + computed_hash = hashlib.sha256(token.encode()).hexdigest() + return secrets.compare_digest(computed_hash, token_hash) + + def _is_port_available(self, port: int) -> bool: + """Check if a TCP port is available for binding.""" + sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + try: + sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 0) + sock.bind(("0.0.0.0", port)) + return True + except OSError: + return False + finally: + try: + sock.close() + except Exception: + pass + + async def allocate_port(self, session_id: str) -> int: + """ + Allocate an available port for a ttyd instance. + + Returns: + Available port number + + Raises: + TerminalServiceError if no ports available + """ + async with self._lock: + for port in range(TERMINAL_PORT_RANGE_START, TERMINAL_PORT_RANGE_END + 1): + if port in self._allocated_ports: + continue + if not self._is_port_available(port): + continue + + if port not in self._allocated_ports: + self._allocated_ports[port] = session_id + logger.debug(f"Allocated port {port} for session {session_id[:8]}...") + return port + + raise TerminalServiceError("No available ports for terminal session") + + async def release_port(self, port: int) -> None: + """Release an allocated port.""" + async with self._lock: + if port in self._allocated_ports: + session_id = self._allocated_ports.pop(port) + logger.debug(f"Released port {port} from session {session_id[:8]}...") + + async def spawn_ttyd( + self, + session_id: str, + host_ip: str, + port: int, + token: str, + ) -> Optional[int]: + """ + Spawn a ttyd process for SSH connection. + + Args: + session_id: Unique session identifier + host_ip: Target host IP address + port: Port to run ttyd on + token: Session token for authentication + + Returns: + Process ID of the spawned ttyd, or None if failed + """ + if not self.check_ttyd_available(): + raise TtydNotAvailableError("ttyd is not installed or not in PATH") + + key_candidates = [] + env_key = os.environ.get("TERMINAL_SSH_KEY_PATH") + if env_key: + key_candidates.append(env_key) + if getattr(settings, "ssh_key_path", None): + key_candidates.append(settings.ssh_key_path) + key_candidates.append(str(os.path.expanduser("~/.ssh/id_automation_ansible"))) + key_candidates.append(str(os.path.expanduser("~/.ssh/id_rsa"))) + + ssh_key_path = next((p for p in key_candidates if p and os.path.exists(p)), None) + if not ssh_key_path: + raise TerminalServiceError( + "No SSH key found for terminal sessions. Set SSH_KEY_PATH or TERMINAL_SSH_KEY_PATH (expected ~/.ssh/id_automation_ansible)." + ) + + # Build ttyd command + # --once: Exit after single client disconnects + # --credential: Basic auth with session token + # --port: Listen port + # -W: Write-only mode disabled (allow input) + # The command executed is SSH to the target host + ssh_cmd = [ + "ssh", + "-i", + ssh_key_path, + "-o", + "BatchMode=no", + "-o", + "PreferredAuthentications=publickey,keyboard-interactive,password", + "-o", + "ConnectTimeout=10", + "-o", + "ServerAliveInterval=30", + "-o", + "ServerAliveCountMax=2", + "-o", + "StrictHostKeyChecking=accept-new", + "-o", + "UserKnownHostsFile=/dev/null", + f"{SSH_USER}@{host_ip}", + ] + + # Note: --credential removed to avoid HTTP basic auth popup + # Security is handled by session token validation in the connect/popout routes + cmd = [ + TTYD_PATH, + "--once", + f"--port={port}", + "--writable", + *ssh_cmd, + ] + + logger.info( + f"Spawning ttyd for session {session_id[:8]}... on port {port} -> {SSH_USER}@{host_ip} (key={ssh_key_path})" + ) + + try: + # Spawn the process + process = subprocess.Popen( + cmd, + stdout=subprocess.PIPE, + stderr=subprocess.PIPE, + start_new_session=True, # Detach from parent process group + ) + + # Store the process + async with self._lock: + self._processes[session_id] = process + + # Wait briefly to check if process started successfully + await asyncio.sleep(0.5) + + if process.poll() is not None: + # Process exited immediately - likely an error + stdout, stderr = process.communicate(timeout=1) + error_msg = stderr.decode() if stderr else stdout.decode() if stdout else "Unknown error" + logger.error(f"ttyd failed to start: {error_msg}") + await self.release_port(port) + raise TerminalServiceError(f"ttyd failed to start: {error_msg.strip()}") + + logger.info(f"ttyd started with PID {process.pid} for session {session_id[:8]}...") + return process.pid + + except TerminalServiceError: + # Preserve detailed error message for API layer + raise + except Exception as e: + logger.exception(f"Failed to spawn ttyd: {e}") + await self.release_port(port) + raise TerminalServiceError(str(e)) + + async def terminate_session(self, session_id: str) -> bool: + """ + Terminate a terminal session and its ttyd process. + + Returns: + True if session was terminated, False if not found + """ + async with self._lock: + process = self._processes.pop(session_id, None) + + if process is None: + return False + + try: + # Try graceful termination first + if process.poll() is None: + process.terminate() + try: + process.wait(timeout=5) + except subprocess.TimeoutExpired: + # Force kill if graceful termination failed + process.kill() + process.wait(timeout=2) + + logger.info(f"Terminated ttyd process for session {session_id[:8]}...") + return True + + except Exception as e: + logger.exception(f"Error terminating ttyd process: {e}") + return False + + async def cleanup_expired_sessions( + self, + get_expired_sessions_func, + mark_expired_func, + db_session + ) -> int: + """ + Clean up expired terminal sessions. + + Args: + get_expired_sessions_func: Async function to get expired sessions from DB + mark_expired_func: Async function to mark session as expired in DB + db_session: Database session + + Returns: + Number of sessions cleaned up + """ + from app.crud.terminal_session import TerminalSessionRepository + + repo = TerminalSessionRepository(db_session) + expired = await repo.list_expired() + + count = 0 + for session in expired: + # Terminate the ttyd process + await self.terminate_session(session.id) + # Release the port + await self.release_port(session.ttyd_port) + # Mark as expired in DB + await repo.mark_expired(session.id) + count += 1 + logger.info(f"Cleaned up expired session {session.id[:8]}... for host {session.host_name}") + + return count + + def get_active_session_count(self) -> int: + """Get the number of active ttyd processes.""" + return len(self._processes) + + def get_session_url(self, port: int, token: str, base_url: str = "") -> str: + """ + Get the URL to access a terminal session. + + Args: + port: ttyd port + token: Session token + base_url: Optional base URL prefix + + Returns: + Full URL to access the terminal + """ + # If we have a reverse proxy, use the proxied URL + # Otherwise, direct access to ttyd port + if base_url: + return f"{base_url}/terminal/proxy/{port}?token={token}" + return f"http://localhost:{port}/" + + def get_websocket_url(self, port: int) -> str: + """Get the WebSocket URL for terminal connection.""" + return f"ws://localhost:{port}/ws" + + +# Global service instance +terminal_service = TerminalService() + + +def get_terminal_service() -> TerminalService: + """Get the global terminal service instance.""" + return terminal_service diff --git a/data/homelab.db b/data/homelab.db index 74ffb3122ce91c509dcaa6b3f35c9502ce87d17b..3a764f5167a4dfec150056ef8239d3756b1b3c62 100644 GIT binary patch delta 3299 zcmb_eU2NM_6wbBtXE(`pfG+J;x{HQbQmxc>+NO&JH0!dhtW8Hrr!CUtWsRX``D^TK zEeyF42*!BX$b-cTVijoW8(R?(FCbA~1}{wF?_o%c2P6c74K#$9#JEo5C0$%vrdf{l z<=k_>d+s^kJ@(w3Ywm5&nN41+#bVixf5tU>c3aSAwLE(I0UI`v@VY+0!<+C=c>Tih z7a)!QKHP;L_ibFf39SqWUPQMbezMjxZ8Y>+;7{-}{1Bdlufb_}2u5H4dKbOS4Ug(0 zgMerGzHW~1=0b>P!@d1so}*3d!7x8Snc7*_X=3NYe8^#9=fYgSy=GS%7v{n&Z!?*| zhFQ+qZ0AGazCQ8}JGVWI?_fW%feca&8{-DT_zn)}siNU|3;YZI27iR^@8Fm4bNC5P z&U^4YPRZ*~b&{=MIJSF?HUMP+rvV%Wup7W;0ILB=0}u|fm8ud}*DhOd*?xxK!>{0H z@MHKsT!3%EG9Id3i<_7X%+O>zkY{B@%+Pg6)uFQv9d&50Lt7nM>yWHNf+E|gfT#$P$W5<&}@(dHPC*l6eM)s2-Ltiv}H0Hq!&n-XV=(?aDW z12%xl@14K{DzV3j4?r93nzF!m;9k!!o->|a_qXnoZshvZHH8Z^;!+bdZE0>8x^t4zwE=`IulCqK_CDW3;v>+q@&Ru~9T^NE- zP-}9lcSWwBnuK#r@^x^l&5;MgESqrL3-V@e{rD#A4czKIOu60z61E2Nb#SZet*72c z64w7mz7B4++8y;~lpyapxz1f}XbEC9ZuRa}Zgj;2SdDxg+-Q{}bi1`K0`}JC`6JBy zAk*+f7Y6~m#VJ`llJH^yo3+=yQEqo1{}U< z4=6oY?Gw_BpooQxluf1uS(Igb%4MM_iv>YSH4SVZ8jnWeQ8XOe6+MXlYbqLxp{D7` zUzD-PFms^Pf?r+xa1?>nqY!8EQbCl3q|(GRuy!Ez*(+jEjZGqd-6Np(rxvIyc`KS zd_6tj6sIJQrp2b+HW_+rOUENSN1|pGrzt6g4n)R>_D072{k;M0suu*P>U!B^Mm&4D zRr}Qo>>!VkTGO53zYWopZqgkaZA$K#m=&gy@|0oqbNoO6#m3?&HZd}y&r_7yl#tIA z6fD+wbWe2LWE4kM8`NiHav-H`?f^bY%p4U{DKWLRe3jay`8xo#Pb$)JajP~0z@Gc- zxkG-T#eK5Ol;>MLmi zM|7&wMcgTsSwWu66-1+iE9;w6a6gk|xrjec%mg473b}$TOy-JNbA_Bp7P3a2 zhQ`Dhak8j?7YT}#5rvHTQp-^Y&&l}vDIPr-*R@tio)EOlB-o;LcmdM#ZD6C{Y~!+t cdMa%@h>w8&5%>+Eef=0QGru3r4=&%#zuGtPX8-^I delta 202 zcmZozz}L{gGeKIAiGhK^0El70ZK95`I1__jmk29Rh>8CjNJ54GH~%-j{Ts`w`MGjZ zbCWWGVnTA8fAg~lFdA)A_|Fd{4Ok{@W-(wl*v$Rmr#v%1L(O(}0mfgvObnkVS226F z`^qtH_myMXF32Lp5XLZFz<^1DhxZ!8Eru{&J)T885|af5w6=#CFvW8-rcG}UU`*Qn lS&DfdRG5i@V`8H?FE5bG2gLk9th%w)F^!dxft7)C~E_4+H09W!fJOBUy diff --git a/data/homelab.db-wal b/data/homelab.db-wal index ac5a1b8d6b4d1e29453de7000f78093f84184ece..9f93dbb79c69eea4797db38277d6ac017394a0a1 100644 GIT binary patch literal 16512 zcmeI(O=#0#7zgmQ=~t4rk20#Or(6VgD7;D5rVCysB6?A9OxTN;G7AQ_I+rpKM8VU% z34-1Rf-s7o2Y2wIxO$pigef8n{1~Drc+>4>vidH5OVTzeSW9oLR|}6uZr<6oy3%*-ob8tiKi5ZF?>?;Fc(JJZMXk6l(MNhl_vsp4 zq|-D;!!$tK{W2B=AOHafKmY;|fB*y_009U<;O`dLDO(AXnbnG6R*bsN42M-6%g}zQ z+q%h|!J1~%(@a;XDk;{HyzW?M$`?*sAVGS%uGkrnZu0KpLNrAs#W>7x-sPV zmsLydkS%3%zqW4F9sjcG{zEJV4^o^LEI3E6j`0WIHqHfTPNFsXLhosXmgxyC`X>Z; zY2GhmK>z{}fB*y_009U<00Izz00bZqyFgAZB@P`va6}V96+sapCqh<)j0kBFQX8sw^h)nsU{<29^od^6b6TQ@bdNeTN0(_f_Ko8P5P$## zAOHafKmY;|fB*y_0D=EXK$Xi0?~K=OPHJIP!>EKY7shNDGhs}JF%?ERj7dcFqOU1#$%fi`$o`0M_>6ft}009U<00Izz z00bZafqzthYpPT#d%^Ck;J?J)o5S$b)Py_UXuGFc`iX95vN1i~?KJg@KGK|?amSmU z?zY^v+n8{@ZpYL2?At%EIj|!a_q4H delta 634 zcmZo@WIWKs>||cg*2JLuNP>YufB^)IOs6mI>PdcGQD@;QeR56-P>2^xL|gLDintboYa0;mARBU`HW?pSc+c@xMwCjN^+kMLiF>h)j| zXEtV>Ea)ISSwTQS24>eMXW;_LX1^B@9q)mD;(rg-kv93AJjY~r1wpvt-FMsSQjaa# z2vPhR=o|jmP{m1;Kj?GmGvW5svu6uk^n~>6K<;JY_W*i|-vg-EhMy^l3FN2AG7c$f z=>G9MIA8UTz}Ya6h0Odr!T#aj3AIvh@<)DuIhaQnGhXHH)wp8}QThz*5&maTrO{xo z*eOWCm1p0b-<{y7xC)~D0oW`251`6JL7tf$WFRXKj}zOO@;eM~X&whTpPBCs*!g^K Ofa>q@ZO*Y5VFUoy%F*@! diff --git a/docker/Dockerfile b/docker/Dockerfile index ce48e21..d3212aa 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -21,6 +21,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends \ sshpass \ ansible \ ansible-lint \ + ttyd \ git \ curl \ libjpeg62-turbo \ diff --git a/documentation/SSH_TERMINAL.md b/documentation/SSH_TERMINAL.md new file mode 100644 index 0000000..a279f04 --- /dev/null +++ b/documentation/SSH_TERMINAL.md @@ -0,0 +1,276 @@ +# SSH Web Terminal Feature + +This document describes the SSH web terminal feature integrated into the Homelab Dashboard. + +## Overview + +The SSH Web Terminal allows users to connect to bootstrapped hosts directly from the web interface using [ttyd](https://github.com/tsl0922/ttyd) as the terminal emulator backend. + +## Features + +- **Embedded Terminal**: Opens in a slide-over drawer panel within the Hosts page +- **Pop-out Terminal**: Opens in a standalone window (or new tab if popups are blocked) +- **Session Management**: Automatic expiration, session limits per user +- **Security**: Token-based authentication, no SSH keys exposed to browser + +## Architecture + +``` +┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ +│ Web Browser │────▶│ FastAPI │────▶│ ttyd Process │ +│ (iframe) │ │ Backend │ │ (per session) │ +└─────────────────┘ └─────────────────┘ └─────────────────┘ + │ │ + │ ▼ + │ ┌─────────────────┐ + │ │ SSH Client │ + │ │ automation@ │ + │ │ │ + │ └─────────────────┘ + ▼ + ┌─────────────────┐ + │ SQLite DB │ + │ (sessions) │ + └─────────────────┘ +``` + +## Prerequisites + +### 1. Install ttyd + +#### Linux (Debian/Ubuntu) +```bash +sudo apt-get install ttyd +``` + +#### Linux (from source) +```bash +git clone https://github.com/tsl0922/ttyd.git +cd ttyd && mkdir build && cd build +cmake .. +make && sudo make install +``` + +#### macOS +```bash +brew install ttyd +``` + +#### Windows (WSL) +```bash +sudo apt-get install ttyd +``` + +#### Docker +ttyd can also be run via Docker, but the current implementation spawns ttyd processes directly. + +### 2. SSH Key Configuration + +Hosts must be bootstrapped with the `automation` user and SSH key configured. The bootstrap process: +1. Creates the `automation` user on the target host +2. Deploys SSH public key for passwordless authentication +3. Configures sudo without password for the automation user + +### 3. Environment Variables + +| Variable | Default | Description | +|----------|---------|-------------| +| `TERMINAL_SESSION_TTL_MINUTES` | `30` | Session timeout in minutes | +| `TERMINAL_MAX_SESSIONS_PER_USER` | `3` | Maximum concurrent sessions per user | +| `TERMINAL_PORT_RANGE_START` | `7680` | First port for ttyd instances | +| `TERMINAL_PORT_RANGE_END` | `7700` | Last port for ttyd instances | +| `TERMINAL_SSH_USER` | `automation` | SSH username for connections | +| `TTYD_PATH` | `ttyd` | Path to ttyd binary | + +## API Endpoints + +### Check Terminal Feature Status +```http +GET /api/terminal/status +``` +Returns whether ttyd is installed and terminal feature is available. + +**Response:** +```json +{ + "available": true, + "ttyd_installed": true, + "max_sessions_per_user": 3, + "session_ttl_minutes": 30, + "active_sessions": 2 +} +``` + +### Create Terminal Session +```http +POST /api/terminal/{host_id}/terminal-sessions +Authorization: Bearer +Content-Type: application/json + +{ + "mode": "embedded" // or "popout" +} +``` + +**Response:** +```json +{ + "session_id": "abc123...", + "url": "/terminal/connect/abc123...?token=xyz...", + "websocket_url": "ws://localhost:7680/ws", + "expires_at": "2024-12-17T20:00:00Z", + "ttl_seconds": 1800, + "mode": "embedded", + "host": { + "id": "host-id", + "name": "server01", + "ip": "192.168.1.100", + "status": "online", + "bootstrap_ok": true + } +} +``` + +### List Active Sessions +```http +GET /api/terminal/sessions +Authorization: Bearer +``` + +### Close Terminal Session +```http +DELETE /api/terminal/sessions/{session_id} +Authorization: Bearer +``` + +### Connect to Terminal +```http +GET /api/terminal/connect/{session_id}?token= +``` +Returns HTML page with embedded terminal iframe. + +## Security Considerations + +### Authentication +- All API endpoints require JWT Bearer token authentication +- Session tokens are generated per-session and hashed before storage +- Token verification on every terminal page load + +### Session Isolation +- Each terminal session spawns a dedicated ttyd process +- ttyd uses `--once` flag to exit after client disconnects +- Sessions are bound to specific users + +### Rate Limiting +- Maximum sessions per user (default: 3) +- Session TTL prevents resource exhaustion +- Expired sessions are automatically cleaned up + +### Audit Logging +- Session creation logged with user and host info +- Session closure logged +- No sensitive data (tokens, keys) in logs + +### SSH Security +- SSH keys never exposed to browser +- `StrictHostKeyChecking=accept-new` for initial connections +- Uses dedicated `automation` user with limited sudo + +## UI Components + +### Terminal Button (Host Card) +- **Enabled**: When host is online AND bootstrap OK +- **Disabled**: When host is offline OR bootstrap not completed +- Shows tooltip explaining why disabled + +### Terminal Drawer +- Slides in from right side of screen +- Header: Host name, IP, connection status +- Body: Embedded ttyd iframe +- Footer: SSH command copy, reconnect, session timer +- Close with Escape key or X button + +### Pop-out Window +- Opens in new window with minimal UI +- Fullscreen terminal experience +- PWA hint for toolbar-free experience + +## Troubleshooting + +### "ttyd is not installed" +Install ttyd using the instructions above. Verify with: +```bash +which ttyd +ttyd --version +``` + +### "Host not bootstrapped" +Run bootstrap on the host first: +1. Go to Hosts section +2. Click "Bootstrap" button on the target host +3. Enter root password when prompted +4. Wait for bootstrap to complete + +### "Maximum sessions reached" +Close existing terminal sessions before opening new ones. + +### Pop-up blocked +If the browser blocks the pop-out window, the terminal will open in a new tab instead. + +### Session expired +Click "Reconnect" button to create a new session. + +## PWA / Toolbar-free Window + +Modern browsers don't allow complete removal of the URL bar via `window.open()`. To get a true "app-like" experience: + +### Option 1: Chrome/Edge App Mode +Create a shortcut with: +```bash +chrome --app=https://your-dashboard.com/terminal/connect/SESSION_ID?token=TOKEN +``` + +### Option 2: Install as PWA +1. Open the dashboard in Chrome/Edge +2. Click the install icon in the address bar +3. Launch terminals from the installed PWA + +## Database Schema + +```sql +CREATE TABLE terminal_sessions ( + id VARCHAR(64) PRIMARY KEY, + host_id VARCHAR NOT NULL, + host_name VARCHAR NOT NULL, + host_ip VARCHAR NOT NULL, + user_id VARCHAR, + username VARCHAR, + token_hash VARCHAR(128) NOT NULL, + ttyd_port INTEGER NOT NULL, + ttyd_pid INTEGER, + mode VARCHAR(20) DEFAULT 'embedded', + status VARCHAR(20) DEFAULT 'active', + created_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(), + expires_at TIMESTAMP WITH TIME ZONE NOT NULL, + closed_at TIMESTAMP WITH TIME ZONE +); +``` + +## Files + +### Backend +- `app/models/terminal_session.py` - SQLAlchemy model +- `app/schemas/terminal.py` - Pydantic schemas +- `app/crud/terminal_session.py` - Database operations +- `app/services/terminal_service.py` - ttyd process management +- `app/routes/terminal.py` - API endpoints + +### Frontend +- `app/main.js` - Terminal methods in DashboardManager +- `app/index.html` - CSS styles for terminal drawer + +### Migration +- `alembic/versions/0013_add_terminal_sessions_table.py` + +### Tests +- `tests/backend/test_terminal.py` diff --git a/logs/tasks_logs/.metadata_cache.json b/logs/tasks_logs/.metadata_cache.json index 0234de4..22aad04 100644 --- a/logs/tasks_logs/.metadata_cache.json +++ b/logs/tasks_logs/.metadata_cache.json @@ -1 +1 @@ -{"logs/tasks_logs/2025/12/10/task_190745_1dfd00_localhost_Vérification_de_santé_completed.md": {"start_time": "2025-12-10T19:07:36.061183+00:00", "end_time": "2025-12-10T19:07:41.383337+00:00", "duration": "5.3s", "duration_seconds": 5, "hosts": ["localhost"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "manual", "task_name": "Vérification de santé", "target": "localhost", "_mtime": 1765393664.8381965}, "logs/tasks_logs/2025/12/10/task_191828_97e453_localhost_Vérification_de_santé_completed.md": {"start_time": "2025-12-10T19:18:21.019974+00:00", "end_time": "2025-12-10T19:18:25.003643+00:00", "duration": "5.7s", "duration_seconds": 6, "hosts": ["localhost"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "manual", "task_name": "Vérification de santé", "target": "localhost", "_mtime": 1765394309.350344}, "logs/tasks_logs/2025/12/10/task_192102_ca9804_raspi.8gb.home_Ad-hoc_uptime_failed.md": {"start_time": "2025-12-10T19:19:55.447932+00:00", "end_time": "2025-12-10T19:21:02.140007+00:00", "duration": "70.09s", "duration_seconds": 70, "hosts": [], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: uptime", "target": "raspi.8gb.home", "_mtime": 1765394462.8330834}, "logs/tasks_logs/2025/12/10/task_192248_380eb9_raspi.8gb.home_Ad-hoc_uptime_failed.md": {"start_time": "2025-12-10T19:21:40.846352+00:00", "end_time": "2025-12-10T19:22:48.694300+00:00", "duration": "71.23s", "duration_seconds": 71, "hosts": [], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: uptime", "target": "raspi.8gb.home", "_mtime": 1765394568.7535894}, "logs/tasks_logs/2025/12/10/task_192523_7334cc_raspi.8gb.home_Ad-hoc_uptime_failed.md": {"start_time": "2025-12-10T19:24:51.907977+00:00", "end_time": "2025-12-10T19:25:20.383977+00:00", "duration": "30.13s", "duration_seconds": 30, "hosts": [], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: uptime", "target": "raspi.8gb.home", "_mtime": 1765394723.921616}, "logs/tasks_logs/2025/12/10/task_023456_65181e_ali2v.xeon.home_Ad-hoc_uptime_failed.md": {"start_time": "2025-12-11T02:33:47.305001+00:00", "end_time": "2025-12-11T02:34:56.399226+00:00", "duration": "70.03s", "duration_seconds": 70, "hosts": [], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: uptime", "target": "ali2v.xeon.home", "_mtime": 1765420497.2153156}, "logs/tasks_logs/2025/12/11/task_210400_966a28_ali2v.xeon.home_Vérification_de_santé_completed.md": {"start_time": "2025-12-11T21:03:45.245764+00:00", "end_time": "2025-12-11T21:03:51.828982+00:00", "duration": "6.6s", "duration_seconds": 7, "hosts": ["ali2v.xeon.home"], "category": "Autre", "subcategory": null, "target_type": "host", "source_type": "manual", "task_name": "Vérification de santé", "target": "ali2v.xeon.home", "_mtime": 1765487041.5461578}, "logs/tasks_logs/2025/12/11/task_211845_97a4fa_orangepi.pc.home_Playbook_Vm_Upgrade_completed.md": {"start_time": "2025-12-11T21:09:08.734920+00:00", "end_time": "2025-12-11T21:18:45.745263+00:00", "duration": "608.7s", "duration_seconds": 609, "hosts": ["orangepi.pc.home"], "category": "Playbook", "subcategory": "Upgrade", "target_type": "host", "source_type": "manual", "task_name": "Playbook: Vm Upgrade", "target": "orangepi.pc.home", "_mtime": 1765487925.0594838}, "logs/tasks_logs/2025/12/11/task_213013_179d63_orangepi.pc.home_Playbook_Vm_Upgrade_completed.md": {"start_time": "2025-12-11T21:29:28.403060+00:00", "end_time": "2025-12-11T21:30:09.303740+00:00", "duration": "42.6s", "duration_seconds": 43, "hosts": ["orangepi.pc.home"], "category": "Playbook", "subcategory": "Upgrade", "target_type": "host", "source_type": "manual", "task_name": "Playbook: Vm Upgrade", "target": "orangepi.pc.home", "_mtime": 1765488613.299506}, "logs/tasks_logs/2025/12/11/task_003323_97f823_ali2v.xeon.home_Vérification_de_santé_completed.md": {"start_time": "2025-12-12T00:33:14.935783+00:00", "end_time": "2025-12-12T00:33:20.188583+00:00", "duration": "5.2s", "duration_seconds": 5, "hosts": ["ali2v.xeon.home"], "category": "Autre", "subcategory": null, "target_type": "host", "source_type": "manual", "task_name": "Vérification de santé", "target": "ali2v.xeon.home", "_mtime": 1765499603.9713528}, "logs/tasks_logs/2025/12/12/task_130332_839ebc_role_proxmox_Ad-hoc_apt-get_install_lm-sensors_completed.md": {"start_time": "2025-12-12T13:03:12.797836+00:00", "end_time": "2025-12-12T13:03:19.238725+00:00", "duration": "6.44s", "duration_seconds": 6, "hosts": ["ali2v.xeon.home", "hp.nas.home", "hp2.i7.home", "hp3.i5.home", "mimi.pc.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "group", "source_type": "adhoc", "task_name": "Ad-hoc: apt-get install lm-sensors", "target": "role_proxmox", "_mtime": 1765544612.3005567}, "logs/tasks_logs/2025/12/12/task_200137_10bc1a_hp.truenas.home_Playbook_Vm_Reboot_failed.md": {"start_time": "2025-12-12T20:01:24.625767+00:00", "end_time": "2025-12-12T20:01:26.721183+00:00", "duration": "1.9s", "duration_seconds": 2, "hosts": ["hp.truenas.home"], "category": "Playbook", "subcategory": "Reboot", "target_type": "host", "source_type": "manual", "task_name": "Playbook: Vm Reboot", "target": "hp.truenas.home", "_mtime": 1765569697.0462832}, "logs/tasks_logs/2025/12/12/task_215640_637b80_ali2v.xeon.home_Vérification_de_santé_completed.md": {"start_time": "2025-12-12T21:56:30.274245+00:00", "end_time": "2025-12-12T21:56:36.074931+00:00", "duration": "5.8s", "duration_seconds": 6, "hosts": ["ali2v.xeon.home"], "category": "Autre", "subcategory": null, "target_type": "host", "source_type": "manual", "task_name": "Vérification de santé", "target": "ali2v.xeon.home", "_mtime": 1765576600.2905405}, "logs/tasks_logs/2025/12/12/task_051329_a97617_all_[Builtin]_Installer_les_outils_de_base_failed.md": {"start_time": "2025-12-13T04:49:25.373883+00:00", "end_time": "2025-12-13T05:13:20.294853+00:00", "duration": "1434.9s", "duration_seconds": 1435, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "manual", "task_name": "[Builtin] Installer les outils de base", "target": "all", "_mtime": 1765602809.9852695}, "logs/tasks_logs/2025/12/13/task_141805_5aa58a_all_[Builtin]_Installer_les_outils_de_base_failed.md": {"start_time": "2025-12-13T14:15:31.573620+00:00", "end_time": "2025-12-13T14:18:02.749657+00:00", "duration": "151.1s", "duration_seconds": 151, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "manual", "task_name": "[Builtin] Installer les outils de base", "target": "all", "_mtime": 1765635485.3753524}, "logs/tasks_logs/2025/12/13/task_142241_a3ccfc_all_[Builtin]_Installer_les_outils_de_base_failed.md": {"start_time": "2025-12-13T14:20:32.667401+00:00", "end_time": "2025-12-13T14:22:41.089755+00:00", "duration": "128.3s", "duration_seconds": 128, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "manual", "task_name": "[Builtin] Installer les outils de base", "target": "all", "_mtime": 1765635761.1146486}, "logs/tasks_logs/2025/12/13/task_143910_3859ef_all_[Builtin]_Installer_les_outils_de_base_failed.md": {"start_time": "2025-12-13T14:38:21.364007+00:00", "end_time": "2025-12-13T14:39:10.326467+00:00", "duration": "48.9s", "duration_seconds": 49, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "manual", "task_name": "[Builtin] Installer les outils de base", "target": "all", "_mtime": 1765636750.3553755}, "logs/tasks_logs/2025/12/13/task_145937_0665d0_dev.lab.home_Ad-hoc_uptime_failed.md": {"start_time": "2025-12-13T14:59:33.478137+00:00", "end_time": "2025-12-13T14:59:37.394324+00:00", "duration": "3.92s", "duration_seconds": 4, "hosts": ["dev.lab.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: uptime", "target": "dev.lab.home", "_mtime": 1765637977.4208813}, "logs/tasks_logs/2025/12/13/task_150045_ad32ce_dev.lab.home_Ad-hoc_uptime_failed.md": {"start_time": "2025-12-13T15:00:41.295000+00:00", "end_time": "2025-12-13T15:00:45.658222+00:00", "duration": "4.36s", "duration_seconds": 4, "hosts": ["dev.lab.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: uptime", "target": "dev.lab.home", "_mtime": 1765638045.6873624}, "logs/tasks_logs/2025/12/13/task_150159_9a2541_dev.lab.home_Ad-hoc_uptime_failed.md": {"start_time": "2025-12-13T15:01:54.846920+00:00", "end_time": "2025-12-13T15:01:58.994418+00:00", "duration": "4.15s", "duration_seconds": 4, "hosts": ["dev.lab.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: uptime", "target": "dev.lab.home", "_mtime": 1765638119.02243}, "logs/tasks_logs/2025/12/13/task_150850_8a6d1f_dev.lab.home_Ad-hoc_uptime_completed.md": {"start_time": "2025-12-13T15:08:46.045388+00:00", "end_time": "2025-12-13T15:08:50.310425+00:00", "duration": "4.27s", "duration_seconds": 4, "hosts": ["dev.lab.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: uptime", "target": "dev.lab.home", "_mtime": 1765638530.3252249}, "logs/tasks_logs/2025/12/13/task_151108_307942_dev.prod.home_Ad-hoc_uptime_completed.md": {"start_time": "2025-12-13T15:11:04.016377+00:00", "end_time": "2025-12-13T15:11:08.508442+00:00", "duration": "4.49s", "duration_seconds": 4, "hosts": ["dev.prod.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: uptime", "target": "dev.prod.home", "_mtime": 1765638668.523142}, "logs/tasks_logs/2025/12/13/task_151406_82e3d0_role_truenas_Ad-hoc_id_failed.md": {"start_time": "2025-12-13T15:14:01.798208+00:00", "end_time": "2025-12-13T15:14:06.067926+00:00", "duration": "4.27s", "duration_seconds": 4, "hosts": ["ali2v.truenas.home", "hp.truenas.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "group", "source_type": "adhoc", "task_name": "Ad-hoc: id", "target": "role_truenas", "_mtime": 1765638846.088572}, "logs/tasks_logs/2025/12/13/task_190446_308c29_all_[Builtin]_Installer_les_outils_de_base_failed.md": {"start_time": "2025-12-13T19:03:26.668267+00:00", "end_time": "2025-12-13T19:04:46.575844+00:00", "duration": "79.8s", "duration_seconds": 80, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "manual", "task_name": "[Builtin] Installer les outils de base", "target": "all", "_mtime": 1765652686.6074712}, "logs/tasks_logs/2025/12/13/task_190758_cfdf27_all_[Builtin]_Installer_les_outils_de_base_completed.md": {"start_time": "2025-12-13T19:07:03.072874+00:00", "end_time": "2025-12-13T19:07:58.816670+00:00", "duration": "55.7s", "duration_seconds": 56, "hosts": ["ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "manual", "task_name": "[Builtin] Installer les outils de base", "target": "all", "_mtime": 1765652878.8309326}, "logs/tasks_logs/2025/12/14/task_172337_92ed7b_dev.lab.home_Ad-hoc_ls_-l_-etc_completed.md": {"start_time": "2025-12-14T17:23:31.217772+00:00", "end_time": "2025-12-14T17:23:37.834785+00:00", "duration": "6.62s", "duration_seconds": 7, "hosts": ["dev.lab.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: ls -l /etc", "target": "dev.lab.home", "_mtime": 1765733017.822245}, "logs/tasks_logs/2025/12/14/task_172338_98a382_dev.lab.home_Ad-hoc_ls_-l_-etc_failed.md": {"start_time": "2025-12-14T17:23:31.217772+00:00", "end_time": "2025-12-14T17:23:38.005125+00:00", "duration": "6.79s", "duration_seconds": 7, "hosts": ["dev.lab.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "scheduled", "task_name": "Ad-hoc: ls -l /etc", "target": "dev.lab.home", "_mtime": 1765733018.0181484}, "logs/tasks_logs/2025/12/14/task_173430_ca4328_dev.lab.home_Ad-hoc_ls_-l_-etc_completed.md": {"start_time": "2025-12-14T17:34:24.267535+00:00", "end_time": "2025-12-14T17:34:30.965437+00:00", "duration": "6.7s", "duration_seconds": 7, "hosts": ["dev.lab.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: ls -l /etc", "target": "dev.lab.home", "_mtime": 1765733670.9639957}, "logs/tasks_logs/2025/12/14/task_173724_173974_orangepi.pc.home_Ad-hoc_uptime_completed.md": {"start_time": "2025-12-14T17:37:12.498535+00:00", "end_time": "2025-12-14T17:37:24.669055+00:00", "duration": "12.17s", "duration_seconds": 12, "hosts": ["orangepi.pc.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: uptime", "target": "orangepi.pc.home", "_mtime": 1765733844.7343087}, "logs/tasks_logs/2025/12/14/task_180313_867d33_env_lab_Ad-hoc_id_completed.md": {"start_time": "2025-12-14T18:03:05.461073+00:00", "end_time": "2025-12-14T18:03:13.469438+00:00", "duration": "8.01s", "duration_seconds": 8, "hosts": ["dev.lab.home", "media.labb.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "group", "source_type": "adhoc", "task_name": "Ad-hoc: id", "target": "env_lab", "_mtime": 1765735393.5413053}, "logs/tasks_logs/2025/12/14/task_180424_7968d4_env_lab_Ad-hoc_ls_-l_-etc_completed.md": {"start_time": "2025-12-14T18:04:18.573795+00:00", "end_time": "2025-12-14T18:04:24.949144+00:00", "duration": "6.38s", "duration_seconds": 6, "hosts": ["dev.lab.home", "media.labb.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "group", "source_type": "adhoc", "task_name": "Ad-hoc: ls -l /etc", "target": "env_lab", "_mtime": 1765735464.9535613}, "logs/tasks_logs/2025/12/14/task_181253_8e8a07_localhost_Ad-hoc_echo_ws_test_completed.md": {"start_time": "2025-12-14T18:12:51.205868+00:00", "end_time": "2025-12-14T18:12:53.416294+00:00", "duration": "2.21s", "duration_seconds": 2, "hosts": ["localhost"], "category": "Ad-hoc", "subcategory": null, "target_type": "group", "source_type": "adhoc", "task_name": "Ad-hoc: echo ws_test", "target": "localhost", "_mtime": 1765735973.4745686}, "logs/tasks_logs/2025/12/14/task_182035_76cdb3_env_lab_Ad-hoc_python_--version_completed.md": {"start_time": "2025-12-14T18:20:29.840650+00:00", "end_time": "2025-12-14T18:20:35.886572+00:00", "duration": "6.05s", "duration_seconds": 6, "hosts": ["dev.lab.home", "media.labb.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "group", "source_type": "adhoc", "task_name": "Ad-hoc: python --version", "target": "env_lab", "_mtime": 1765736435.8718472}, "logs/tasks_logs/2025/12/14/task_191901_07f977_env_lab_Ad-hoc_date_completed.md": {"start_time": "2025-12-14T19:18:54.397893+00:00", "end_time": "2025-12-14T19:19:01.631247+00:00", "duration": "7.23s", "duration_seconds": 7, "hosts": ["dev.lab.home", "media.labb.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "group", "source_type": "adhoc", "task_name": "Ad-hoc: date", "target": "env_lab", "_mtime": 1765739941.702063}, "logs/tasks_logs/2025/12/14/task_192141_e8b7bc_raspi.8gb.home_Ad-hoc_ls_-l_-home-automation_completed.md": {"start_time": "2025-12-14T19:21:34.376188+00:00", "end_time": "2025-12-14T19:21:41.350093+00:00", "duration": "6.97s", "duration_seconds": 7, "hosts": ["raspi.8gb.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: ls -l /home/automation", "target": "raspi.8gb.home", "_mtime": 1765740101.4198716}, "logs/tasks_logs/2025/12/14/task_194319_b62f75_localhost_Vérification_de_santé_completed.md": {"start_time": "2025-12-14T19:43:13.559077+00:00", "end_time": "2025-12-14T19:43:19.361924+00:00", "duration": "5.8s", "duration_seconds": 6, "hosts": ["localhost"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "manual", "task_name": "Vérification de santé", "target": "localhost", "_mtime": 1765741399.3700576}, "logs/tasks_logs/2025/12/14/task_194428_e46a03_localhost_Vérification_de_santé_completed.md": {"start_time": "2025-12-14T19:44:22.852328+00:00", "end_time": "2025-12-14T19:44:28.406053+00:00", "duration": "5.6s", "duration_seconds": 6, "hosts": ["localhost"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "manual", "task_name": "Vérification de santé", "target": "localhost", "_mtime": 1765741468.373243}, "logs/tasks_logs/2025/12/14/task_192904_cf5816_all_Playbook_Health_Check_completed.md": {"start_time": "2025-12-14T19:28:40.883020+00:00", "end_time": "2025-12-14T19:29:04.357873+00:00", "duration": "23.5s", "duration_seconds": 24, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Playbook", "subcategory": "Health Check", "target_type": "group", "source_type": "manual", "task_name": "Playbook: Health Check", "target": "all", "_mtime": 1765740544.3538277}, "logs/tasks_logs/2025/12/14/task_194745_5bc930_ali2v.xeon.home_Vérification_de_santé_completed.md": {"start_time": "2025-12-14T19:47:33.379967+00:00", "end_time": "2025-12-14T19:47:45.531785+00:00", "duration": "12.2s", "duration_seconds": 12, "hosts": ["ali2v.xeon.home"], "category": "Autre", "subcategory": null, "target_type": "host", "source_type": "manual", "task_name": "Vérification de santé", "target": "ali2v.xeon.home", "_mtime": 1765741665.5088656}, "logs/tasks_logs/2025/12/14/task_194816_32f6c9_automate.prod.home_Ad-hoc_docker_ps_failed.md": {"start_time": "2025-12-14T19:48:11.347824+00:00", "end_time": "2025-12-14T19:48:16.661147+00:00", "duration": "5.31s", "duration_seconds": 5, "hosts": ["automate.prod.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: docker ps", "target": "automate.prod.home", "_mtime": 1765741696.619639}, "logs/tasks_logs/2025/12/14/task_195036_182b4c_automate.prod.home_Ad-hoc_docker_ps_completed.md": {"start_time": "2025-12-14T19:50:30.219845+00:00", "end_time": "2025-12-14T19:50:36.671431+00:00", "duration": "6.45s", "duration_seconds": 6, "hosts": ["automate.prod.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: docker ps", "target": "automate.prod.home", "_mtime": 1765741836.6847632}, "logs/tasks_logs/2025/12/14/task_223122_47954a_ali2v.xeon.home_Vérification_de_santé_completed.md": {"start_time": "2025-12-14T22:31:11.656602+00:00", "end_time": "2025-12-14T22:31:22.133368+00:00", "duration": "10.5s", "duration_seconds": 10, "hosts": ["ali2v.xeon.home"], "category": "Autre", "subcategory": null, "target_type": "host", "source_type": "manual", "task_name": "Vérification de santé", "target": "ali2v.xeon.home", "_mtime": 1765751482.2057157}, "logs/tasks_logs/2025/12/14/task_223206_25a0e9_role_sbc_Ad-hoc_cat_-etc-os-release_completed.md": {"start_time": "2025-12-14T22:31:56.906100+00:00", "end_time": "2025-12-14T22:32:06.347461+00:00", "duration": "9.44s", "duration_seconds": 9, "hosts": ["orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "group", "source_type": "adhoc", "task_name": "Ad-hoc: cat /etc/os-release", "target": "role_sbc", "_mtime": 1765751526.362026}, "logs/tasks_logs/2025/12/15/task_161229_f4bd2b_orangepi.pc.home_Vérification_de_santé_completed.md": {"start_time": "2025-12-15T16:12:05.182436+00:00", "end_time": "2025-12-15T16:12:29.301972+00:00", "duration": "23.6s", "duration_seconds": 24, "hosts": ["orangepi.pc.home"], "category": "Autre", "subcategory": null, "target_type": "host", "source_type": "manual", "task_name": "Vérification de santé", "target": "orangepi.pc.home", "_mtime": 1765815149.2300754}, "logs/tasks_logs/2025/12/15/task_161327_31482a_raspi.4gb.home_Ad-hoc_docker_ps_completed.md": {"start_time": "2025-12-15T16:13:12.229201+00:00", "end_time": "2025-12-15T16:13:27.151598+00:00", "duration": "14.34s", "duration_seconds": 14, "hosts": ["raspi.4gb.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: docker ps", "target": "raspi.4gb.home", "_mtime": 1765815206.901772}, "logs/tasks_logs/2025/12/15/task_194350_2349fa_orangepi.pc.home_Vérification_de_santé_completed.md": {"start_time": "2025-12-15T19:43:30.153362+00:00", "end_time": "2025-12-15T19:43:50.967600+00:00", "duration": "20.8s", "duration_seconds": 21, "hosts": ["orangepi.pc.home"], "category": "Autre", "subcategory": null, "target_type": "host", "source_type": "manual", "task_name": "Vérification de santé", "target": "orangepi.pc.home", "_mtime": 1765827830.990256}, "logs/tasks_logs/2025/12/15/task_230246_1f5ccf_ali2v.xeon.home_Vérification_de_santé_completed.md": {"start_time": "2025-12-15T23:02:34.463100+00:00", "end_time": "2025-12-15T23:02:46.542863+00:00", "duration": "12.1s", "duration_seconds": 12, "hosts": ["ali2v.xeon.home"], "category": "Autre", "subcategory": null, "target_type": "host", "source_type": "manual", "task_name": "Vérification de santé", "target": "ali2v.xeon.home", "_mtime": 1765839766.6611836}, "logs/tasks_logs/2025/12/15/task_231021_a4074f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-15T23:10:00.001753+00:00", "end_time": "2025-12-15T23:10:21.379130+00:00", "duration": "21.4s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765840221.4730206}, "logs/tasks_logs/2025/12/15/task_231521_f2a3f9_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-15T23:15:00.001325+00:00", "end_time": "2025-12-15T23:15:21.318690+00:00", "duration": "21.3s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765840521.3458726}, "logs/tasks_logs/2025/12/15/task_232022_c023aa_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-15T23:20:00.001309+00:00", "end_time": "2025-12-15T23:20:22.060275+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765840822.0466607}, "logs/tasks_logs/2025/12/15/task_232522_d5feef_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-15T23:25:00.000843+00:00", "end_time": "2025-12-15T23:25:22.503852+00:00", "duration": "22.5s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765841122.5786307}, "logs/tasks_logs/2025/12/15/task_233021_ffd83c_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-15T23:30:00.000989+00:00", "end_time": "2025-12-15T23:30:21.496910+00:00", "duration": "21.5s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765841421.542624}, "logs/tasks_logs/2025/12/15/task_233521_bb2c8a_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-15T23:35:00.001058+00:00", "end_time": "2025-12-15T23:35:21.918225+00:00", "duration": "21.9s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765841721.8947015}, "logs/tasks_logs/2025/12/15/task_234022_9677f6_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-15T23:40:00.000428+00:00", "end_time": "2025-12-15T23:40:22.064761+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765842022.1367474}, "logs/tasks_logs/2025/12/15/task_234522_81ba91_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-15T23:45:00.000781+00:00", "end_time": "2025-12-15T23:45:22.793100+00:00", "duration": "22.8s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765842322.846452}, "logs/tasks_logs/2025/12/15/task_000026_2df1b6_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T00:00:00.001546+00:00", "end_time": "2025-12-16T00:00:26.808331+00:00", "duration": "26.8s", "duration_seconds": 27, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765843226.8783145}, "logs/tasks_logs/2025/12/15/task_000524_503429_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T00:05:00.006446+00:00", "end_time": "2025-12-16T00:05:24.604586+00:00", "duration": "24.6s", "duration_seconds": 25, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765843524.6530898}, "logs/tasks_logs/2025/12/15/task_001023_4aba28_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T00:10:00.000978+00:00", "end_time": "2025-12-16T00:10:23.453424+00:00", "duration": "23.5s", "duration_seconds": 24, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765843823.5096781}, "logs/tasks_logs/2025/12/15/task_235024_ec3377_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-15T23:50:00.001523+00:00", "end_time": "2025-12-15T23:50:24.739332+00:00", "duration": "24.7s", "duration_seconds": 25, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765842624.7354023}, "logs/tasks_logs/2025/12/15/task_235525_75433b_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-15T23:55:00.005685+00:00", "end_time": "2025-12-15T23:55:25.293370+00:00", "duration": "25.3s", "duration_seconds": 25, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765842925.3914824}, "logs/tasks_logs/2025/12/15/task_001533_ba8901_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T00:15:00.005162+00:00", "end_time": "2025-12-16T00:15:33.020020+00:00", "duration": "33.0s", "duration_seconds": 33, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765844133.0971594}, "logs/tasks_logs/2025/12/15/task_002032_ca2128_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T00:20:00.003039+00:00", "end_time": "2025-12-16T00:20:32.083832+00:00", "duration": "32.1s", "duration_seconds": 32, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765844432.0989065}, "logs/tasks_logs/2025/12/15/task_002531_cd8da2_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T00:25:00.004602+00:00", "end_time": "2025-12-16T00:25:31.208064+00:00", "duration": "31.2s", "duration_seconds": 31, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765844731.3282177}, "logs/tasks_logs/2025/12/15/task_003032_64531b_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T00:30:00.001906+00:00", "end_time": "2025-12-16T00:30:32.010698+00:00", "duration": "32.0s", "duration_seconds": 32, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765845032.1103263}, "logs/tasks_logs/2025/12/15/task_003531_8fb99f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T00:35:00.001694+00:00", "end_time": "2025-12-16T00:35:31.454701+00:00", "duration": "31.5s", "duration_seconds": 32, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765845331.48583}, "logs/tasks_logs/2025/12/15/task_004032_12cffa_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T00:40:00.004787+00:00", "end_time": "2025-12-16T00:40:32.539048+00:00", "duration": "32.5s", "duration_seconds": 32, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765845632.660104}, "logs/tasks_logs/2025/12/15/task_004531_ea9e23_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T00:45:00.003307+00:00", "end_time": "2025-12-16T00:45:31.400595+00:00", "duration": "31.4s", "duration_seconds": 31, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765845931.5325792}, "logs/tasks_logs/2025/12/15/task_005031_a63f65_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T00:50:00.002572+00:00", "end_time": "2025-12-16T00:50:31.397910+00:00", "duration": "31.4s", "duration_seconds": 31, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765846231.465362}, "logs/tasks_logs/2025/12/15/task_005531_2f673f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T00:55:00.003017+00:00", "end_time": "2025-12-16T00:55:31.764800+00:00", "duration": "31.8s", "duration_seconds": 32, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765846531.8311512}, "logs/tasks_logs/2025/12/15/task_010022_59512f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T01:00:00.000539+00:00", "end_time": "2025-12-16T01:00:22.761178+00:00", "duration": "22.8s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765846822.7966993}, "logs/tasks_logs/2025/12/15/task_010522_8a0673_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T01:05:00.001063+00:00", "end_time": "2025-12-16T01:05:22.917696+00:00", "duration": "22.9s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765847123.0001187}, "logs/tasks_logs/2025/12/15/task_011021_c3d508_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T01:10:00.001100+00:00", "end_time": "2025-12-16T01:10:21.154299+00:00", "duration": "21.2s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765847421.1913917}, "logs/tasks_logs/2025/12/15/task_011521_7e3bbc_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T01:15:00.000904+00:00", "end_time": "2025-12-16T01:15:21.722933+00:00", "duration": "21.7s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765847721.688858}, "logs/tasks_logs/2025/12/15/task_012022_d2ff68_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T01:20:00.000967+00:00", "end_time": "2025-12-16T01:20:22.483971+00:00", "duration": "22.5s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765848022.5676458}, "logs/tasks_logs/2025/12/15/task_012522_dfa38b_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T01:25:00.001100+00:00", "end_time": "2025-12-16T01:25:22.121727+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765848322.1769698}, "logs/tasks_logs/2025/12/15/task_013022_8fc95f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T01:30:00.000333+00:00", "end_time": "2025-12-16T01:30:22.498821+00:00", "duration": "22.5s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765848622.4831846}, "logs/tasks_logs/2025/12/15/task_013522_087c74_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T01:35:00.001369+00:00", "end_time": "2025-12-16T01:35:22.366948+00:00", "duration": "22.4s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765848922.442564}, "logs/tasks_logs/2025/12/15/task_014022_4dbad2_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T01:40:00.000661+00:00", "end_time": "2025-12-16T01:40:22.121005+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765849222.1880865}, "logs/tasks_logs/2025/12/15/task_014521_6bb4a3_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T01:45:00.000945+00:00", "end_time": "2025-12-16T01:45:21.901675+00:00", "duration": "21.9s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765849521.9089506}, "logs/tasks_logs/2025/12/15/task_015022_b70434_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T01:50:00.000940+00:00", "end_time": "2025-12-16T01:50:22.059193+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765849822.103228}, "logs/tasks_logs/2025/12/15/task_015522_819cc7_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T01:55:00.001418+00:00", "end_time": "2025-12-16T01:55:22.369022+00:00", "duration": "22.4s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765850122.4396207}, "logs/tasks_logs/2025/12/15/task_020022_2f4cb2_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T02:00:00.000629+00:00", "end_time": "2025-12-16T02:00:22.454345+00:00", "duration": "22.5s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765850422.4783418}, "logs/tasks_logs/2025/12/15/task_020522_68582e_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T02:05:00.001123+00:00", "end_time": "2025-12-16T02:05:22.820947+00:00", "duration": "22.8s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765850722.8275952}, "logs/tasks_logs/2025/12/15/task_021022_76382e_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T02:10:00.001460+00:00", "end_time": "2025-12-16T02:10:22.470923+00:00", "duration": "22.5s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765851022.5582466}, "logs/tasks_logs/2025/12/15/task_021521_bb81af_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T02:15:00.001063+00:00", "end_time": "2025-12-16T02:15:21.631133+00:00", "duration": "21.6s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765851321.6807542}, "logs/tasks_logs/2025/12/15/task_022022_5d7a93_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T02:20:00.000375+00:00", "end_time": "2025-12-16T02:20:22.396184+00:00", "duration": "22.4s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765851622.3725238}, "logs/tasks_logs/2025/12/15/task_022521_e04d61_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T02:25:00.001320+00:00", "end_time": "2025-12-16T02:25:21.850082+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765851921.9117975}, "logs/tasks_logs/2025/12/15/task_023021_946f28_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T02:30:00.001492+00:00", "end_time": "2025-12-16T02:30:21.843242+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765852221.9061148}, "logs/tasks_logs/2025/12/15/task_023522_15743c_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T02:35:00.000679+00:00", "end_time": "2025-12-16T02:35:22.227343+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765852522.2295594}, "logs/tasks_logs/2025/12/15/task_024022_2cd43b_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T02:40:00.000940+00:00", "end_time": "2025-12-16T02:40:22.264560+00:00", "duration": "22.3s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765852822.3056798}, "logs/tasks_logs/2025/12/15/task_024521_b25ef9_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T02:45:00.000342+00:00", "end_time": "2025-12-16T02:45:21.791494+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765853121.8695939}, "logs/tasks_logs/2025/12/15/task_025022_28bca3_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T02:50:00.001187+00:00", "end_time": "2025-12-16T02:50:22.013346+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765853422.039209}, "logs/tasks_logs/2025/12/15/task_025522_d0c20e_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T02:55:00.000695+00:00", "end_time": "2025-12-16T02:55:22.114477+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765853722.0951705}, "logs/tasks_logs/2025/12/15/task_030022_b2608e_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T03:00:00.001581+00:00", "end_time": "2025-12-16T03:00:22.808847+00:00", "duration": "22.8s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765854022.886674}, "logs/tasks_logs/2025/12/15/task_030521_a7c019_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T03:05:00.001529+00:00", "end_time": "2025-12-16T03:05:21.735323+00:00", "duration": "21.7s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765854321.7779481}, "logs/tasks_logs/2025/12/15/task_031022_de0107_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T03:10:00.001223+00:00", "end_time": "2025-12-16T03:10:21.981119+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765854621.9498053}, "logs/tasks_logs/2025/12/15/task_031521_63ad18_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T03:15:00.001257+00:00", "end_time": "2025-12-16T03:15:21.800750+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765854921.8790221}, "logs/tasks_logs/2025/12/15/task_032023_e95ed0_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T03:20:00.001519+00:00", "end_time": "2025-12-16T03:20:23.118520+00:00", "duration": "23.1s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765855223.1826408}, "logs/tasks_logs/2025/12/15/task_032523_a90596_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T03:25:00.000433+00:00", "end_time": "2025-12-16T03:25:23.068955+00:00", "duration": "23.1s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765855523.0605328}, "logs/tasks_logs/2025/12/15/task_033022_713517_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T03:30:00.001489+00:00", "end_time": "2025-12-16T03:30:21.985402+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765855822.0422058}, "logs/tasks_logs/2025/12/15/task_033522_8683fc_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T03:35:00.001039+00:00", "end_time": "2025-12-16T03:35:22.244963+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765856122.3156433}, "logs/tasks_logs/2025/12/15/task_034022_c7a912_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T03:40:00.000833+00:00", "end_time": "2025-12-16T03:40:22.059017+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765856422.081465}, "logs/tasks_logs/2025/12/15/task_034521_bff3da_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T03:45:00.000543+00:00", "end_time": "2025-12-16T03:45:21.723340+00:00", "duration": "21.7s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765856721.7411704}, "logs/tasks_logs/2025/12/15/task_035021_613718_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T03:50:00.001269+00:00", "end_time": "2025-12-16T03:50:21.401137+00:00", "duration": "21.4s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765857021.4943557}, "logs/tasks_logs/2025/12/15/task_035521_198e54_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T03:55:00.000567+00:00", "end_time": "2025-12-16T03:55:21.813425+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765857321.8622017}, "logs/tasks_logs/2025/12/15/task_040022_351b11_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T04:00:00.001066+00:00", "end_time": "2025-12-16T04:00:22.249187+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765857622.2226145}, "logs/tasks_logs/2025/12/15/task_040521_3df483_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T04:05:00.000917+00:00", "end_time": "2025-12-16T04:05:21.923151+00:00", "duration": "21.9s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765857922.0009997}, "logs/tasks_logs/2025/12/15/task_041022_c40cc6_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T04:10:00.000745+00:00", "end_time": "2025-12-16T04:10:22.832764+00:00", "duration": "22.8s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765858222.8865712}, "logs/tasks_logs/2025/12/15/task_041522_147f28_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T04:15:00.001003+00:00", "end_time": "2025-12-16T04:15:22.522767+00:00", "duration": "22.5s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765858522.5057065}, "logs/tasks_logs/2025/12/15/task_042021_408a40_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T04:20:00.000528+00:00", "end_time": "2025-12-16T04:20:21.922311+00:00", "duration": "21.9s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765858821.985752}, "logs/tasks_logs/2025/12/15/task_042522_137c4d_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T04:25:00.000530+00:00", "end_time": "2025-12-16T04:25:22.728149+00:00", "duration": "22.7s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765859122.7996821}, "logs/tasks_logs/2025/12/15/task_043022_8991d2_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T04:30:00.000632+00:00", "end_time": "2025-12-16T04:30:22.193298+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765859422.2174838}, "logs/tasks_logs/2025/12/15/task_043522_978039_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T04:35:00.000349+00:00", "end_time": "2025-12-16T04:35:22.383965+00:00", "duration": "22.4s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765859722.4190764}, "logs/tasks_logs/2025/12/15/task_044022_28c3ee_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T04:40:00.001478+00:00", "end_time": "2025-12-16T04:40:22.409056+00:00", "duration": "22.4s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765860022.4885066}, "logs/tasks_logs/2025/12/15/task_044524_32e81c_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T04:45:00.000892+00:00", "end_time": "2025-12-16T04:45:24.833323+00:00", "duration": "24.8s", "duration_seconds": 25, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765860324.8487728}, "logs/tasks_logs/2025/12/15/task_045022_0260cb_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T04:50:00.001077+00:00", "end_time": "2025-12-16T04:50:22.028526+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765860622.0037706}, "logs/tasks_logs/2025/12/15/task_045521_ae810c_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T04:55:00.001443+00:00", "end_time": "2025-12-16T04:55:21.231266+00:00", "duration": "21.2s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765860921.329664}, "logs/tasks_logs/2025/12/16/task_000023_e9660f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T00:00:00.001691+00:00", "end_time": "2025-12-17T00:00:23.322832+00:00", "duration": "23.3s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765929623.260788}, "logs/tasks_logs/2025/12/16/task_000522_f979d2_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T00:05:00.001277+00:00", "end_time": "2025-12-17T00:05:22.731608+00:00", "duration": "22.7s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765929922.301771}, "logs/tasks_logs/2025/12/16/task_001021_566c98_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T00:10:00.003841+00:00", "end_time": "2025-12-17T00:10:21.886035+00:00", "duration": "21.9s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765930222.1546154}, "logs/tasks_logs/2025/12/16/task_001522_44fff0_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T00:15:00.001459+00:00", "end_time": "2025-12-17T00:15:22.099831+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765930521.9541478}, "logs/tasks_logs/2025/12/16/task_002021_4adf24_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T00:20:00.003293+00:00", "end_time": "2025-12-17T00:20:21.818551+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765930822.3517015}, "logs/tasks_logs/2025/12/16/task_002522_5ff123_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T00:25:00.002089+00:00", "end_time": "2025-12-17T00:25:22.309602+00:00", "duration": "22.3s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765931122.4454098}, "logs/tasks_logs/2025/12/16/task_003023_47d104_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T00:30:00.004612+00:00", "end_time": "2025-12-17T00:30:23.156862+00:00", "duration": "23.2s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765931422.8539484}, "logs/tasks_logs/2025/12/16/task_003522_3da998_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T00:35:00.002462+00:00", "end_time": "2025-12-17T00:35:22.225485+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765931722.619921}, "logs/tasks_logs/2025/12/16/task_004022_2fba1b_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T00:40:00.001511+00:00", "end_time": "2025-12-17T00:40:22.023708+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765932022.0357182}, "logs/tasks_logs/2025/12/16/task_004523_68f36a_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T00:45:00.001056+00:00", "end_time": "2025-12-17T00:45:23.408315+00:00", "duration": "23.4s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765932322.9724233}, "logs/tasks_logs/2025/12/16/task_005022_76fa93_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T00:50:00.002805+00:00", "end_time": "2025-12-17T00:50:22.159248+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765932622.4538376}, "logs/tasks_logs/2025/12/16/task_005522_6910d2_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T00:55:00.001166+00:00", "end_time": "2025-12-17T00:55:22.108091+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765932922.0017257}, "logs/tasks_logs/2025/12/16/task_010022_00fd7a_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T01:00:00.000345+00:00", "end_time": "2025-12-17T01:00:22.176522+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765933222.7324562}, "logs/tasks_logs/2025/12/16/task_010522_8e7912_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T01:05:00.001569+00:00", "end_time": "2025-12-17T01:05:22.239533+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765933522.4986584}, "logs/tasks_logs/2025/12/16/task_011022_d796d9_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T01:10:00.000816+00:00", "end_time": "2025-12-17T01:10:22.704692+00:00", "duration": "22.7s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765933822.4517448}, "logs/tasks_logs/2025/12/16/task_011522_be018f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T01:15:00.001246+00:00", "end_time": "2025-12-17T01:15:22.127118+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765934122.568066}, "logs/tasks_logs/2025/12/16/task_012022_df47b9_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T01:20:00.002567+00:00", "end_time": "2025-12-17T01:20:22.227390+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765934422.2756622}, "logs/tasks_logs/2025/12/16/task_012523_2214cb_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T01:25:00.001516+00:00", "end_time": "2025-12-17T01:25:23.165823+00:00", "duration": "23.2s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765934722.7899294}, "logs/tasks_logs/2025/12/16/task_013022_a7b217_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T01:30:00.001437+00:00", "end_time": "2025-12-17T01:30:22.133912+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765935022.472441}, "logs/tasks_logs/2025/12/16/task_013521_5fb743_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T01:35:00.002310+00:00", "end_time": "2025-12-17T01:35:21.873967+00:00", "duration": "21.9s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765935321.8142364}, "logs/tasks_logs/2025/12/16/task_014029_9036d2_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T01:40:00.004513+00:00", "end_time": "2025-12-17T01:40:29.840532+00:00", "duration": "29.8s", "duration_seconds": 30, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765935630.223552}, "logs/tasks_logs/2025/12/16/task_014521_e6d037_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T01:45:00.000441+00:00", "end_time": "2025-12-17T01:45:21.824531+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765935922.0427904}, "logs/tasks_logs/2025/12/16/task_015022_5c1b20_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T01:50:00.007861+00:00", "end_time": "2025-12-17T01:50:22.118341+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765936221.9443815}, "logs/tasks_logs/2025/12/16/task_015522_fcd963_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T01:55:00.000903+00:00", "end_time": "2025-12-17T01:55:22.933114+00:00", "duration": "22.9s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765936523.3696976}, "logs/tasks_logs/2025/12/16/task_020022_ac02ba_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T02:00:00.002266+00:00", "end_time": "2025-12-17T02:00:22.958818+00:00", "duration": "23.0s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765936823.0001042}, "logs/tasks_logs/2025/12/16/task_020522_334da7_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T02:05:00.002337+00:00", "end_time": "2025-12-17T02:05:22.131945+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765937121.8077743}, "logs/tasks_logs/2025/12/16/task_021022_cf0fa6_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T02:10:00.001785+00:00", "end_time": "2025-12-17T02:10:21.996802+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765937422.3393955}, "logs/tasks_logs/2025/12/16/task_160022_c2c717_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T16:00:00.001340+00:00", "end_time": "2025-12-16T16:00:22.259437+00:00", "duration": "22.3s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765900822.516559}, "logs/tasks_logs/2025/12/16/task_160522_d2dc84_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T16:05:00.001251+00:00", "end_time": "2025-12-16T16:05:22.098748+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765901122.037586}, "logs/tasks_logs/2025/12/16/task_161023_e92be0_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T16:10:00.004547+00:00", "end_time": "2025-12-16T16:10:23.033414+00:00", "duration": "23.0s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765901423.5737984}, "logs/tasks_logs/2025/12/16/task_161521_1442a1_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T16:15:00.003193+00:00", "end_time": "2025-12-16T16:15:21.742665+00:00", "duration": "21.7s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765901722.0001307}, "logs/tasks_logs/2025/12/16/task_162021_cf1c8d_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T16:20:00.000872+00:00", "end_time": "2025-12-16T16:20:21.159626+00:00", "duration": "21.2s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765902021.089885}, "logs/tasks_logs/2025/12/16/task_162521_5b4378_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T16:25:00.002027+00:00", "end_time": "2025-12-16T16:25:21.803629+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765902322.358555}, "logs/tasks_logs/2025/12/16/task_163022_8c800b_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T16:30:00.000371+00:00", "end_time": "2025-12-16T16:30:22.195333+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765902622.426015}, "logs/tasks_logs/2025/12/16/task_163521_1fcdc9_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T16:35:00.002773+00:00", "end_time": "2025-12-16T16:35:21.627805+00:00", "duration": "21.6s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765902921.51219}, "logs/tasks_logs/2025/12/16/task_164022_ca6597_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T16:40:00.002845+00:00", "end_time": "2025-12-16T16:40:22.081411+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765903222.592272}, "logs/tasks_logs/2025/12/16/task_164522_83e483_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T16:45:00.001371+00:00", "end_time": "2025-12-16T16:45:22.721217+00:00", "duration": "22.7s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765903522.8697705}, "logs/tasks_logs/2025/12/16/task_165022_6b5a1c_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T16:50:00.000837+00:00", "end_time": "2025-12-16T16:50:21.990252+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765903821.8238077}, "logs/tasks_logs/2025/12/16/task_165522_fedc65_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T16:55:00.001898+00:00", "end_time": "2025-12-16T16:55:22.194314+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765904122.6519556}, "logs/tasks_logs/2025/12/16/task_170023_85bc04_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T17:00:00.002971+00:00", "end_time": "2025-12-16T17:00:23.547953+00:00", "duration": "23.5s", "duration_seconds": 24, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765904423.621485}, "logs/tasks_logs/2025/12/16/task_170522_c3e09d_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T17:05:00.003987+00:00", "end_time": "2025-12-16T17:05:22.696293+00:00", "duration": "22.7s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765904722.42944}, "logs/tasks_logs/2025/12/16/task_171021_b27538_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T17:10:00.002023+00:00", "end_time": "2025-12-16T17:10:21.797095+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765905022.229454}, "logs/tasks_logs/2025/12/16/task_171522_5f417f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T17:15:00.001044+00:00", "end_time": "2025-12-16T17:15:22.739849+00:00", "duration": "22.7s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765905322.7781646}, "logs/tasks_logs/2025/12/16/task_172022_5a6f6e_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T17:20:00.002964+00:00", "end_time": "2025-12-16T17:20:22.871898+00:00", "duration": "22.9s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765905622.5437186}, "logs/tasks_logs/2025/12/16/task_172521_961628_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T17:25:00.001452+00:00", "end_time": "2025-12-16T17:25:21.783057+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765905922.1480713}, "logs/tasks_logs/2025/12/16/task_173022_50acaa_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T17:30:00.001000+00:00", "end_time": "2025-12-16T17:30:21.988563+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765906222.006048}, "logs/tasks_logs/2025/12/16/task_173523_680a9f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T17:35:00.003594+00:00", "end_time": "2025-12-16T17:35:23.096109+00:00", "duration": "23.1s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765906522.717008}, "logs/tasks_logs/2025/12/16/task_174021_a59171_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T17:40:00.000842+00:00", "end_time": "2025-12-16T17:40:21.731006+00:00", "duration": "21.7s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765906822.04611}, "logs/tasks_logs/2025/12/16/task_174522_66e0be_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T17:45:00.003456+00:00", "end_time": "2025-12-16T17:45:22.519590+00:00", "duration": "22.5s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765907122.5653095}, "logs/tasks_logs/2025/12/16/task_175023_34379f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T17:50:00.000704+00:00", "end_time": "2025-12-16T17:50:23.165146+00:00", "duration": "23.2s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765907423.7146506}, "logs/tasks_logs/2025/12/16/task_175522_d72779_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T17:55:00.001072+00:00", "end_time": "2025-12-16T17:55:22.382579+00:00", "duration": "22.4s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765907722.6200879}, "logs/tasks_logs/2025/12/16/task_180023_add4ab_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T18:00:00.004221+00:00", "end_time": "2025-12-16T18:00:23.304241+00:00", "duration": "23.3s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765908023.1503887}, "logs/tasks_logs/2025/12/16/task_180522_00c1b6_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T18:05:00.001865+00:00", "end_time": "2025-12-16T18:05:22.446985+00:00", "duration": "22.4s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765908322.9788208}, "logs/tasks_logs/2025/12/16/task_181021_41a15c_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T18:10:00.004078+00:00", "end_time": "2025-12-16T18:10:21.943931+00:00", "duration": "21.9s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765908622.1413865}, "logs/tasks_logs/2025/12/16/task_181523_8b6ce6_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T18:15:00.000802+00:00", "end_time": "2025-12-16T18:15:23.611799+00:00", "duration": "23.6s", "duration_seconds": 24, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765908923.4053197}, "logs/tasks_logs/2025/12/16/task_182022_785ecd_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T18:20:00.004916+00:00", "end_time": "2025-12-16T18:20:22.102495+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765909222.591298}, "logs/tasks_logs/2025/12/16/task_182522_afa1d5_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T18:25:00.002361+00:00", "end_time": "2025-12-16T18:25:22.270800+00:00", "duration": "22.3s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765909522.4100308}, "logs/tasks_logs/2025/12/16/task_183023_8cbf5a_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T18:30:00.002962+00:00", "end_time": "2025-12-16T18:30:23.795806+00:00", "duration": "23.8s", "duration_seconds": 24, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765909823.5219345}, "logs/tasks_logs/2025/12/16/task_183522_4bac52_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T18:35:00.001109+00:00", "end_time": "2025-12-16T18:35:22.328375+00:00", "duration": "22.3s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765910122.7542355}, "logs/tasks_logs/2025/12/16/task_184022_c52371_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T18:40:00.004098+00:00", "end_time": "2025-12-16T18:40:22.047806+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765910422.126057}, "logs/tasks_logs/2025/12/16/task_184523_978ce1_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T18:45:00.002183+00:00", "end_time": "2025-12-16T18:45:23.324949+00:00", "duration": "23.3s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765910723.0005238}, "logs/tasks_logs/2025/12/16/task_185022_38d0b4_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T18:50:00.002852+00:00", "end_time": "2025-12-16T18:50:22.094942+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765911022.455437}, "logs/tasks_logs/2025/12/16/task_185522_af4c28_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T18:55:00.003944+00:00", "end_time": "2025-12-16T18:55:22.195575+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765911322.1992922}, "logs/tasks_logs/2025/12/16/task_190023_4ae299_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T19:00:00.003964+00:00", "end_time": "2025-12-16T19:00:23.019614+00:00", "duration": "23.0s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765911622.625362}, "logs/tasks_logs/2025/12/16/task_190522_711ac1_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T19:05:00.003790+00:00", "end_time": "2025-12-16T19:05:22.155177+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765911922.4537234}, "logs/tasks_logs/2025/12/16/task_191021_59e52f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T19:10:00.001365+00:00", "end_time": "2025-12-16T19:10:21.763589+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765912221.7072203}, "logs/tasks_logs/2025/12/16/task_191522_9a448f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T19:15:00.001964+00:00", "end_time": "2025-12-16T19:15:22.118693+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765912522.6937475}, "logs/tasks_logs/2025/12/16/task_192022_bfaec4_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T19:20:00.001879+00:00", "end_time": "2025-12-16T19:20:22.160778+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765912822.3839474}, "logs/tasks_logs/2025/12/16/task_192522_3f2600_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T19:25:00.002475+00:00", "end_time": "2025-12-16T19:25:22.518223+00:00", "duration": "22.5s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765913122.3509648}, "logs/tasks_logs/2025/12/16/task_193022_fad19a_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T19:30:00.003991+00:00", "end_time": "2025-12-16T19:30:22.326045+00:00", "duration": "22.3s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765913422.8283367}, "logs/tasks_logs/2025/12/16/task_193524_e8bd2c_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T19:35:00.001845+00:00", "end_time": "2025-12-16T19:35:24.058576+00:00", "duration": "24.1s", "duration_seconds": 24, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765913724.1349576}, "logs/tasks_logs/2025/12/16/task_194023_0d0889_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T19:40:00.001406+00:00", "end_time": "2025-12-16T19:40:23.312573+00:00", "duration": "23.3s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765914023.0448039}, "logs/tasks_logs/2025/12/16/task_194521_ccce58_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T19:45:00.000855+00:00", "end_time": "2025-12-16T19:45:21.731667+00:00", "duration": "21.7s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765914322.1766877}, "logs/tasks_logs/2025/12/16/task_195022_19879a_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T19:50:00.002691+00:00", "end_time": "2025-12-16T19:50:21.965032+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765914622.0493245}, "logs/tasks_logs/2025/12/16/task_195523_35be0f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T19:55:00.000810+00:00", "end_time": "2025-12-16T19:55:23.041983+00:00", "duration": "23.0s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765914922.7155395}, "logs/tasks_logs/2025/12/16/task_200024_41b4a6_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T20:00:00.000478+00:00", "end_time": "2025-12-16T20:00:24.491185+00:00", "duration": "24.5s", "duration_seconds": 24, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765915224.7781982}, "logs/tasks_logs/2025/12/16/task_200521_e49c56_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T20:05:00.002332+00:00", "end_time": "2025-12-16T20:05:21.800181+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765915521.8078542}, "logs/tasks_logs/2025/12/16/task_201022_b296b4_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T20:10:00.003113+00:00", "end_time": "2025-12-16T20:10:22.636210+00:00", "duration": "22.6s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765915822.251676}, "logs/tasks_logs/2025/12/16/task_201522_9f9d0d_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T20:15:00.002172+00:00", "end_time": "2025-12-16T20:15:22.038178+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765916122.328154}, "logs/tasks_logs/2025/12/16/task_202021_8c9a8a_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T20:20:00.003032+00:00", "end_time": "2025-12-16T20:20:21.782050+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765916421.7241356}, "logs/tasks_logs/2025/12/16/task_202522_213b34_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T20:25:00.000328+00:00", "end_time": "2025-12-16T20:25:22.048860+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765916722.6261876}, "logs/tasks_logs/2025/12/16/task_203022_6fd4b3_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T20:30:00.002462+00:00", "end_time": "2025-12-16T20:30:22.198084+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765917022.4282155}, "logs/tasks_logs/2025/12/16/task_203522_5a1257_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T20:35:00.000460+00:00", "end_time": "2025-12-16T20:35:22.123667+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765917322.0964074}, "logs/tasks_logs/2025/12/16/task_204021_f766bc_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T20:40:00.002662+00:00", "end_time": "2025-12-16T20:40:21.618552+00:00", "duration": "21.6s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765917622.141592}, "logs/tasks_logs/2025/12/16/task_204521_86322a_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T20:45:00.001593+00:00", "end_time": "2025-12-16T20:45:21.639286+00:00", "duration": "21.6s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765917921.8145435}, "logs/tasks_logs/2025/12/16/task_205023_84f63e_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T20:50:00.004044+00:00", "end_time": "2025-12-16T20:50:23.063726+00:00", "duration": "23.1s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765918222.8248272}, "logs/tasks_logs/2025/12/16/task_205522_9893a7_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T20:55:00.001925+00:00", "end_time": "2025-12-16T20:55:22.240451+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765918522.6793828}, "logs/tasks_logs/2025/12/16/task_210021_78424e_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T21:00:00.002079+00:00", "end_time": "2025-12-16T21:00:21.848489+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765918821.9470263}, "logs/tasks_logs/2025/12/16/task_210523_8fc210_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T21:05:00.002542+00:00", "end_time": "2025-12-16T21:05:22.991588+00:00", "duration": "23.0s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765919122.6920433}, "logs/tasks_logs/2025/12/16/task_211021_1cf786_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T21:10:00.004120+00:00", "end_time": "2025-12-16T21:10:21.700450+00:00", "duration": "21.7s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765919422.0764692}, "logs/tasks_logs/2025/12/16/task_211522_800dc7_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T21:15:00.000489+00:00", "end_time": "2025-12-16T21:15:22.087418+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765919722.0979855}, "logs/tasks_logs/2025/12/16/task_212022_83665b_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T21:20:00.002001+00:00", "end_time": "2025-12-16T21:20:22.703547+00:00", "duration": "22.7s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765920022.3214314}, "logs/tasks_logs/2025/12/16/task_212521_d300ec_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T21:25:00.001597+00:00", "end_time": "2025-12-16T21:25:21.835009+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765920322.1319864}, "logs/tasks_logs/2025/12/16/task_213021_23acac_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T21:30:00.000468+00:00", "end_time": "2025-12-16T21:30:21.885080+00:00", "duration": "21.9s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765920621.8199313}, "logs/tasks_logs/2025/12/16/task_213522_f8a92a_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T21:35:00.002345+00:00", "end_time": "2025-12-16T21:35:22.095959+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765920922.6697466}, "logs/tasks_logs/2025/12/16/task_214022_a15be5_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T21:40:00.002694+00:00", "end_time": "2025-12-16T21:40:22.019100+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765921222.243726}, "logs/tasks_logs/2025/12/16/task_214521_f5a80f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T21:45:00.001250+00:00", "end_time": "2025-12-16T21:45:21.621971+00:00", "duration": "21.6s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765921521.47233}, "logs/tasks_logs/2025/12/16/task_215021_f1126b_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T21:50:00.003124+00:00", "end_time": "2025-12-16T21:50:21.832494+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765921822.3326855}, "logs/tasks_logs/2025/12/16/task_215522_b683aa_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T21:55:00.000928+00:00", "end_time": "2025-12-16T21:55:22.271288+00:00", "duration": "22.3s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765922122.376749}, "logs/tasks_logs/2025/12/16/task_220023_40a13b_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T22:00:00.001336+00:00", "end_time": "2025-12-16T22:00:23.236798+00:00", "duration": "23.2s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765922422.9350855}, "logs/tasks_logs/2025/12/16/task_220521_574b4c_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T22:05:00.002708+00:00", "end_time": "2025-12-16T22:05:21.764559+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765922722.16448}, "logs/tasks_logs/2025/12/16/task_221021_9bdae9_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T22:10:00.003591+00:00", "end_time": "2025-12-16T22:10:21.626940+00:00", "duration": "21.6s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765923021.6740224}, "logs/tasks_logs/2025/12/16/task_221523_6926f4_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T22:15:00.001492+00:00", "end_time": "2025-12-16T22:15:23.058675+00:00", "duration": "23.1s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765923322.6713548}, "logs/tasks_logs/2025/12/16/task_222021_fb97d9_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T22:20:00.002200+00:00", "end_time": "2025-12-16T22:20:21.941627+00:00", "duration": "21.9s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765923622.2478209}, "logs/tasks_logs/2025/12/16/task_222521_78889d_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T22:25:00.002777+00:00", "end_time": "2025-12-16T22:25:21.934784+00:00", "duration": "21.9s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765923921.8770857}, "logs/tasks_logs/2025/12/16/task_223022_7b953d_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T22:30:00.001447+00:00", "end_time": "2025-12-16T22:30:22.210669+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765924222.7933707}, "logs/tasks_logs/2025/12/16/task_223521_b3b3e3_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T22:35:00.001216+00:00", "end_time": "2025-12-16T22:35:21.912473+00:00", "duration": "21.9s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765924522.1458566}, "logs/tasks_logs/2025/12/16/task_224021_7dc438_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T22:40:00.005733+00:00", "end_time": "2025-12-16T22:40:21.687338+00:00", "duration": "21.7s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765924821.5437381}, "logs/tasks_logs/2025/12/16/task_224522_aca8a5_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T22:45:00.001801+00:00", "end_time": "2025-12-16T22:45:21.978267+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765925122.474493}, "logs/tasks_logs/2025/12/16/task_225022_20da2c_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T22:50:00.001432+00:00", "end_time": "2025-12-16T22:50:22.919898+00:00", "duration": "22.9s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765925423.019903}, "logs/tasks_logs/2025/12/16/task_225522_a69b12_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T22:55:00.002548+00:00", "end_time": "2025-12-16T22:55:22.943285+00:00", "duration": "22.9s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765925722.6537414}, "logs/tasks_logs/2025/12/16/task_230022_4dd196_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T23:00:00.002727+00:00", "end_time": "2025-12-16T23:00:22.756352+00:00", "duration": "22.8s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765926023.1293297}, "logs/tasks_logs/2025/12/16/task_230522_7076ba_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T23:05:00.001126+00:00", "end_time": "2025-12-16T23:05:22.201017+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765926322.224848}, "logs/tasks_logs/2025/12/16/task_231023_24db19_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T23:10:00.000583+00:00", "end_time": "2025-12-16T23:10:23.205811+00:00", "duration": "23.2s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765926622.8227215}, "logs/tasks_logs/2025/12/16/task_231522_2c73cd_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T23:15:00.004331+00:00", "end_time": "2025-12-16T23:15:22.525708+00:00", "duration": "22.5s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765926922.9096906}, "logs/tasks_logs/2025/12/16/task_232022_702bb0_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T23:20:00.001861+00:00", "end_time": "2025-12-16T23:20:22.129431+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765927222.0429885}, "logs/tasks_logs/2025/12/16/task_232522_3e5345_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T23:25:00.000657+00:00", "end_time": "2025-12-16T23:25:22.169953+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765927522.7350652}, "logs/tasks_logs/2025/12/16/task_233022_492bc5_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T23:30:00.004598+00:00", "end_time": "2025-12-16T23:30:22.162525+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765927822.3537772}, "logs/tasks_logs/2025/12/16/task_233521_67386e_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T23:35:00.001193+00:00", "end_time": "2025-12-16T23:35:21.566539+00:00", "duration": "21.6s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765928121.3969734}, "logs/tasks_logs/2025/12/16/task_234021_60f90d_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T23:40:00.002714+00:00", "end_time": "2025-12-16T23:40:21.819708+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765928422.3027668}, "logs/tasks_logs/2025/12/16/task_234521_239523_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T23:45:00.000429+00:00", "end_time": "2025-12-16T23:45:21.803072+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765928721.9099748}, "logs/tasks_logs/2025/12/16/task_235022_14f9c6_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T23:50:00.001449+00:00", "end_time": "2025-12-16T23:50:22.935406+00:00", "duration": "22.9s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765929022.6182308}, "logs/tasks_logs/2025/12/16/task_235522_5b23e8_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T23:55:00.002294+00:00", "end_time": "2025-12-16T23:55:21.966099+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765929322.3398511}, "logs/tasks_logs/2025/12/16/task_021519_f4adc4_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T02:15:00.002578+00:00", "end_time": "2025-12-17T02:15:19.369007+00:00", "duration": "19.4s", "duration_seconds": 19, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765937719.4281588}, "logs/tasks_logs/2025/12/16/task_022019_e6c1ba_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T02:20:00.004172+00:00", "end_time": "2025-12-17T02:20:19.716615+00:00", "duration": "19.7s", "duration_seconds": 20, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765938019.3721755}, "logs/tasks_logs/2025/12/16/task_022522_04dfdd_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T02:25:00.003450+00:00", "end_time": "2025-12-17T02:25:21.960086+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765938322.202679}, "logs/tasks_logs/2025/12/16/task_023022_b1b0c8_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T02:30:00.003305+00:00", "end_time": "2025-12-17T02:30:22.301918+00:00", "duration": "22.3s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765938622.107978}, "logs/tasks_logs/2025/12/16/task_023521_d0d8fb_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T02:35:00.003881+00:00", "end_time": "2025-12-17T02:35:21.502773+00:00", "duration": "21.5s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765938921.992702}, "logs/tasks_logs/2025/12/16/task_024023_a9d437_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T02:40:00.004159+00:00", "end_time": "2025-12-17T02:40:23.333312+00:00", "duration": "23.3s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765939223.3620126}, "logs/tasks_logs/2025/12/16/task_030021_33db90_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T03:00:00.001788+00:00", "end_time": "2025-12-17T03:00:21.876216+00:00", "duration": "21.9s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765940422.4948475}, "logs/tasks_logs/2025/12/16/task_030521_4c448b_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T03:05:00.002438+00:00", "end_time": "2025-12-17T03:05:21.013998+00:00", "duration": "21.0s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765940721.2717137}, "logs/tasks_logs/2025/12/16/task_031021_39ea1d_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T03:10:00.004833+00:00", "end_time": "2025-12-17T03:10:21.382810+00:00", "duration": "21.4s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765941021.1991906}, "logs/tasks_logs/2025/12/16/task_041523_d7ef4d_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T04:15:00.003863+00:00", "end_time": "2025-12-17T04:15:23.570792+00:00", "duration": "23.6s", "duration_seconds": 24, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765944923.5170338}, "logs/tasks_logs/2025/12/16/task_042023_5ce285_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T04:20:00.003849+00:00", "end_time": "2025-12-17T04:20:23.031011+00:00", "duration": "23.0s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765945222.5846684}, "logs/tasks_logs/2025/12/16/task_042521_0b8098_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T04:25:00.001229+00:00", "end_time": "2025-12-17T04:25:21.781083+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765945522.0300999}, "logs/tasks_logs/2025/12/16/task_043021_8b652a_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T04:30:00.003718+00:00", "end_time": "2025-12-17T04:30:21.704055+00:00", "duration": "21.7s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765945821.5574398}, "logs/tasks_logs/2025/12/16/task_043522_ecf318_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T04:35:00.003664+00:00", "end_time": "2025-12-17T04:35:22.080858+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765946122.6176205}, "logs/tasks_logs/2025/12/16/task_044022_66579d_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T04:40:00.003016+00:00", "end_time": "2025-12-17T04:40:21.994145+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765946422.110164}, "logs/tasks_logs/2025/12/16/task_044523_1b6d8b_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T04:45:00.004699+00:00", "end_time": "2025-12-17T04:45:23.220062+00:00", "duration": "23.2s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765946722.895059}, "logs/tasks_logs/2025/12/16/task_045022_59d421_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T04:50:00.001163+00:00", "end_time": "2025-12-17T04:50:22.177034+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765947022.5356846}, "logs/tasks_logs/2025/12/16/task_045522_b437d1_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T04:55:00.001260+00:00", "end_time": "2025-12-17T04:55:22.138108+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765947322.0749435}, "logs/tasks_logs/2025/12/17/task_050023_e6f119_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T05:00:00.002787+00:00", "end_time": "2025-12-17T05:00:23.700900+00:00", "duration": "23.7s", "duration_seconds": 24, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765947624.260552}, "logs/tasks_logs/2025/12/17/task_050522_408341_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T05:05:00.001334+00:00", "end_time": "2025-12-17T05:05:21.974173+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765947922.183729}, "logs/tasks_logs/2025/12/17/task_051021_72488a_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T05:10:00.002763+00:00", "end_time": "2025-12-17T05:10:21.955022+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765948221.7390192}, "logs/tasks_logs/2025/12/17/task_134454_3f9162_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T13:43:24.249479+00:00", "end_time": "2025-12-17T13:44:54.173319+00:00", "duration": "89.9s", "duration_seconds": 90, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765979094.0371385}, "logs/tasks_logs/2025/12/17/task_134517_6e25c9_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T13:45:00.001243+00:00", "end_time": "2025-12-17T13:45:17.532252+00:00", "duration": "17.5s", "duration_seconds": 18, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765979117.5830808}, "logs/tasks_logs/2025/12/17/task_181023_74e71b_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T18:10:00.001013+00:00", "end_time": "2025-12-17T18:10:23.468863+00:00", "duration": "23.5s", "duration_seconds": 24, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765995024.0480797}, "logs/tasks_logs/2025/12/17/task_181523_3fab5f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T18:15:00.002531+00:00", "end_time": "2025-12-17T18:15:23.287547+00:00", "duration": "23.3s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765995323.3275945}, "logs/tasks_logs/2025/12/17/task_183028_ee7107_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T18:30:00.003612+00:00", "end_time": "2025-12-17T18:30:28.415687+00:00", "duration": "28.4s", "duration_seconds": 28, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765996228.591651}, "logs/tasks_logs/2025/12/17/task_183522_6b7315_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T18:35:00.001940+00:00", "end_time": "2025-12-17T18:35:22.765175+00:00", "duration": "22.8s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765996522.4610589}, "logs/tasks_logs/2025/12/17/task_184021_f23c98_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T18:40:00.003517+00:00", "end_time": "2025-12-17T18:40:21.259143+00:00", "duration": "21.3s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765996821.3514643}, "logs/tasks_logs/2025/12/17/task_184522_8e8288_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T18:45:00.004696+00:00", "end_time": "2025-12-17T18:45:22.230340+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765997122.3773909}, "logs/tasks_logs/2025/12/17/task_185024_228aef_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T18:50:00.003311+00:00", "end_time": "2025-12-17T18:50:24.245780+00:00", "duration": "24.2s", "duration_seconds": 24, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765997423.939754}, "logs/tasks_logs/2025/12/17/task_185521_e50986_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T18:55:00.001117+00:00", "end_time": "2025-12-17T18:55:21.691261+00:00", "duration": "21.7s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765997722.0974045}, "logs/tasks_logs/2025/12/17/task_190021_858e25_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T19:00:00.000893+00:00", "end_time": "2025-12-17T19:00:21.760503+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765998021.7602296}, "logs/tasks_logs/2025/12/17/task_190522_c4127c_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T19:05:00.001146+00:00", "end_time": "2025-12-17T19:05:22.253628+00:00", "duration": "22.3s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765998322.895556}, "logs/tasks_logs/2025/12/17/task_191022_b2c756_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T19:10:00.002708+00:00", "end_time": "2025-12-17T19:10:22.607062+00:00", "duration": "22.6s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765998622.8464992}, "logs/tasks_logs/2025/12/17/task_191523_d74377_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T19:15:00.003926+00:00", "end_time": "2025-12-17T19:15:23.234499+00:00", "duration": "23.2s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765998923.0849602}, "logs/tasks_logs/2025/12/17/task_192022_22cebc_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T19:20:00.002170+00:00", "end_time": "2025-12-17T19:20:22.347027+00:00", "duration": "22.3s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765999222.8439777}, "logs/tasks_logs/2025/12/17/task_192540_70af8a_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T19:25:00.177790+00:00", "end_time": "2025-12-17T19:25:39.709080+00:00", "duration": "39.5s", "duration_seconds": 40, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765999540.5860019}, "logs/tasks_logs/2025/12/17/task_193022_d0f3f7_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T19:30:00.002390+00:00", "end_time": "2025-12-17T19:30:22.658340+00:00", "duration": "22.7s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765999822.2988267}, "logs/tasks_logs/2025/12/17/task_193526_2e8a89_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T19:35:00.010867+00:00", "end_time": "2025-12-17T19:35:26.797215+00:00", "duration": "26.8s", "duration_seconds": 27, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766000126.9889202}, "logs/tasks_logs/2025/12/17/task_194027_bc01e0_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T19:40:00.002404+00:00", "end_time": "2025-12-17T19:40:27.134281+00:00", "duration": "27.1s", "duration_seconds": 27, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766000426.8383336}, "logs/tasks_logs/2025/12/17/task_194522_c59adc_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T19:45:00.003210+00:00", "end_time": "2025-12-17T19:45:22.117833+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766000722.678129}, "logs/tasks_logs/2025/12/17/task_195022_a8b2cf_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T19:50:00.002045+00:00", "end_time": "2025-12-17T19:50:22.209639+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766001022.3078165}, "logs/tasks_logs/2025/12/17/task_195522_5ead1c_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T19:55:00.000923+00:00", "end_time": "2025-12-17T19:55:22.678850+00:00", "duration": "22.7s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766001322.2990556}, "logs/tasks_logs/2025/12/17/task_200023_baedba_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T20:00:00.002925+00:00", "end_time": "2025-12-17T20:00:23.103647+00:00", "duration": "23.1s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766001623.3911219}, "logs/tasks_logs/2025/12/17/task_200521_bc5ae5_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T20:05:00.002405+00:00", "end_time": "2025-12-17T20:05:21.708009+00:00", "duration": "21.7s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766001921.5968606}, "logs/tasks_logs/2025/12/17/task_201021_2b514c_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T20:10:00.001322+00:00", "end_time": "2025-12-17T20:10:21.317041+00:00", "duration": "21.3s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766002221.8901722}, "logs/tasks_logs/2025/12/17/task_201521_71ff85_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T20:15:00.000857+00:00", "end_time": "2025-12-17T20:15:21.059555+00:00", "duration": "21.1s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766002521.197295}, "logs/tasks_logs/2025/12/17/task_202024_96f2a2_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T20:20:00.000941+00:00", "end_time": "2025-12-17T20:20:24.267361+00:00", "duration": "24.3s", "duration_seconds": 24, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766002823.8353915}, "logs/tasks_logs/2025/12/17/task_202522_085222_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T20:25:00.004144+00:00", "end_time": "2025-12-17T20:25:22.577356+00:00", "duration": "22.6s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766003122.8998528}, "logs/tasks_logs/2025/12/17/task_203041_e282d5_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T20:30:00.005839+00:00", "end_time": "2025-12-17T20:30:39.964695+00:00", "duration": "40.0s", "duration_seconds": 40, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766003441.42978}, "logs/tasks_logs/2025/12/17/task_203522_71d5e4_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T20:35:00.000974+00:00", "end_time": "2025-12-17T20:35:22.602478+00:00", "duration": "22.6s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766003723.1191773}} \ No newline at end of file +{"logs/tasks_logs/2025/12/10/task_190745_1dfd00_localhost_Vérification_de_santé_completed.md": {"start_time": "2025-12-10T19:07:36.061183+00:00", "end_time": "2025-12-10T19:07:41.383337+00:00", "duration": "5.3s", "duration_seconds": 5, "hosts": ["localhost"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "manual", "task_name": "Vérification de santé", "target": "localhost", "_mtime": 1765393664.8381965}, "logs/tasks_logs/2025/12/10/task_191828_97e453_localhost_Vérification_de_santé_completed.md": {"start_time": "2025-12-10T19:18:21.019974+00:00", "end_time": "2025-12-10T19:18:25.003643+00:00", "duration": "5.7s", "duration_seconds": 6, "hosts": ["localhost"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "manual", "task_name": "Vérification de santé", "target": "localhost", "_mtime": 1765394309.350344}, "logs/tasks_logs/2025/12/10/task_192102_ca9804_raspi.8gb.home_Ad-hoc_uptime_failed.md": {"start_time": "2025-12-10T19:19:55.447932+00:00", "end_time": "2025-12-10T19:21:02.140007+00:00", "duration": "70.09s", "duration_seconds": 70, "hosts": [], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: uptime", "target": "raspi.8gb.home", "_mtime": 1765394462.8330834}, "logs/tasks_logs/2025/12/10/task_192248_380eb9_raspi.8gb.home_Ad-hoc_uptime_failed.md": {"start_time": "2025-12-10T19:21:40.846352+00:00", "end_time": "2025-12-10T19:22:48.694300+00:00", "duration": "71.23s", "duration_seconds": 71, "hosts": [], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: uptime", "target": "raspi.8gb.home", "_mtime": 1765394568.7535894}, "logs/tasks_logs/2025/12/10/task_192523_7334cc_raspi.8gb.home_Ad-hoc_uptime_failed.md": {"start_time": "2025-12-10T19:24:51.907977+00:00", "end_time": "2025-12-10T19:25:20.383977+00:00", "duration": "30.13s", "duration_seconds": 30, "hosts": [], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: uptime", "target": "raspi.8gb.home", "_mtime": 1765394723.921616}, "logs/tasks_logs/2025/12/10/task_023456_65181e_ali2v.xeon.home_Ad-hoc_uptime_failed.md": {"start_time": "2025-12-11T02:33:47.305001+00:00", "end_time": "2025-12-11T02:34:56.399226+00:00", "duration": "70.03s", "duration_seconds": 70, "hosts": [], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: uptime", "target": "ali2v.xeon.home", "_mtime": 1765420497.2153156}, "logs/tasks_logs/2025/12/11/task_210400_966a28_ali2v.xeon.home_Vérification_de_santé_completed.md": {"start_time": "2025-12-11T21:03:45.245764+00:00", "end_time": "2025-12-11T21:03:51.828982+00:00", "duration": "6.6s", "duration_seconds": 7, "hosts": ["ali2v.xeon.home"], "category": "Autre", "subcategory": null, "target_type": "host", "source_type": "manual", "task_name": "Vérification de santé", "target": "ali2v.xeon.home", "_mtime": 1765487041.5461578}, "logs/tasks_logs/2025/12/11/task_211845_97a4fa_orangepi.pc.home_Playbook_Vm_Upgrade_completed.md": {"start_time": "2025-12-11T21:09:08.734920+00:00", "end_time": "2025-12-11T21:18:45.745263+00:00", "duration": "608.7s", "duration_seconds": 609, "hosts": ["orangepi.pc.home"], "category": "Playbook", "subcategory": "Upgrade", "target_type": "host", "source_type": "manual", "task_name": "Playbook: Vm Upgrade", "target": "orangepi.pc.home", "_mtime": 1765487925.0594838}, "logs/tasks_logs/2025/12/11/task_213013_179d63_orangepi.pc.home_Playbook_Vm_Upgrade_completed.md": {"start_time": "2025-12-11T21:29:28.403060+00:00", "end_time": "2025-12-11T21:30:09.303740+00:00", "duration": "42.6s", "duration_seconds": 43, "hosts": ["orangepi.pc.home"], "category": "Playbook", "subcategory": "Upgrade", "target_type": "host", "source_type": "manual", "task_name": "Playbook: Vm Upgrade", "target": "orangepi.pc.home", "_mtime": 1765488613.299506}, "logs/tasks_logs/2025/12/11/task_003323_97f823_ali2v.xeon.home_Vérification_de_santé_completed.md": {"start_time": "2025-12-12T00:33:14.935783+00:00", "end_time": "2025-12-12T00:33:20.188583+00:00", "duration": "5.2s", "duration_seconds": 5, "hosts": ["ali2v.xeon.home"], "category": "Autre", "subcategory": null, "target_type": "host", "source_type": "manual", "task_name": "Vérification de santé", "target": "ali2v.xeon.home", "_mtime": 1765499603.9713528}, "logs/tasks_logs/2025/12/12/task_130332_839ebc_role_proxmox_Ad-hoc_apt-get_install_lm-sensors_completed.md": {"start_time": "2025-12-12T13:03:12.797836+00:00", "end_time": "2025-12-12T13:03:19.238725+00:00", "duration": "6.44s", "duration_seconds": 6, "hosts": ["ali2v.xeon.home", "hp.nas.home", "hp2.i7.home", "hp3.i5.home", "mimi.pc.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "group", "source_type": "adhoc", "task_name": "Ad-hoc: apt-get install lm-sensors", "target": "role_proxmox", "_mtime": 1765544612.3005567}, "logs/tasks_logs/2025/12/12/task_200137_10bc1a_hp.truenas.home_Playbook_Vm_Reboot_failed.md": {"start_time": "2025-12-12T20:01:24.625767+00:00", "end_time": "2025-12-12T20:01:26.721183+00:00", "duration": "1.9s", "duration_seconds": 2, "hosts": ["hp.truenas.home"], "category": "Playbook", "subcategory": "Reboot", "target_type": "host", "source_type": "manual", "task_name": "Playbook: Vm Reboot", "target": "hp.truenas.home", "_mtime": 1765569697.0462832}, "logs/tasks_logs/2025/12/12/task_215640_637b80_ali2v.xeon.home_Vérification_de_santé_completed.md": {"start_time": "2025-12-12T21:56:30.274245+00:00", "end_time": "2025-12-12T21:56:36.074931+00:00", "duration": "5.8s", "duration_seconds": 6, "hosts": ["ali2v.xeon.home"], "category": "Autre", "subcategory": null, "target_type": "host", "source_type": "manual", "task_name": "Vérification de santé", "target": "ali2v.xeon.home", "_mtime": 1765576600.2905405}, "logs/tasks_logs/2025/12/12/task_051329_a97617_all_[Builtin]_Installer_les_outils_de_base_failed.md": {"start_time": "2025-12-13T04:49:25.373883+00:00", "end_time": "2025-12-13T05:13:20.294853+00:00", "duration": "1434.9s", "duration_seconds": 1435, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "manual", "task_name": "[Builtin] Installer les outils de base", "target": "all", "_mtime": 1765602809.9852695}, "logs/tasks_logs/2025/12/13/task_141805_5aa58a_all_[Builtin]_Installer_les_outils_de_base_failed.md": {"start_time": "2025-12-13T14:15:31.573620+00:00", "end_time": "2025-12-13T14:18:02.749657+00:00", "duration": "151.1s", "duration_seconds": 151, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "manual", "task_name": "[Builtin] Installer les outils de base", "target": "all", "_mtime": 1765635485.3753524}, "logs/tasks_logs/2025/12/13/task_142241_a3ccfc_all_[Builtin]_Installer_les_outils_de_base_failed.md": {"start_time": "2025-12-13T14:20:32.667401+00:00", "end_time": "2025-12-13T14:22:41.089755+00:00", "duration": "128.3s", "duration_seconds": 128, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "manual", "task_name": "[Builtin] Installer les outils de base", "target": "all", "_mtime": 1765635761.1146486}, "logs/tasks_logs/2025/12/13/task_143910_3859ef_all_[Builtin]_Installer_les_outils_de_base_failed.md": {"start_time": "2025-12-13T14:38:21.364007+00:00", "end_time": "2025-12-13T14:39:10.326467+00:00", "duration": "48.9s", "duration_seconds": 49, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "manual", "task_name": "[Builtin] Installer les outils de base", "target": "all", "_mtime": 1765636750.3553755}, "logs/tasks_logs/2025/12/13/task_145937_0665d0_dev.lab.home_Ad-hoc_uptime_failed.md": {"start_time": "2025-12-13T14:59:33.478137+00:00", "end_time": "2025-12-13T14:59:37.394324+00:00", "duration": "3.92s", "duration_seconds": 4, "hosts": ["dev.lab.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: uptime", "target": "dev.lab.home", "_mtime": 1765637977.4208813}, "logs/tasks_logs/2025/12/13/task_150045_ad32ce_dev.lab.home_Ad-hoc_uptime_failed.md": {"start_time": "2025-12-13T15:00:41.295000+00:00", "end_time": "2025-12-13T15:00:45.658222+00:00", "duration": "4.36s", "duration_seconds": 4, "hosts": ["dev.lab.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: uptime", "target": "dev.lab.home", "_mtime": 1765638045.6873624}, "logs/tasks_logs/2025/12/13/task_150159_9a2541_dev.lab.home_Ad-hoc_uptime_failed.md": {"start_time": "2025-12-13T15:01:54.846920+00:00", "end_time": "2025-12-13T15:01:58.994418+00:00", "duration": "4.15s", "duration_seconds": 4, "hosts": ["dev.lab.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: uptime", "target": "dev.lab.home", "_mtime": 1765638119.02243}, "logs/tasks_logs/2025/12/13/task_150850_8a6d1f_dev.lab.home_Ad-hoc_uptime_completed.md": {"start_time": "2025-12-13T15:08:46.045388+00:00", "end_time": "2025-12-13T15:08:50.310425+00:00", "duration": "4.27s", "duration_seconds": 4, "hosts": ["dev.lab.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: uptime", "target": "dev.lab.home", "_mtime": 1765638530.3252249}, "logs/tasks_logs/2025/12/13/task_151108_307942_dev.prod.home_Ad-hoc_uptime_completed.md": {"start_time": "2025-12-13T15:11:04.016377+00:00", "end_time": "2025-12-13T15:11:08.508442+00:00", "duration": "4.49s", "duration_seconds": 4, "hosts": ["dev.prod.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: uptime", "target": "dev.prod.home", "_mtime": 1765638668.523142}, "logs/tasks_logs/2025/12/13/task_151406_82e3d0_role_truenas_Ad-hoc_id_failed.md": {"start_time": "2025-12-13T15:14:01.798208+00:00", "end_time": "2025-12-13T15:14:06.067926+00:00", "duration": "4.27s", "duration_seconds": 4, "hosts": ["ali2v.truenas.home", "hp.truenas.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "group", "source_type": "adhoc", "task_name": "Ad-hoc: id", "target": "role_truenas", "_mtime": 1765638846.088572}, "logs/tasks_logs/2025/12/13/task_190446_308c29_all_[Builtin]_Installer_les_outils_de_base_failed.md": {"start_time": "2025-12-13T19:03:26.668267+00:00", "end_time": "2025-12-13T19:04:46.575844+00:00", "duration": "79.8s", "duration_seconds": 80, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "manual", "task_name": "[Builtin] Installer les outils de base", "target": "all", "_mtime": 1765652686.6074712}, "logs/tasks_logs/2025/12/13/task_190758_cfdf27_all_[Builtin]_Installer_les_outils_de_base_completed.md": {"start_time": "2025-12-13T19:07:03.072874+00:00", "end_time": "2025-12-13T19:07:58.816670+00:00", "duration": "55.7s", "duration_seconds": 56, "hosts": ["ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "manual", "task_name": "[Builtin] Installer les outils de base", "target": "all", "_mtime": 1765652878.8309326}, "logs/tasks_logs/2025/12/14/task_172337_92ed7b_dev.lab.home_Ad-hoc_ls_-l_-etc_completed.md": {"start_time": "2025-12-14T17:23:31.217772+00:00", "end_time": "2025-12-14T17:23:37.834785+00:00", "duration": "6.62s", "duration_seconds": 7, "hosts": ["dev.lab.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: ls -l /etc", "target": "dev.lab.home", "_mtime": 1765733017.822245}, "logs/tasks_logs/2025/12/14/task_172338_98a382_dev.lab.home_Ad-hoc_ls_-l_-etc_failed.md": {"start_time": "2025-12-14T17:23:31.217772+00:00", "end_time": "2025-12-14T17:23:38.005125+00:00", "duration": "6.79s", "duration_seconds": 7, "hosts": ["dev.lab.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "scheduled", "task_name": "Ad-hoc: ls -l /etc", "target": "dev.lab.home", "_mtime": 1765733018.0181484}, "logs/tasks_logs/2025/12/14/task_173430_ca4328_dev.lab.home_Ad-hoc_ls_-l_-etc_completed.md": {"start_time": "2025-12-14T17:34:24.267535+00:00", "end_time": "2025-12-14T17:34:30.965437+00:00", "duration": "6.7s", "duration_seconds": 7, "hosts": ["dev.lab.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: ls -l /etc", "target": "dev.lab.home", "_mtime": 1765733670.9639957}, "logs/tasks_logs/2025/12/14/task_173724_173974_orangepi.pc.home_Ad-hoc_uptime_completed.md": {"start_time": "2025-12-14T17:37:12.498535+00:00", "end_time": "2025-12-14T17:37:24.669055+00:00", "duration": "12.17s", "duration_seconds": 12, "hosts": ["orangepi.pc.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: uptime", "target": "orangepi.pc.home", "_mtime": 1765733844.7343087}, "logs/tasks_logs/2025/12/14/task_180313_867d33_env_lab_Ad-hoc_id_completed.md": {"start_time": "2025-12-14T18:03:05.461073+00:00", "end_time": "2025-12-14T18:03:13.469438+00:00", "duration": "8.01s", "duration_seconds": 8, "hosts": ["dev.lab.home", "media.labb.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "group", "source_type": "adhoc", "task_name": "Ad-hoc: id", "target": "env_lab", "_mtime": 1765735393.5413053}, "logs/tasks_logs/2025/12/14/task_180424_7968d4_env_lab_Ad-hoc_ls_-l_-etc_completed.md": {"start_time": "2025-12-14T18:04:18.573795+00:00", "end_time": "2025-12-14T18:04:24.949144+00:00", "duration": "6.38s", "duration_seconds": 6, "hosts": ["dev.lab.home", "media.labb.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "group", "source_type": "adhoc", "task_name": "Ad-hoc: ls -l /etc", "target": "env_lab", "_mtime": 1765735464.9535613}, "logs/tasks_logs/2025/12/14/task_181253_8e8a07_localhost_Ad-hoc_echo_ws_test_completed.md": {"start_time": "2025-12-14T18:12:51.205868+00:00", "end_time": "2025-12-14T18:12:53.416294+00:00", "duration": "2.21s", "duration_seconds": 2, "hosts": ["localhost"], "category": "Ad-hoc", "subcategory": null, "target_type": "group", "source_type": "adhoc", "task_name": "Ad-hoc: echo ws_test", "target": "localhost", "_mtime": 1765735973.4745686}, "logs/tasks_logs/2025/12/14/task_182035_76cdb3_env_lab_Ad-hoc_python_--version_completed.md": {"start_time": "2025-12-14T18:20:29.840650+00:00", "end_time": "2025-12-14T18:20:35.886572+00:00", "duration": "6.05s", "duration_seconds": 6, "hosts": ["dev.lab.home", "media.labb.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "group", "source_type": "adhoc", "task_name": "Ad-hoc: python --version", "target": "env_lab", "_mtime": 1765736435.8718472}, "logs/tasks_logs/2025/12/14/task_191901_07f977_env_lab_Ad-hoc_date_completed.md": {"start_time": "2025-12-14T19:18:54.397893+00:00", "end_time": "2025-12-14T19:19:01.631247+00:00", "duration": "7.23s", "duration_seconds": 7, "hosts": ["dev.lab.home", "media.labb.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "group", "source_type": "adhoc", "task_name": "Ad-hoc: date", "target": "env_lab", "_mtime": 1765739941.702063}, "logs/tasks_logs/2025/12/14/task_192141_e8b7bc_raspi.8gb.home_Ad-hoc_ls_-l_-home-automation_completed.md": {"start_time": "2025-12-14T19:21:34.376188+00:00", "end_time": "2025-12-14T19:21:41.350093+00:00", "duration": "6.97s", "duration_seconds": 7, "hosts": ["raspi.8gb.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: ls -l /home/automation", "target": "raspi.8gb.home", "_mtime": 1765740101.4198716}, "logs/tasks_logs/2025/12/14/task_194319_b62f75_localhost_Vérification_de_santé_completed.md": {"start_time": "2025-12-14T19:43:13.559077+00:00", "end_time": "2025-12-14T19:43:19.361924+00:00", "duration": "5.8s", "duration_seconds": 6, "hosts": ["localhost"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "manual", "task_name": "Vérification de santé", "target": "localhost", "_mtime": 1765741399.3700576}, "logs/tasks_logs/2025/12/14/task_194428_e46a03_localhost_Vérification_de_santé_completed.md": {"start_time": "2025-12-14T19:44:22.852328+00:00", "end_time": "2025-12-14T19:44:28.406053+00:00", "duration": "5.6s", "duration_seconds": 6, "hosts": ["localhost"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "manual", "task_name": "Vérification de santé", "target": "localhost", "_mtime": 1765741468.373243}, "logs/tasks_logs/2025/12/14/task_192904_cf5816_all_Playbook_Health_Check_completed.md": {"start_time": "2025-12-14T19:28:40.883020+00:00", "end_time": "2025-12-14T19:29:04.357873+00:00", "duration": "23.5s", "duration_seconds": 24, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Playbook", "subcategory": "Health Check", "target_type": "group", "source_type": "manual", "task_name": "Playbook: Health Check", "target": "all", "_mtime": 1765740544.3538277}, "logs/tasks_logs/2025/12/14/task_194745_5bc930_ali2v.xeon.home_Vérification_de_santé_completed.md": {"start_time": "2025-12-14T19:47:33.379967+00:00", "end_time": "2025-12-14T19:47:45.531785+00:00", "duration": "12.2s", "duration_seconds": 12, "hosts": ["ali2v.xeon.home"], "category": "Autre", "subcategory": null, "target_type": "host", "source_type": "manual", "task_name": "Vérification de santé", "target": "ali2v.xeon.home", "_mtime": 1765741665.5088656}, "logs/tasks_logs/2025/12/14/task_194816_32f6c9_automate.prod.home_Ad-hoc_docker_ps_failed.md": {"start_time": "2025-12-14T19:48:11.347824+00:00", "end_time": "2025-12-14T19:48:16.661147+00:00", "duration": "5.31s", "duration_seconds": 5, "hosts": ["automate.prod.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: docker ps", "target": "automate.prod.home", "_mtime": 1765741696.619639}, "logs/tasks_logs/2025/12/14/task_195036_182b4c_automate.prod.home_Ad-hoc_docker_ps_completed.md": {"start_time": "2025-12-14T19:50:30.219845+00:00", "end_time": "2025-12-14T19:50:36.671431+00:00", "duration": "6.45s", "duration_seconds": 6, "hosts": ["automate.prod.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: docker ps", "target": "automate.prod.home", "_mtime": 1765741836.6847632}, "logs/tasks_logs/2025/12/14/task_223122_47954a_ali2v.xeon.home_Vérification_de_santé_completed.md": {"start_time": "2025-12-14T22:31:11.656602+00:00", "end_time": "2025-12-14T22:31:22.133368+00:00", "duration": "10.5s", "duration_seconds": 10, "hosts": ["ali2v.xeon.home"], "category": "Autre", "subcategory": null, "target_type": "host", "source_type": "manual", "task_name": "Vérification de santé", "target": "ali2v.xeon.home", "_mtime": 1765751482.2057157}, "logs/tasks_logs/2025/12/14/task_223206_25a0e9_role_sbc_Ad-hoc_cat_-etc-os-release_completed.md": {"start_time": "2025-12-14T22:31:56.906100+00:00", "end_time": "2025-12-14T22:32:06.347461+00:00", "duration": "9.44s", "duration_seconds": 9, "hosts": ["orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "group", "source_type": "adhoc", "task_name": "Ad-hoc: cat /etc/os-release", "target": "role_sbc", "_mtime": 1765751526.362026}, "logs/tasks_logs/2025/12/15/task_161229_f4bd2b_orangepi.pc.home_Vérification_de_santé_completed.md": {"start_time": "2025-12-15T16:12:05.182436+00:00", "end_time": "2025-12-15T16:12:29.301972+00:00", "duration": "23.6s", "duration_seconds": 24, "hosts": ["orangepi.pc.home"], "category": "Autre", "subcategory": null, "target_type": "host", "source_type": "manual", "task_name": "Vérification de santé", "target": "orangepi.pc.home", "_mtime": 1765815149.2300754}, "logs/tasks_logs/2025/12/15/task_161327_31482a_raspi.4gb.home_Ad-hoc_docker_ps_completed.md": {"start_time": "2025-12-15T16:13:12.229201+00:00", "end_time": "2025-12-15T16:13:27.151598+00:00", "duration": "14.34s", "duration_seconds": 14, "hosts": ["raspi.4gb.home"], "category": "Ad-hoc", "subcategory": null, "target_type": "host", "source_type": "adhoc", "task_name": "Ad-hoc: docker ps", "target": "raspi.4gb.home", "_mtime": 1765815206.901772}, "logs/tasks_logs/2025/12/15/task_194350_2349fa_orangepi.pc.home_Vérification_de_santé_completed.md": {"start_time": "2025-12-15T19:43:30.153362+00:00", "end_time": "2025-12-15T19:43:50.967600+00:00", "duration": "20.8s", "duration_seconds": 21, "hosts": ["orangepi.pc.home"], "category": "Autre", "subcategory": null, "target_type": "host", "source_type": "manual", "task_name": "Vérification de santé", "target": "orangepi.pc.home", "_mtime": 1765827830.990256}, "logs/tasks_logs/2025/12/15/task_230246_1f5ccf_ali2v.xeon.home_Vérification_de_santé_completed.md": {"start_time": "2025-12-15T23:02:34.463100+00:00", "end_time": "2025-12-15T23:02:46.542863+00:00", "duration": "12.1s", "duration_seconds": 12, "hosts": ["ali2v.xeon.home"], "category": "Autre", "subcategory": null, "target_type": "host", "source_type": "manual", "task_name": "Vérification de santé", "target": "ali2v.xeon.home", "_mtime": 1765839766.6611836}, "logs/tasks_logs/2025/12/15/task_231021_a4074f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-15T23:10:00.001753+00:00", "end_time": "2025-12-15T23:10:21.379130+00:00", "duration": "21.4s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765840221.4730206}, "logs/tasks_logs/2025/12/15/task_231521_f2a3f9_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-15T23:15:00.001325+00:00", "end_time": "2025-12-15T23:15:21.318690+00:00", "duration": "21.3s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765840521.3458726}, "logs/tasks_logs/2025/12/15/task_232022_c023aa_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-15T23:20:00.001309+00:00", "end_time": "2025-12-15T23:20:22.060275+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765840822.0466607}, "logs/tasks_logs/2025/12/15/task_232522_d5feef_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-15T23:25:00.000843+00:00", "end_time": "2025-12-15T23:25:22.503852+00:00", "duration": "22.5s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765841122.5786307}, "logs/tasks_logs/2025/12/15/task_233021_ffd83c_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-15T23:30:00.000989+00:00", "end_time": "2025-12-15T23:30:21.496910+00:00", "duration": "21.5s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765841421.542624}, "logs/tasks_logs/2025/12/15/task_233521_bb2c8a_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-15T23:35:00.001058+00:00", "end_time": "2025-12-15T23:35:21.918225+00:00", "duration": "21.9s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765841721.8947015}, "logs/tasks_logs/2025/12/15/task_234022_9677f6_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-15T23:40:00.000428+00:00", "end_time": "2025-12-15T23:40:22.064761+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765842022.1367474}, "logs/tasks_logs/2025/12/15/task_234522_81ba91_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-15T23:45:00.000781+00:00", "end_time": "2025-12-15T23:45:22.793100+00:00", "duration": "22.8s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765842322.846452}, "logs/tasks_logs/2025/12/15/task_000026_2df1b6_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T00:00:00.001546+00:00", "end_time": "2025-12-16T00:00:26.808331+00:00", "duration": "26.8s", "duration_seconds": 27, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765843226.8783145}, "logs/tasks_logs/2025/12/15/task_000524_503429_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T00:05:00.006446+00:00", "end_time": "2025-12-16T00:05:24.604586+00:00", "duration": "24.6s", "duration_seconds": 25, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765843524.6530898}, "logs/tasks_logs/2025/12/15/task_001023_4aba28_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T00:10:00.000978+00:00", "end_time": "2025-12-16T00:10:23.453424+00:00", "duration": "23.5s", "duration_seconds": 24, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765843823.5096781}, "logs/tasks_logs/2025/12/15/task_235024_ec3377_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-15T23:50:00.001523+00:00", "end_time": "2025-12-15T23:50:24.739332+00:00", "duration": "24.7s", "duration_seconds": 25, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765842624.7354023}, "logs/tasks_logs/2025/12/15/task_235525_75433b_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-15T23:55:00.005685+00:00", "end_time": "2025-12-15T23:55:25.293370+00:00", "duration": "25.3s", "duration_seconds": 25, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765842925.3914824}, "logs/tasks_logs/2025/12/15/task_001533_ba8901_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T00:15:00.005162+00:00", "end_time": "2025-12-16T00:15:33.020020+00:00", "duration": "33.0s", "duration_seconds": 33, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765844133.0971594}, "logs/tasks_logs/2025/12/15/task_002032_ca2128_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T00:20:00.003039+00:00", "end_time": "2025-12-16T00:20:32.083832+00:00", "duration": "32.1s", "duration_seconds": 32, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765844432.0989065}, "logs/tasks_logs/2025/12/15/task_002531_cd8da2_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T00:25:00.004602+00:00", "end_time": "2025-12-16T00:25:31.208064+00:00", "duration": "31.2s", "duration_seconds": 31, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765844731.3282177}, "logs/tasks_logs/2025/12/15/task_003032_64531b_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T00:30:00.001906+00:00", "end_time": "2025-12-16T00:30:32.010698+00:00", "duration": "32.0s", "duration_seconds": 32, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765845032.1103263}, "logs/tasks_logs/2025/12/15/task_003531_8fb99f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T00:35:00.001694+00:00", "end_time": "2025-12-16T00:35:31.454701+00:00", "duration": "31.5s", "duration_seconds": 32, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765845331.48583}, "logs/tasks_logs/2025/12/15/task_004032_12cffa_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T00:40:00.004787+00:00", "end_time": "2025-12-16T00:40:32.539048+00:00", "duration": "32.5s", "duration_seconds": 32, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765845632.660104}, "logs/tasks_logs/2025/12/15/task_004531_ea9e23_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T00:45:00.003307+00:00", "end_time": "2025-12-16T00:45:31.400595+00:00", "duration": "31.4s", "duration_seconds": 31, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765845931.5325792}, "logs/tasks_logs/2025/12/15/task_005031_a63f65_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T00:50:00.002572+00:00", "end_time": "2025-12-16T00:50:31.397910+00:00", "duration": "31.4s", "duration_seconds": 31, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765846231.465362}, "logs/tasks_logs/2025/12/15/task_005531_2f673f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T00:55:00.003017+00:00", "end_time": "2025-12-16T00:55:31.764800+00:00", "duration": "31.8s", "duration_seconds": 32, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765846531.8311512}, "logs/tasks_logs/2025/12/15/task_010022_59512f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T01:00:00.000539+00:00", "end_time": "2025-12-16T01:00:22.761178+00:00", "duration": "22.8s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765846822.7966993}, "logs/tasks_logs/2025/12/15/task_010522_8a0673_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T01:05:00.001063+00:00", "end_time": "2025-12-16T01:05:22.917696+00:00", "duration": "22.9s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765847123.0001187}, "logs/tasks_logs/2025/12/15/task_011021_c3d508_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T01:10:00.001100+00:00", "end_time": "2025-12-16T01:10:21.154299+00:00", "duration": "21.2s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765847421.1913917}, "logs/tasks_logs/2025/12/15/task_011521_7e3bbc_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T01:15:00.000904+00:00", "end_time": "2025-12-16T01:15:21.722933+00:00", "duration": "21.7s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765847721.688858}, "logs/tasks_logs/2025/12/15/task_012022_d2ff68_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T01:20:00.000967+00:00", "end_time": "2025-12-16T01:20:22.483971+00:00", "duration": "22.5s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765848022.5676458}, "logs/tasks_logs/2025/12/15/task_012522_dfa38b_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T01:25:00.001100+00:00", "end_time": "2025-12-16T01:25:22.121727+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765848322.1769698}, "logs/tasks_logs/2025/12/15/task_013022_8fc95f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T01:30:00.000333+00:00", "end_time": "2025-12-16T01:30:22.498821+00:00", "duration": "22.5s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765848622.4831846}, "logs/tasks_logs/2025/12/15/task_013522_087c74_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T01:35:00.001369+00:00", "end_time": "2025-12-16T01:35:22.366948+00:00", "duration": "22.4s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765848922.442564}, "logs/tasks_logs/2025/12/15/task_014022_4dbad2_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T01:40:00.000661+00:00", "end_time": "2025-12-16T01:40:22.121005+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765849222.1880865}, "logs/tasks_logs/2025/12/15/task_014521_6bb4a3_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T01:45:00.000945+00:00", "end_time": "2025-12-16T01:45:21.901675+00:00", "duration": "21.9s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765849521.9089506}, "logs/tasks_logs/2025/12/15/task_015022_b70434_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T01:50:00.000940+00:00", "end_time": "2025-12-16T01:50:22.059193+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765849822.103228}, "logs/tasks_logs/2025/12/15/task_015522_819cc7_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T01:55:00.001418+00:00", "end_time": "2025-12-16T01:55:22.369022+00:00", "duration": "22.4s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765850122.4396207}, "logs/tasks_logs/2025/12/15/task_020022_2f4cb2_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T02:00:00.000629+00:00", "end_time": "2025-12-16T02:00:22.454345+00:00", "duration": "22.5s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765850422.4783418}, "logs/tasks_logs/2025/12/15/task_020522_68582e_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T02:05:00.001123+00:00", "end_time": "2025-12-16T02:05:22.820947+00:00", "duration": "22.8s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765850722.8275952}, "logs/tasks_logs/2025/12/15/task_021022_76382e_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T02:10:00.001460+00:00", "end_time": "2025-12-16T02:10:22.470923+00:00", "duration": "22.5s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765851022.5582466}, "logs/tasks_logs/2025/12/15/task_021521_bb81af_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T02:15:00.001063+00:00", "end_time": "2025-12-16T02:15:21.631133+00:00", "duration": "21.6s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765851321.6807542}, "logs/tasks_logs/2025/12/15/task_022022_5d7a93_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T02:20:00.000375+00:00", "end_time": "2025-12-16T02:20:22.396184+00:00", "duration": "22.4s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765851622.3725238}, "logs/tasks_logs/2025/12/15/task_022521_e04d61_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T02:25:00.001320+00:00", "end_time": "2025-12-16T02:25:21.850082+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765851921.9117975}, "logs/tasks_logs/2025/12/15/task_023021_946f28_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T02:30:00.001492+00:00", "end_time": "2025-12-16T02:30:21.843242+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765852221.9061148}, "logs/tasks_logs/2025/12/15/task_023522_15743c_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T02:35:00.000679+00:00", "end_time": "2025-12-16T02:35:22.227343+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765852522.2295594}, "logs/tasks_logs/2025/12/15/task_024022_2cd43b_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T02:40:00.000940+00:00", "end_time": "2025-12-16T02:40:22.264560+00:00", "duration": "22.3s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765852822.3056798}, "logs/tasks_logs/2025/12/15/task_024521_b25ef9_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T02:45:00.000342+00:00", "end_time": "2025-12-16T02:45:21.791494+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765853121.8695939}, "logs/tasks_logs/2025/12/15/task_025022_28bca3_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T02:50:00.001187+00:00", "end_time": "2025-12-16T02:50:22.013346+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765853422.039209}, "logs/tasks_logs/2025/12/15/task_025522_d0c20e_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T02:55:00.000695+00:00", "end_time": "2025-12-16T02:55:22.114477+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765853722.0951705}, "logs/tasks_logs/2025/12/15/task_030022_b2608e_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T03:00:00.001581+00:00", "end_time": "2025-12-16T03:00:22.808847+00:00", "duration": "22.8s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765854022.886674}, "logs/tasks_logs/2025/12/15/task_030521_a7c019_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T03:05:00.001529+00:00", "end_time": "2025-12-16T03:05:21.735323+00:00", "duration": "21.7s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765854321.7779481}, "logs/tasks_logs/2025/12/15/task_031022_de0107_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T03:10:00.001223+00:00", "end_time": "2025-12-16T03:10:21.981119+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765854621.9498053}, "logs/tasks_logs/2025/12/15/task_031521_63ad18_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T03:15:00.001257+00:00", "end_time": "2025-12-16T03:15:21.800750+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765854921.8790221}, "logs/tasks_logs/2025/12/15/task_032023_e95ed0_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T03:20:00.001519+00:00", "end_time": "2025-12-16T03:20:23.118520+00:00", "duration": "23.1s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765855223.1826408}, "logs/tasks_logs/2025/12/15/task_032523_a90596_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T03:25:00.000433+00:00", "end_time": "2025-12-16T03:25:23.068955+00:00", "duration": "23.1s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765855523.0605328}, "logs/tasks_logs/2025/12/15/task_033022_713517_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T03:30:00.001489+00:00", "end_time": "2025-12-16T03:30:21.985402+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765855822.0422058}, "logs/tasks_logs/2025/12/15/task_033522_8683fc_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T03:35:00.001039+00:00", "end_time": "2025-12-16T03:35:22.244963+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765856122.3156433}, "logs/tasks_logs/2025/12/15/task_034022_c7a912_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T03:40:00.000833+00:00", "end_time": "2025-12-16T03:40:22.059017+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765856422.081465}, "logs/tasks_logs/2025/12/15/task_034521_bff3da_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T03:45:00.000543+00:00", "end_time": "2025-12-16T03:45:21.723340+00:00", "duration": "21.7s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765856721.7411704}, "logs/tasks_logs/2025/12/15/task_035021_613718_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T03:50:00.001269+00:00", "end_time": "2025-12-16T03:50:21.401137+00:00", "duration": "21.4s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765857021.4943557}, "logs/tasks_logs/2025/12/15/task_035521_198e54_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T03:55:00.000567+00:00", "end_time": "2025-12-16T03:55:21.813425+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765857321.8622017}, "logs/tasks_logs/2025/12/15/task_040022_351b11_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T04:00:00.001066+00:00", "end_time": "2025-12-16T04:00:22.249187+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765857622.2226145}, "logs/tasks_logs/2025/12/15/task_040521_3df483_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T04:05:00.000917+00:00", "end_time": "2025-12-16T04:05:21.923151+00:00", "duration": "21.9s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765857922.0009997}, "logs/tasks_logs/2025/12/15/task_041022_c40cc6_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T04:10:00.000745+00:00", "end_time": "2025-12-16T04:10:22.832764+00:00", "duration": "22.8s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765858222.8865712}, "logs/tasks_logs/2025/12/15/task_041522_147f28_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T04:15:00.001003+00:00", "end_time": "2025-12-16T04:15:22.522767+00:00", "duration": "22.5s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765858522.5057065}, "logs/tasks_logs/2025/12/15/task_042021_408a40_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T04:20:00.000528+00:00", "end_time": "2025-12-16T04:20:21.922311+00:00", "duration": "21.9s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765858821.985752}, "logs/tasks_logs/2025/12/15/task_042522_137c4d_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T04:25:00.000530+00:00", "end_time": "2025-12-16T04:25:22.728149+00:00", "duration": "22.7s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765859122.7996821}, "logs/tasks_logs/2025/12/15/task_043022_8991d2_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T04:30:00.000632+00:00", "end_time": "2025-12-16T04:30:22.193298+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765859422.2174838}, "logs/tasks_logs/2025/12/15/task_043522_978039_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T04:35:00.000349+00:00", "end_time": "2025-12-16T04:35:22.383965+00:00", "duration": "22.4s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765859722.4190764}, "logs/tasks_logs/2025/12/15/task_044022_28c3ee_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T04:40:00.001478+00:00", "end_time": "2025-12-16T04:40:22.409056+00:00", "duration": "22.4s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765860022.4885066}, "logs/tasks_logs/2025/12/15/task_044524_32e81c_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T04:45:00.000892+00:00", "end_time": "2025-12-16T04:45:24.833323+00:00", "duration": "24.8s", "duration_seconds": 25, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765860324.8487728}, "logs/tasks_logs/2025/12/15/task_045022_0260cb_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T04:50:00.001077+00:00", "end_time": "2025-12-16T04:50:22.028526+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765860622.0037706}, "logs/tasks_logs/2025/12/15/task_045521_ae810c_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T04:55:00.001443+00:00", "end_time": "2025-12-16T04:55:21.231266+00:00", "duration": "21.2s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765860921.329664}, "logs/tasks_logs/2025/12/16/task_000023_e9660f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T00:00:00.001691+00:00", "end_time": "2025-12-17T00:00:23.322832+00:00", "duration": "23.3s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765929623.260788}, "logs/tasks_logs/2025/12/16/task_000522_f979d2_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T00:05:00.001277+00:00", "end_time": "2025-12-17T00:05:22.731608+00:00", "duration": "22.7s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765929922.301771}, "logs/tasks_logs/2025/12/16/task_001021_566c98_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T00:10:00.003841+00:00", "end_time": "2025-12-17T00:10:21.886035+00:00", "duration": "21.9s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765930222.1546154}, "logs/tasks_logs/2025/12/16/task_001522_44fff0_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T00:15:00.001459+00:00", "end_time": "2025-12-17T00:15:22.099831+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765930521.9541478}, "logs/tasks_logs/2025/12/16/task_002021_4adf24_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T00:20:00.003293+00:00", "end_time": "2025-12-17T00:20:21.818551+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765930822.3517015}, "logs/tasks_logs/2025/12/16/task_002522_5ff123_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T00:25:00.002089+00:00", "end_time": "2025-12-17T00:25:22.309602+00:00", "duration": "22.3s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765931122.4454098}, "logs/tasks_logs/2025/12/16/task_003023_47d104_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T00:30:00.004612+00:00", "end_time": "2025-12-17T00:30:23.156862+00:00", "duration": "23.2s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765931422.8539484}, "logs/tasks_logs/2025/12/16/task_003522_3da998_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T00:35:00.002462+00:00", "end_time": "2025-12-17T00:35:22.225485+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765931722.619921}, "logs/tasks_logs/2025/12/16/task_004022_2fba1b_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T00:40:00.001511+00:00", "end_time": "2025-12-17T00:40:22.023708+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765932022.0357182}, "logs/tasks_logs/2025/12/16/task_004523_68f36a_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T00:45:00.001056+00:00", "end_time": "2025-12-17T00:45:23.408315+00:00", "duration": "23.4s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765932322.9724233}, "logs/tasks_logs/2025/12/16/task_005022_76fa93_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T00:50:00.002805+00:00", "end_time": "2025-12-17T00:50:22.159248+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765932622.4538376}, "logs/tasks_logs/2025/12/16/task_005522_6910d2_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T00:55:00.001166+00:00", "end_time": "2025-12-17T00:55:22.108091+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765932922.0017257}, "logs/tasks_logs/2025/12/16/task_010022_00fd7a_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T01:00:00.000345+00:00", "end_time": "2025-12-17T01:00:22.176522+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765933222.7324562}, "logs/tasks_logs/2025/12/16/task_010522_8e7912_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T01:05:00.001569+00:00", "end_time": "2025-12-17T01:05:22.239533+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765933522.4986584}, "logs/tasks_logs/2025/12/16/task_011022_d796d9_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T01:10:00.000816+00:00", "end_time": "2025-12-17T01:10:22.704692+00:00", "duration": "22.7s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765933822.4517448}, "logs/tasks_logs/2025/12/16/task_011522_be018f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T01:15:00.001246+00:00", "end_time": "2025-12-17T01:15:22.127118+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765934122.568066}, "logs/tasks_logs/2025/12/16/task_012022_df47b9_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T01:20:00.002567+00:00", "end_time": "2025-12-17T01:20:22.227390+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765934422.2756622}, "logs/tasks_logs/2025/12/16/task_012523_2214cb_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T01:25:00.001516+00:00", "end_time": "2025-12-17T01:25:23.165823+00:00", "duration": "23.2s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765934722.7899294}, "logs/tasks_logs/2025/12/16/task_013022_a7b217_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T01:30:00.001437+00:00", "end_time": "2025-12-17T01:30:22.133912+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765935022.472441}, "logs/tasks_logs/2025/12/16/task_013521_5fb743_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T01:35:00.002310+00:00", "end_time": "2025-12-17T01:35:21.873967+00:00", "duration": "21.9s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765935321.8142364}, "logs/tasks_logs/2025/12/16/task_014029_9036d2_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T01:40:00.004513+00:00", "end_time": "2025-12-17T01:40:29.840532+00:00", "duration": "29.8s", "duration_seconds": 30, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765935630.223552}, "logs/tasks_logs/2025/12/16/task_014521_e6d037_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T01:45:00.000441+00:00", "end_time": "2025-12-17T01:45:21.824531+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765935922.0427904}, "logs/tasks_logs/2025/12/16/task_015022_5c1b20_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T01:50:00.007861+00:00", "end_time": "2025-12-17T01:50:22.118341+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765936221.9443815}, "logs/tasks_logs/2025/12/16/task_015522_fcd963_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T01:55:00.000903+00:00", "end_time": "2025-12-17T01:55:22.933114+00:00", "duration": "22.9s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765936523.3696976}, "logs/tasks_logs/2025/12/16/task_020022_ac02ba_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T02:00:00.002266+00:00", "end_time": "2025-12-17T02:00:22.958818+00:00", "duration": "23.0s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765936823.0001042}, "logs/tasks_logs/2025/12/16/task_020522_334da7_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T02:05:00.002337+00:00", "end_time": "2025-12-17T02:05:22.131945+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765937121.8077743}, "logs/tasks_logs/2025/12/16/task_021022_cf0fa6_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T02:10:00.001785+00:00", "end_time": "2025-12-17T02:10:21.996802+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765937422.3393955}, "logs/tasks_logs/2025/12/16/task_160022_c2c717_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T16:00:00.001340+00:00", "end_time": "2025-12-16T16:00:22.259437+00:00", "duration": "22.3s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765900822.516559}, "logs/tasks_logs/2025/12/16/task_160522_d2dc84_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T16:05:00.001251+00:00", "end_time": "2025-12-16T16:05:22.098748+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765901122.037586}, "logs/tasks_logs/2025/12/16/task_161023_e92be0_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T16:10:00.004547+00:00", "end_time": "2025-12-16T16:10:23.033414+00:00", "duration": "23.0s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765901423.5737984}, "logs/tasks_logs/2025/12/16/task_161521_1442a1_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T16:15:00.003193+00:00", "end_time": "2025-12-16T16:15:21.742665+00:00", "duration": "21.7s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765901722.0001307}, "logs/tasks_logs/2025/12/16/task_162021_cf1c8d_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T16:20:00.000872+00:00", "end_time": "2025-12-16T16:20:21.159626+00:00", "duration": "21.2s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765902021.089885}, "logs/tasks_logs/2025/12/16/task_162521_5b4378_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T16:25:00.002027+00:00", "end_time": "2025-12-16T16:25:21.803629+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765902322.358555}, "logs/tasks_logs/2025/12/16/task_163022_8c800b_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T16:30:00.000371+00:00", "end_time": "2025-12-16T16:30:22.195333+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765902622.426015}, "logs/tasks_logs/2025/12/16/task_163521_1fcdc9_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T16:35:00.002773+00:00", "end_time": "2025-12-16T16:35:21.627805+00:00", "duration": "21.6s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765902921.51219}, "logs/tasks_logs/2025/12/16/task_164022_ca6597_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T16:40:00.002845+00:00", "end_time": "2025-12-16T16:40:22.081411+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765903222.592272}, "logs/tasks_logs/2025/12/16/task_164522_83e483_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T16:45:00.001371+00:00", "end_time": "2025-12-16T16:45:22.721217+00:00", "duration": "22.7s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765903522.8697705}, "logs/tasks_logs/2025/12/16/task_165022_6b5a1c_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T16:50:00.000837+00:00", "end_time": "2025-12-16T16:50:21.990252+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765903821.8238077}, "logs/tasks_logs/2025/12/16/task_165522_fedc65_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T16:55:00.001898+00:00", "end_time": "2025-12-16T16:55:22.194314+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765904122.6519556}, "logs/tasks_logs/2025/12/16/task_170023_85bc04_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T17:00:00.002971+00:00", "end_time": "2025-12-16T17:00:23.547953+00:00", "duration": "23.5s", "duration_seconds": 24, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765904423.621485}, "logs/tasks_logs/2025/12/16/task_170522_c3e09d_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T17:05:00.003987+00:00", "end_time": "2025-12-16T17:05:22.696293+00:00", "duration": "22.7s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765904722.42944}, "logs/tasks_logs/2025/12/16/task_171021_b27538_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T17:10:00.002023+00:00", "end_time": "2025-12-16T17:10:21.797095+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765905022.229454}, "logs/tasks_logs/2025/12/16/task_171522_5f417f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T17:15:00.001044+00:00", "end_time": "2025-12-16T17:15:22.739849+00:00", "duration": "22.7s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765905322.7781646}, "logs/tasks_logs/2025/12/16/task_172022_5a6f6e_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T17:20:00.002964+00:00", "end_time": "2025-12-16T17:20:22.871898+00:00", "duration": "22.9s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765905622.5437186}, "logs/tasks_logs/2025/12/16/task_172521_961628_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T17:25:00.001452+00:00", "end_time": "2025-12-16T17:25:21.783057+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765905922.1480713}, "logs/tasks_logs/2025/12/16/task_173022_50acaa_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T17:30:00.001000+00:00", "end_time": "2025-12-16T17:30:21.988563+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765906222.006048}, "logs/tasks_logs/2025/12/16/task_173523_680a9f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T17:35:00.003594+00:00", "end_time": "2025-12-16T17:35:23.096109+00:00", "duration": "23.1s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765906522.717008}, "logs/tasks_logs/2025/12/16/task_174021_a59171_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T17:40:00.000842+00:00", "end_time": "2025-12-16T17:40:21.731006+00:00", "duration": "21.7s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765906822.04611}, "logs/tasks_logs/2025/12/16/task_174522_66e0be_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T17:45:00.003456+00:00", "end_time": "2025-12-16T17:45:22.519590+00:00", "duration": "22.5s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765907122.5653095}, "logs/tasks_logs/2025/12/16/task_175023_34379f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T17:50:00.000704+00:00", "end_time": "2025-12-16T17:50:23.165146+00:00", "duration": "23.2s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765907423.7146506}, "logs/tasks_logs/2025/12/16/task_175522_d72779_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T17:55:00.001072+00:00", "end_time": "2025-12-16T17:55:22.382579+00:00", "duration": "22.4s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765907722.6200879}, "logs/tasks_logs/2025/12/16/task_180023_add4ab_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T18:00:00.004221+00:00", "end_time": "2025-12-16T18:00:23.304241+00:00", "duration": "23.3s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765908023.1503887}, "logs/tasks_logs/2025/12/16/task_180522_00c1b6_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T18:05:00.001865+00:00", "end_time": "2025-12-16T18:05:22.446985+00:00", "duration": "22.4s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765908322.9788208}, "logs/tasks_logs/2025/12/16/task_181021_41a15c_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T18:10:00.004078+00:00", "end_time": "2025-12-16T18:10:21.943931+00:00", "duration": "21.9s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765908622.1413865}, "logs/tasks_logs/2025/12/16/task_181523_8b6ce6_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T18:15:00.000802+00:00", "end_time": "2025-12-16T18:15:23.611799+00:00", "duration": "23.6s", "duration_seconds": 24, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765908923.4053197}, "logs/tasks_logs/2025/12/16/task_182022_785ecd_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T18:20:00.004916+00:00", "end_time": "2025-12-16T18:20:22.102495+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765909222.591298}, "logs/tasks_logs/2025/12/16/task_182522_afa1d5_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T18:25:00.002361+00:00", "end_time": "2025-12-16T18:25:22.270800+00:00", "duration": "22.3s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765909522.4100308}, "logs/tasks_logs/2025/12/16/task_183023_8cbf5a_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T18:30:00.002962+00:00", "end_time": "2025-12-16T18:30:23.795806+00:00", "duration": "23.8s", "duration_seconds": 24, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765909823.5219345}, "logs/tasks_logs/2025/12/16/task_183522_4bac52_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T18:35:00.001109+00:00", "end_time": "2025-12-16T18:35:22.328375+00:00", "duration": "22.3s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765910122.7542355}, "logs/tasks_logs/2025/12/16/task_184022_c52371_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T18:40:00.004098+00:00", "end_time": "2025-12-16T18:40:22.047806+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765910422.126057}, "logs/tasks_logs/2025/12/16/task_184523_978ce1_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T18:45:00.002183+00:00", "end_time": "2025-12-16T18:45:23.324949+00:00", "duration": "23.3s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765910723.0005238}, "logs/tasks_logs/2025/12/16/task_185022_38d0b4_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T18:50:00.002852+00:00", "end_time": "2025-12-16T18:50:22.094942+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765911022.455437}, "logs/tasks_logs/2025/12/16/task_185522_af4c28_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T18:55:00.003944+00:00", "end_time": "2025-12-16T18:55:22.195575+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765911322.1992922}, "logs/tasks_logs/2025/12/16/task_190023_4ae299_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T19:00:00.003964+00:00", "end_time": "2025-12-16T19:00:23.019614+00:00", "duration": "23.0s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765911622.625362}, "logs/tasks_logs/2025/12/16/task_190522_711ac1_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T19:05:00.003790+00:00", "end_time": "2025-12-16T19:05:22.155177+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765911922.4537234}, "logs/tasks_logs/2025/12/16/task_191021_59e52f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T19:10:00.001365+00:00", "end_time": "2025-12-16T19:10:21.763589+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765912221.7072203}, "logs/tasks_logs/2025/12/16/task_191522_9a448f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T19:15:00.001964+00:00", "end_time": "2025-12-16T19:15:22.118693+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765912522.6937475}, "logs/tasks_logs/2025/12/16/task_192022_bfaec4_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T19:20:00.001879+00:00", "end_time": "2025-12-16T19:20:22.160778+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765912822.3839474}, "logs/tasks_logs/2025/12/16/task_192522_3f2600_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T19:25:00.002475+00:00", "end_time": "2025-12-16T19:25:22.518223+00:00", "duration": "22.5s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765913122.3509648}, "logs/tasks_logs/2025/12/16/task_193022_fad19a_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T19:30:00.003991+00:00", "end_time": "2025-12-16T19:30:22.326045+00:00", "duration": "22.3s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765913422.8283367}, "logs/tasks_logs/2025/12/16/task_193524_e8bd2c_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T19:35:00.001845+00:00", "end_time": "2025-12-16T19:35:24.058576+00:00", "duration": "24.1s", "duration_seconds": 24, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765913724.1349576}, "logs/tasks_logs/2025/12/16/task_194023_0d0889_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T19:40:00.001406+00:00", "end_time": "2025-12-16T19:40:23.312573+00:00", "duration": "23.3s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765914023.0448039}, "logs/tasks_logs/2025/12/16/task_194521_ccce58_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T19:45:00.000855+00:00", "end_time": "2025-12-16T19:45:21.731667+00:00", "duration": "21.7s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765914322.1766877}, "logs/tasks_logs/2025/12/16/task_195022_19879a_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T19:50:00.002691+00:00", "end_time": "2025-12-16T19:50:21.965032+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765914622.0493245}, "logs/tasks_logs/2025/12/16/task_195523_35be0f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T19:55:00.000810+00:00", "end_time": "2025-12-16T19:55:23.041983+00:00", "duration": "23.0s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765914922.7155395}, "logs/tasks_logs/2025/12/16/task_200024_41b4a6_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T20:00:00.000478+00:00", "end_time": "2025-12-16T20:00:24.491185+00:00", "duration": "24.5s", "duration_seconds": 24, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765915224.7781982}, "logs/tasks_logs/2025/12/16/task_200521_e49c56_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T20:05:00.002332+00:00", "end_time": "2025-12-16T20:05:21.800181+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765915521.8078542}, "logs/tasks_logs/2025/12/16/task_201022_b296b4_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T20:10:00.003113+00:00", "end_time": "2025-12-16T20:10:22.636210+00:00", "duration": "22.6s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765915822.251676}, "logs/tasks_logs/2025/12/16/task_201522_9f9d0d_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T20:15:00.002172+00:00", "end_time": "2025-12-16T20:15:22.038178+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765916122.328154}, "logs/tasks_logs/2025/12/16/task_202021_8c9a8a_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T20:20:00.003032+00:00", "end_time": "2025-12-16T20:20:21.782050+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765916421.7241356}, "logs/tasks_logs/2025/12/16/task_202522_213b34_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T20:25:00.000328+00:00", "end_time": "2025-12-16T20:25:22.048860+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765916722.6261876}, "logs/tasks_logs/2025/12/16/task_203022_6fd4b3_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T20:30:00.002462+00:00", "end_time": "2025-12-16T20:30:22.198084+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765917022.4282155}, "logs/tasks_logs/2025/12/16/task_203522_5a1257_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T20:35:00.000460+00:00", "end_time": "2025-12-16T20:35:22.123667+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765917322.0964074}, "logs/tasks_logs/2025/12/16/task_204021_f766bc_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T20:40:00.002662+00:00", "end_time": "2025-12-16T20:40:21.618552+00:00", "duration": "21.6s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765917622.141592}, "logs/tasks_logs/2025/12/16/task_204521_86322a_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T20:45:00.001593+00:00", "end_time": "2025-12-16T20:45:21.639286+00:00", "duration": "21.6s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765917921.8145435}, "logs/tasks_logs/2025/12/16/task_205023_84f63e_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T20:50:00.004044+00:00", "end_time": "2025-12-16T20:50:23.063726+00:00", "duration": "23.1s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765918222.8248272}, "logs/tasks_logs/2025/12/16/task_205522_9893a7_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T20:55:00.001925+00:00", "end_time": "2025-12-16T20:55:22.240451+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765918522.6793828}, "logs/tasks_logs/2025/12/16/task_210021_78424e_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T21:00:00.002079+00:00", "end_time": "2025-12-16T21:00:21.848489+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765918821.9470263}, "logs/tasks_logs/2025/12/16/task_210523_8fc210_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T21:05:00.002542+00:00", "end_time": "2025-12-16T21:05:22.991588+00:00", "duration": "23.0s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765919122.6920433}, "logs/tasks_logs/2025/12/16/task_211021_1cf786_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T21:10:00.004120+00:00", "end_time": "2025-12-16T21:10:21.700450+00:00", "duration": "21.7s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765919422.0764692}, "logs/tasks_logs/2025/12/16/task_211522_800dc7_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T21:15:00.000489+00:00", "end_time": "2025-12-16T21:15:22.087418+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765919722.0979855}, "logs/tasks_logs/2025/12/16/task_212022_83665b_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T21:20:00.002001+00:00", "end_time": "2025-12-16T21:20:22.703547+00:00", "duration": "22.7s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765920022.3214314}, "logs/tasks_logs/2025/12/16/task_212521_d300ec_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T21:25:00.001597+00:00", "end_time": "2025-12-16T21:25:21.835009+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765920322.1319864}, "logs/tasks_logs/2025/12/16/task_213021_23acac_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T21:30:00.000468+00:00", "end_time": "2025-12-16T21:30:21.885080+00:00", "duration": "21.9s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765920621.8199313}, "logs/tasks_logs/2025/12/16/task_213522_f8a92a_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T21:35:00.002345+00:00", "end_time": "2025-12-16T21:35:22.095959+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765920922.6697466}, "logs/tasks_logs/2025/12/16/task_214022_a15be5_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T21:40:00.002694+00:00", "end_time": "2025-12-16T21:40:22.019100+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765921222.243726}, "logs/tasks_logs/2025/12/16/task_214521_f5a80f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T21:45:00.001250+00:00", "end_time": "2025-12-16T21:45:21.621971+00:00", "duration": "21.6s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765921521.47233}, "logs/tasks_logs/2025/12/16/task_215021_f1126b_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T21:50:00.003124+00:00", "end_time": "2025-12-16T21:50:21.832494+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765921822.3326855}, "logs/tasks_logs/2025/12/16/task_215522_b683aa_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T21:55:00.000928+00:00", "end_time": "2025-12-16T21:55:22.271288+00:00", "duration": "22.3s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765922122.376749}, "logs/tasks_logs/2025/12/16/task_220023_40a13b_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T22:00:00.001336+00:00", "end_time": "2025-12-16T22:00:23.236798+00:00", "duration": "23.2s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765922422.9350855}, "logs/tasks_logs/2025/12/16/task_220521_574b4c_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T22:05:00.002708+00:00", "end_time": "2025-12-16T22:05:21.764559+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765922722.16448}, "logs/tasks_logs/2025/12/16/task_221021_9bdae9_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T22:10:00.003591+00:00", "end_time": "2025-12-16T22:10:21.626940+00:00", "duration": "21.6s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765923021.6740224}, "logs/tasks_logs/2025/12/16/task_221523_6926f4_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T22:15:00.001492+00:00", "end_time": "2025-12-16T22:15:23.058675+00:00", "duration": "23.1s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765923322.6713548}, "logs/tasks_logs/2025/12/16/task_222021_fb97d9_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T22:20:00.002200+00:00", "end_time": "2025-12-16T22:20:21.941627+00:00", "duration": "21.9s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765923622.2478209}, "logs/tasks_logs/2025/12/16/task_222521_78889d_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T22:25:00.002777+00:00", "end_time": "2025-12-16T22:25:21.934784+00:00", "duration": "21.9s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765923921.8770857}, "logs/tasks_logs/2025/12/16/task_223022_7b953d_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T22:30:00.001447+00:00", "end_time": "2025-12-16T22:30:22.210669+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765924222.7933707}, "logs/tasks_logs/2025/12/16/task_223521_b3b3e3_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T22:35:00.001216+00:00", "end_time": "2025-12-16T22:35:21.912473+00:00", "duration": "21.9s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765924522.1458566}, "logs/tasks_logs/2025/12/16/task_224021_7dc438_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T22:40:00.005733+00:00", "end_time": "2025-12-16T22:40:21.687338+00:00", "duration": "21.7s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765924821.5437381}, "logs/tasks_logs/2025/12/16/task_224522_aca8a5_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T22:45:00.001801+00:00", "end_time": "2025-12-16T22:45:21.978267+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765925122.474493}, "logs/tasks_logs/2025/12/16/task_225022_20da2c_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T22:50:00.001432+00:00", "end_time": "2025-12-16T22:50:22.919898+00:00", "duration": "22.9s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765925423.019903}, "logs/tasks_logs/2025/12/16/task_225522_a69b12_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T22:55:00.002548+00:00", "end_time": "2025-12-16T22:55:22.943285+00:00", "duration": "22.9s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765925722.6537414}, "logs/tasks_logs/2025/12/16/task_230022_4dd196_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T23:00:00.002727+00:00", "end_time": "2025-12-16T23:00:22.756352+00:00", "duration": "22.8s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765926023.1293297}, "logs/tasks_logs/2025/12/16/task_230522_7076ba_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T23:05:00.001126+00:00", "end_time": "2025-12-16T23:05:22.201017+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765926322.224848}, "logs/tasks_logs/2025/12/16/task_231023_24db19_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T23:10:00.000583+00:00", "end_time": "2025-12-16T23:10:23.205811+00:00", "duration": "23.2s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765926622.8227215}, "logs/tasks_logs/2025/12/16/task_231522_2c73cd_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T23:15:00.004331+00:00", "end_time": "2025-12-16T23:15:22.525708+00:00", "duration": "22.5s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765926922.9096906}, "logs/tasks_logs/2025/12/16/task_232022_702bb0_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T23:20:00.001861+00:00", "end_time": "2025-12-16T23:20:22.129431+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765927222.0429885}, "logs/tasks_logs/2025/12/16/task_232522_3e5345_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T23:25:00.000657+00:00", "end_time": "2025-12-16T23:25:22.169953+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765927522.7350652}, "logs/tasks_logs/2025/12/16/task_233022_492bc5_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T23:30:00.004598+00:00", "end_time": "2025-12-16T23:30:22.162525+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765927822.3537772}, "logs/tasks_logs/2025/12/16/task_233521_67386e_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T23:35:00.001193+00:00", "end_time": "2025-12-16T23:35:21.566539+00:00", "duration": "21.6s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765928121.3969734}, "logs/tasks_logs/2025/12/16/task_234021_60f90d_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T23:40:00.002714+00:00", "end_time": "2025-12-16T23:40:21.819708+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765928422.3027668}, "logs/tasks_logs/2025/12/16/task_234521_239523_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T23:45:00.000429+00:00", "end_time": "2025-12-16T23:45:21.803072+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765928721.9099748}, "logs/tasks_logs/2025/12/16/task_235022_14f9c6_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T23:50:00.001449+00:00", "end_time": "2025-12-16T23:50:22.935406+00:00", "duration": "22.9s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765929022.6182308}, "logs/tasks_logs/2025/12/16/task_235522_5b23e8_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-16T23:55:00.002294+00:00", "end_time": "2025-12-16T23:55:21.966099+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765929322.3398511}, "logs/tasks_logs/2025/12/16/task_021519_f4adc4_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T02:15:00.002578+00:00", "end_time": "2025-12-17T02:15:19.369007+00:00", "duration": "19.4s", "duration_seconds": 19, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765937719.4281588}, "logs/tasks_logs/2025/12/16/task_022019_e6c1ba_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T02:20:00.004172+00:00", "end_time": "2025-12-17T02:20:19.716615+00:00", "duration": "19.7s", "duration_seconds": 20, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765938019.3721755}, "logs/tasks_logs/2025/12/16/task_022522_04dfdd_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T02:25:00.003450+00:00", "end_time": "2025-12-17T02:25:21.960086+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765938322.202679}, "logs/tasks_logs/2025/12/16/task_023022_b1b0c8_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T02:30:00.003305+00:00", "end_time": "2025-12-17T02:30:22.301918+00:00", "duration": "22.3s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765938622.107978}, "logs/tasks_logs/2025/12/16/task_023521_d0d8fb_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T02:35:00.003881+00:00", "end_time": "2025-12-17T02:35:21.502773+00:00", "duration": "21.5s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765938921.992702}, "logs/tasks_logs/2025/12/16/task_024023_a9d437_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T02:40:00.004159+00:00", "end_time": "2025-12-17T02:40:23.333312+00:00", "duration": "23.3s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765939223.3620126}, "logs/tasks_logs/2025/12/16/task_030021_33db90_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T03:00:00.001788+00:00", "end_time": "2025-12-17T03:00:21.876216+00:00", "duration": "21.9s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765940422.4948475}, "logs/tasks_logs/2025/12/16/task_030521_4c448b_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T03:05:00.002438+00:00", "end_time": "2025-12-17T03:05:21.013998+00:00", "duration": "21.0s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765940721.2717137}, "logs/tasks_logs/2025/12/16/task_031021_39ea1d_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T03:10:00.004833+00:00", "end_time": "2025-12-17T03:10:21.382810+00:00", "duration": "21.4s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765941021.1991906}, "logs/tasks_logs/2025/12/16/task_041523_d7ef4d_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T04:15:00.003863+00:00", "end_time": "2025-12-17T04:15:23.570792+00:00", "duration": "23.6s", "duration_seconds": 24, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765944923.5170338}, "logs/tasks_logs/2025/12/16/task_042023_5ce285_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T04:20:00.003849+00:00", "end_time": "2025-12-17T04:20:23.031011+00:00", "duration": "23.0s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765945222.5846684}, "logs/tasks_logs/2025/12/16/task_042521_0b8098_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T04:25:00.001229+00:00", "end_time": "2025-12-17T04:25:21.781083+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765945522.0300999}, "logs/tasks_logs/2025/12/16/task_043021_8b652a_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T04:30:00.003718+00:00", "end_time": "2025-12-17T04:30:21.704055+00:00", "duration": "21.7s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765945821.5574398}, "logs/tasks_logs/2025/12/16/task_043522_ecf318_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T04:35:00.003664+00:00", "end_time": "2025-12-17T04:35:22.080858+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765946122.6176205}, "logs/tasks_logs/2025/12/16/task_044022_66579d_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T04:40:00.003016+00:00", "end_time": "2025-12-17T04:40:21.994145+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765946422.110164}, "logs/tasks_logs/2025/12/16/task_044523_1b6d8b_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T04:45:00.004699+00:00", "end_time": "2025-12-17T04:45:23.220062+00:00", "duration": "23.2s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765946722.895059}, "logs/tasks_logs/2025/12/16/task_045022_59d421_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T04:50:00.001163+00:00", "end_time": "2025-12-17T04:50:22.177034+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765947022.5356846}, "logs/tasks_logs/2025/12/16/task_045522_b437d1_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T04:55:00.001260+00:00", "end_time": "2025-12-17T04:55:22.138108+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765947322.0749435}, "logs/tasks_logs/2025/12/17/task_050023_e6f119_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T05:00:00.002787+00:00", "end_time": "2025-12-17T05:00:23.700900+00:00", "duration": "23.7s", "duration_seconds": 24, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765947624.260552}, "logs/tasks_logs/2025/12/17/task_050522_408341_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T05:05:00.001334+00:00", "end_time": "2025-12-17T05:05:21.974173+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765947922.183729}, "logs/tasks_logs/2025/12/17/task_051021_72488a_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T05:10:00.002763+00:00", "end_time": "2025-12-17T05:10:21.955022+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765948221.7390192}, "logs/tasks_logs/2025/12/17/task_134454_3f9162_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T13:43:24.249479+00:00", "end_time": "2025-12-17T13:44:54.173319+00:00", "duration": "89.9s", "duration_seconds": 90, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765979094.0371385}, "logs/tasks_logs/2025/12/17/task_134517_6e25c9_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T13:45:00.001243+00:00", "end_time": "2025-12-17T13:45:17.532252+00:00", "duration": "17.5s", "duration_seconds": 18, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765979117.5830808}, "logs/tasks_logs/2025/12/17/task_181023_74e71b_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T18:10:00.001013+00:00", "end_time": "2025-12-17T18:10:23.468863+00:00", "duration": "23.5s", "duration_seconds": 24, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765995024.0480797}, "logs/tasks_logs/2025/12/17/task_181523_3fab5f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T18:15:00.002531+00:00", "end_time": "2025-12-17T18:15:23.287547+00:00", "duration": "23.3s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765995323.3275945}, "logs/tasks_logs/2025/12/17/task_183028_ee7107_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T18:30:00.003612+00:00", "end_time": "2025-12-17T18:30:28.415687+00:00", "duration": "28.4s", "duration_seconds": 28, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765996228.591651}, "logs/tasks_logs/2025/12/17/task_183522_6b7315_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T18:35:00.001940+00:00", "end_time": "2025-12-17T18:35:22.765175+00:00", "duration": "22.8s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765996522.4610589}, "logs/tasks_logs/2025/12/17/task_184021_f23c98_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T18:40:00.003517+00:00", "end_time": "2025-12-17T18:40:21.259143+00:00", "duration": "21.3s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765996821.3514643}, "logs/tasks_logs/2025/12/17/task_184522_8e8288_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T18:45:00.004696+00:00", "end_time": "2025-12-17T18:45:22.230340+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765997122.3773909}, "logs/tasks_logs/2025/12/17/task_185024_228aef_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T18:50:00.003311+00:00", "end_time": "2025-12-17T18:50:24.245780+00:00", "duration": "24.2s", "duration_seconds": 24, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765997423.939754}, "logs/tasks_logs/2025/12/17/task_185521_e50986_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T18:55:00.001117+00:00", "end_time": "2025-12-17T18:55:21.691261+00:00", "duration": "21.7s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765997722.0974045}, "logs/tasks_logs/2025/12/17/task_190021_858e25_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T19:00:00.000893+00:00", "end_time": "2025-12-17T19:00:21.760503+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765998021.7602296}, "logs/tasks_logs/2025/12/17/task_190522_c4127c_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T19:05:00.001146+00:00", "end_time": "2025-12-17T19:05:22.253628+00:00", "duration": "22.3s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765998322.895556}, "logs/tasks_logs/2025/12/17/task_191022_b2c756_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T19:10:00.002708+00:00", "end_time": "2025-12-17T19:10:22.607062+00:00", "duration": "22.6s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765998622.8464992}, "logs/tasks_logs/2025/12/17/task_191523_d74377_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T19:15:00.003926+00:00", "end_time": "2025-12-17T19:15:23.234499+00:00", "duration": "23.2s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765998923.0849602}, "logs/tasks_logs/2025/12/17/task_192022_22cebc_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T19:20:00.002170+00:00", "end_time": "2025-12-17T19:20:22.347027+00:00", "duration": "22.3s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765999222.8439777}, "logs/tasks_logs/2025/12/17/task_192540_70af8a_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T19:25:00.177790+00:00", "end_time": "2025-12-17T19:25:39.709080+00:00", "duration": "39.5s", "duration_seconds": 40, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765999540.5860019}, "logs/tasks_logs/2025/12/17/task_193022_d0f3f7_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T19:30:00.002390+00:00", "end_time": "2025-12-17T19:30:22.658340+00:00", "duration": "22.7s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1765999822.2988267}, "logs/tasks_logs/2025/12/17/task_193526_2e8a89_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T19:35:00.010867+00:00", "end_time": "2025-12-17T19:35:26.797215+00:00", "duration": "26.8s", "duration_seconds": 27, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766000126.9889202}, "logs/tasks_logs/2025/12/17/task_194027_bc01e0_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T19:40:00.002404+00:00", "end_time": "2025-12-17T19:40:27.134281+00:00", "duration": "27.1s", "duration_seconds": 27, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766000426.8383336}, "logs/tasks_logs/2025/12/17/task_194522_c59adc_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T19:45:00.003210+00:00", "end_time": "2025-12-17T19:45:22.117833+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766000722.678129}, "logs/tasks_logs/2025/12/17/task_195022_a8b2cf_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T19:50:00.002045+00:00", "end_time": "2025-12-17T19:50:22.209639+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766001022.3078165}, "logs/tasks_logs/2025/12/17/task_195522_5ead1c_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T19:55:00.000923+00:00", "end_time": "2025-12-17T19:55:22.678850+00:00", "duration": "22.7s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766001322.2990556}, "logs/tasks_logs/2025/12/17/task_200023_baedba_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T20:00:00.002925+00:00", "end_time": "2025-12-17T20:00:23.103647+00:00", "duration": "23.1s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766001623.3911219}, "logs/tasks_logs/2025/12/17/task_200521_bc5ae5_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T20:05:00.002405+00:00", "end_time": "2025-12-17T20:05:21.708009+00:00", "duration": "21.7s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766001921.5968606}, "logs/tasks_logs/2025/12/17/task_201021_2b514c_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T20:10:00.001322+00:00", "end_time": "2025-12-17T20:10:21.317041+00:00", "duration": "21.3s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766002221.8901722}, "logs/tasks_logs/2025/12/17/task_201521_71ff85_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T20:15:00.000857+00:00", "end_time": "2025-12-17T20:15:21.059555+00:00", "duration": "21.1s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766002521.197295}, "logs/tasks_logs/2025/12/17/task_202024_96f2a2_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T20:20:00.000941+00:00", "end_time": "2025-12-17T20:20:24.267361+00:00", "duration": "24.3s", "duration_seconds": 24, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766002823.8353915}, "logs/tasks_logs/2025/12/17/task_202522_085222_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T20:25:00.004144+00:00", "end_time": "2025-12-17T20:25:22.577356+00:00", "duration": "22.6s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766003122.8998528}, "logs/tasks_logs/2025/12/17/task_203041_e282d5_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T20:30:00.005839+00:00", "end_time": "2025-12-17T20:30:39.964695+00:00", "duration": "40.0s", "duration_seconds": 40, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766003441.42978}, "logs/tasks_logs/2025/12/17/task_203522_71d5e4_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T20:35:00.000974+00:00", "end_time": "2025-12-17T20:35:22.602478+00:00", "duration": "22.6s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766003723.1191773}, "logs/tasks_logs/2025/12/17/task_204524_8f158d_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T20:45:00.000518+00:00", "end_time": "2025-12-17T20:45:24.459750+00:00", "duration": "24.5s", "duration_seconds": 24, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766004325.2047124}, "logs/tasks_logs/2025/12/17/task_205021_7cfd75_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T20:50:00.001366+00:00", "end_time": "2025-12-17T20:50:21.192920+00:00", "duration": "21.2s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766004621.5280418}, "logs/tasks_logs/2025/12/17/task_205521_704592_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T20:55:00.004111+00:00", "end_time": "2025-12-17T20:55:21.099808+00:00", "duration": "21.1s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766004920.97819}, "logs/tasks_logs/2025/12/17/task_210022_7c40f3_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T21:00:00.001495+00:00", "end_time": "2025-12-17T21:00:22.032346+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766005222.558534}, "logs/tasks_logs/2025/12/17/task_210520_02511d_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T21:05:00.002043+00:00", "end_time": "2025-12-17T21:05:20.810451+00:00", "duration": "20.8s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766005520.9224403}, "logs/tasks_logs/2025/12/17/task_211022_6d6312_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T21:10:00.001542+00:00", "end_time": "2025-12-17T21:10:22.559325+00:00", "duration": "22.6s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766005822.1504493}, "logs/tasks_logs/2025/12/17/task_211102_6edeae_hp.nas.home_Vérification_de_santé_completed.md": {"start_time": "2025-12-17T21:10:50.560117+00:00", "end_time": "2025-12-17T21:11:02.305211+00:00", "duration": "12.9s", "duration_seconds": 13, "hosts": ["hp.nas.home"], "category": "Autre", "subcategory": null, "target_type": "host", "source_type": "manual", "task_name": "Vérification de santé", "target": "hp.nas.home", "_mtime": 1766005862.6178448}, "logs/tasks_logs/2025/12/17/task_211531_e20f01_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T21:15:00.000400+00:00", "end_time": "2025-12-17T21:15:31.422891+00:00", "duration": "31.4s", "duration_seconds": 31, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766006131.384038}, "logs/tasks_logs/2025/12/17/task_212030_c321de_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T21:20:00.003616+00:00", "end_time": "2025-12-17T21:20:29.936683+00:00", "duration": "29.9s", "duration_seconds": 30, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766006430.8026924}, "logs/tasks_logs/2025/12/17/task_212532_76f2ae_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T21:25:00.003024+00:00", "end_time": "2025-12-17T21:25:32.306620+00:00", "duration": "32.3s", "duration_seconds": 32, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766006732.3950374}, "logs/tasks_logs/2025/12/17/task_213022_047da4_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T21:30:00.001092+00:00", "end_time": "2025-12-17T21:30:22.428111+00:00", "duration": "22.4s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766007022.4465678}, "logs/tasks_logs/2025/12/17/task_213523_8d07bf_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T21:35:00.001299+00:00", "end_time": "2025-12-17T21:35:23.273744+00:00", "duration": "23.3s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766007322.8029702}, "logs/tasks_logs/2025/12/17/task_214021_a142ad_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T21:40:00.001748+00:00", "end_time": "2025-12-17T21:40:21.240459+00:00", "duration": "21.2s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766007621.5179224}, "logs/tasks_logs/2025/12/17/task_214521_7904e0_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T21:45:00.000765+00:00", "end_time": "2025-12-17T21:45:21.195514+00:00", "duration": "21.2s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766007921.027567}, "logs/tasks_logs/2025/12/17/task_215021_c0f04a_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T21:50:00.003266+00:00", "end_time": "2025-12-17T21:50:21.246423+00:00", "duration": "21.2s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766008221.7327757}, "logs/tasks_logs/2025/12/17/task_215520_c2bc14_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T21:55:00.000440+00:00", "end_time": "2025-12-17T21:55:20.885344+00:00", "duration": "20.9s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766008520.9292986}, "logs/tasks_logs/2025/12/17/task_220024_257f37_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T22:00:00.004835+00:00", "end_time": "2025-12-17T22:00:24.732611+00:00", "duration": "24.7s", "duration_seconds": 25, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766008825.3047094}, "logs/tasks_logs/2025/12/17/task_220520_5b0b1a_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T22:05:00.003165+00:00", "end_time": "2025-12-17T22:05:20.644059+00:00", "duration": "20.6s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766009120.9252677}, "logs/tasks_logs/2025/12/17/task_221023_e38fad_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T22:10:00.004008+00:00", "end_time": "2025-12-17T22:10:23.350720+00:00", "duration": "23.3s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766009423.0434973}, "logs/tasks_logs/2025/12/17/task_221521_4b8729_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T22:15:00.000924+00:00", "end_time": "2025-12-17T22:15:21.802954+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766009722.2473047}, "logs/tasks_logs/2025/12/17/task_222020_a91dea_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T22:20:00.000584+00:00", "end_time": "2025-12-17T22:20:20.697365+00:00", "duration": "20.7s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766010020.732234}, "logs/tasks_logs/2025/12/17/task_224526_4f39d3_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T22:45:00.001884+00:00", "end_time": "2025-12-17T22:45:26.473418+00:00", "duration": "26.5s", "duration_seconds": 26, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766011526.680512}, "logs/tasks_logs/2025/12/17/task_225022_12f870_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T22:50:00.000909+00:00", "end_time": "2025-12-17T22:50:22.943441+00:00", "duration": "22.9s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766011823.5761542}, "logs/tasks_logs/2025/12/17/task_225531_673385_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T22:55:00.004961+00:00", "end_time": "2025-12-17T22:55:31.189196+00:00", "duration": "31.2s", "duration_seconds": 31, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766012131.218959}, "logs/tasks_logs/2025/12/17/task_000022_9ceb5e_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T00:00:00.002195+00:00", "end_time": "2025-12-18T00:00:22.030585+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766016022.5329103}, "logs/tasks_logs/2025/12/17/task_000521_20083c_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T00:05:00.001333+00:00", "end_time": "2025-12-18T00:05:21.911644+00:00", "duration": "21.9s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766016321.7759392}, "logs/tasks_logs/2025/12/17/task_001023_391704_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T00:10:00.000431+00:00", "end_time": "2025-12-18T00:10:23.799551+00:00", "duration": "23.8s", "duration_seconds": 24, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766016623.5780027}, "logs/tasks_logs/2025/12/17/task_001521_1392f0_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T00:15:00.001001+00:00", "end_time": "2025-12-18T00:15:21.726974+00:00", "duration": "21.7s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766016922.0341108}, "logs/tasks_logs/2025/12/17/task_230023_5dbda7_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T23:00:00.001359+00:00", "end_time": "2025-12-17T23:00:23.725000+00:00", "duration": "23.7s", "duration_seconds": 24, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766012423.565328}, "logs/tasks_logs/2025/12/17/task_230521_f49a00_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T23:05:00.001758+00:00", "end_time": "2025-12-17T23:05:21.501788+00:00", "duration": "21.5s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766012721.862289}, "logs/tasks_logs/2025/12/17/task_231023_8278a8_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T23:10:00.002736+00:00", "end_time": "2025-12-17T23:10:23.560849+00:00", "duration": "23.6s", "duration_seconds": 24, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766013023.221178}, "logs/tasks_logs/2025/12/17/task_231521_68231f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T23:15:00.001833+00:00", "end_time": "2025-12-17T23:15:21.868461+00:00", "duration": "21.9s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766013322.4703543}, "logs/tasks_logs/2025/12/17/task_232023_5d2f51_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T23:20:00.003006+00:00", "end_time": "2025-12-17T23:20:23.037476+00:00", "duration": "23.0s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766013622.9193666}, "logs/tasks_logs/2025/12/17/task_232522_5dad01_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T23:25:00.004481+00:00", "end_time": "2025-12-17T23:25:22.201123+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766013922.5153}, "logs/tasks_logs/2025/12/17/task_233023_eb43cc_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T23:30:00.000942+00:00", "end_time": "2025-12-17T23:30:23.362224+00:00", "duration": "23.4s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766014222.940283}, "logs/tasks_logs/2025/12/17/task_233521_2f3b52_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T23:35:00.003024+00:00", "end_time": "2025-12-17T23:35:21.702298+00:00", "duration": "21.7s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766014521.800974}, "logs/tasks_logs/2025/12/17/task_234022_5fd810_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T23:40:00.003522+00:00", "end_time": "2025-12-17T23:40:22.317535+00:00", "duration": "22.3s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766014822.844949}, "logs/tasks_logs/2025/12/17/task_234520_12eedd_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T23:45:00.001238+00:00", "end_time": "2025-12-17T23:45:20.774391+00:00", "duration": "20.8s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766015121.220048}, "logs/tasks_logs/2025/12/17/task_235022_e825b9_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T23:50:00.002819+00:00", "end_time": "2025-12-17T23:50:22.035943+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766015422.7837696}, "logs/tasks_logs/2025/12/17/task_235522_1d2888_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-17T23:55:00.000950+00:00", "end_time": "2025-12-17T23:55:22.074747+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766015722.1221712}, "logs/tasks_logs/2025/12/17/task_002102_4b36a5_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T00:20:00.007260+00:00", "end_time": "2025-12-18T00:21:01.946702+00:00", "duration": "61.9s", "duration_seconds": 62, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766017261.9478583}, "logs/tasks_logs/2025/12/17/task_010021_09d437_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T01:00:00.000535+00:00", "end_time": "2025-12-18T01:00:21.416206+00:00", "duration": "21.4s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766019621.4007535}, "logs/tasks_logs/2025/12/17/task_010522_e1cdb6_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T01:05:00.001677+00:00", "end_time": "2025-12-18T01:05:22.922967+00:00", "duration": "22.9s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766019923.0618985}, "logs/tasks_logs/2025/12/17/task_011024_1b98c9_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T01:10:00.001296+00:00", "end_time": "2025-12-18T01:10:24.490720+00:00", "duration": "24.5s", "duration_seconds": 24, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766020224.5462234}, "logs/tasks_logs/2025/12/17/task_011522_c1638f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T01:15:00.001247+00:00", "end_time": "2025-12-18T01:15:22.088440+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766020522.5579543}, "logs/tasks_logs/2025/12/17/task_012022_ac50e3_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T01:20:00.001093+00:00", "end_time": "2025-12-18T01:20:22.708642+00:00", "duration": "22.7s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766020822.8671374}, "logs/tasks_logs/2025/12/17/task_012528_6ad0b1_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T01:25:00.000865+00:00", "end_time": "2025-12-18T01:25:28.787614+00:00", "duration": "28.8s", "duration_seconds": 29, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766021129.091529}, "logs/tasks_logs/2025/12/17/task_013021_7b5a06_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T01:30:00.001083+00:00", "end_time": "2025-12-18T01:30:21.461596+00:00", "duration": "21.5s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766021421.6629865}, "logs/tasks_logs/2025/12/17/task_013522_94bf2d_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T01:35:00.001361+00:00", "end_time": "2025-12-18T01:35:22.130515+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766021722.1290278}, "logs/tasks_logs/2025/12/17/task_014022_e81b20_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T01:40:00.003489+00:00", "end_time": "2025-12-18T01:40:22.881942+00:00", "duration": "22.9s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766022023.1437585}, "logs/tasks_logs/2025/12/17/task_014524_0f3032_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T01:45:00.000619+00:00", "end_time": "2025-12-18T01:45:24.496993+00:00", "duration": "24.5s", "duration_seconds": 24, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766022324.494302}, "logs/tasks_logs/2025/12/17/task_015021_290c80_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T01:50:00.000641+00:00", "end_time": "2025-12-18T01:50:21.658000+00:00", "duration": "21.7s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766022621.9725466}, "logs/tasks_logs/2025/12/17/task_015521_e7dbcf_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T01:55:00.000491+00:00", "end_time": "2025-12-18T01:55:21.607365+00:00", "duration": "21.6s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766022921.7477758}, "logs/tasks_logs/2025/12/17/task_020525_89d26a_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T02:05:00.002314+00:00", "end_time": "2025-12-18T02:05:25.353634+00:00", "duration": "25.4s", "duration_seconds": 25, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766023525.6876552}, "logs/tasks_logs/2025/12/17/task_021523_ca6966_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T02:15:00.001749+00:00", "end_time": "2025-12-18T02:15:23.387463+00:00", "duration": "23.4s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766024123.302938}, "logs/tasks_logs/2025/12/17/task_022022_d37d12_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T02:20:00.000787+00:00", "end_time": "2025-12-18T02:20:21.966179+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766024422.133342}, "logs/tasks_logs/2025/12/17/task_022523_1a3b33_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T02:25:00.002045+00:00", "end_time": "2025-12-18T02:25:23.295522+00:00", "duration": "23.3s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766024723.2260613}, "logs/tasks_logs/2025/12/17/task_023021_e6dfaa_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T02:30:00.001394+00:00", "end_time": "2025-12-18T02:30:21.603135+00:00", "duration": "21.6s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766025021.8955276}, "logs/tasks_logs/2025/12/17/task_023521_66bbc0_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T02:35:00.001092+00:00", "end_time": "2025-12-18T02:35:21.750473+00:00", "duration": "21.7s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766025321.7565484}, "logs/tasks_logs/2025/12/17/task_024022_715018_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T02:40:00.001136+00:00", "end_time": "2025-12-18T02:40:22.086031+00:00", "duration": "22.1s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766025622.4029913}, "logs/tasks_logs/2025/12/17/task_024522_372bd9_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T02:45:00.001605+00:00", "end_time": "2025-12-18T02:45:22.873218+00:00", "duration": "22.9s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766025922.9377296}, "logs/tasks_logs/2025/12/17/task_025022_513dc5_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T02:50:00.000815+00:00", "end_time": "2025-12-18T02:50:22.164372+00:00", "duration": "22.2s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766026222.024024}, "logs/tasks_logs/2025/12/17/task_025522_3c9963_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T02:55:00.000874+00:00", "end_time": "2025-12-18T02:55:21.969926+00:00", "duration": "22.0s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766026522.1204598}, "logs/tasks_logs/2025/12/17/task_030022_cc12a8_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T03:00:00.000466+00:00", "end_time": "2025-12-18T03:00:22.825649+00:00", "duration": "22.8s", "duration_seconds": 23, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766026822.7368288}, "logs/tasks_logs/2025/12/17/task_030521_2308d5_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T03:05:00.001383+00:00", "end_time": "2025-12-18T03:05:21.579371+00:00", "duration": "21.6s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766027121.7980685}, "logs/tasks_logs/2025/12/17/task_031022_52d48f_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T03:10:00.000401+00:00", "end_time": "2025-12-18T03:10:22.366417+00:00", "duration": "22.4s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766027422.3193247}, "logs/tasks_logs/2025/12/17/task_031521_990e47_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T03:15:00.002254+00:00", "end_time": "2025-12-18T03:15:21.757100+00:00", "duration": "21.8s", "duration_seconds": 22, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766027721.9995382}, "logs/tasks_logs/2025/12/17/task_032021_44b936_all_[Planifié]_Health-check-5min_completed.md": {"start_time": "2025-12-18T03:20:00.001070+00:00", "end_time": "2025-12-18T03:20:21.375751+00:00", "duration": "21.4s", "duration_seconds": 21, "hosts": ["ali2v.truenas.home", "ali2v.xeon.home", "automate.prod.home", "dev.lab.home", "dev.prod.home", "hp.nas.home", "hp.truenas.home", "hp2.i7.home", "hp3.i5.home", "jump.point.home", "localhost", "media.labb.home", "mimi.pc.home", "orangepi.pc.home", "raspi.4gb.home", "raspi.8gb.home"], "category": "Autre", "subcategory": null, "target_type": "group", "source_type": "scheduled", "task_name": "[Planifié] Health-check-5min", "target": "all", "_mtime": 1766028021.3931553}} \ No newline at end of file diff --git a/logs/tasks_logs/2025/12/17/task_000022_9ceb5e_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_000022_9ceb5e_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..108deb6 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_000022_9ceb5e_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `594808ac62294262a05547c981668d98` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T00:00:00.002195+00:00 | +| **Fin** | 2025-12-18T00:00:22.030585+00:00 | +| **Durée** | 22.0s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003318", "end": "2025-12-17 19:00:11.570559", "msg": "", "rc": 0, "start": "2025-12-17 19:00:11.567241", "stderr": "", "stderr_lines": [], "stdout": " 19:00:11 up 22 days, 6:11, 1 user, load average: 0.96, 0.64, 0.66", "stdout_lines": [" 19:00:11 up 22 days, 6:11, 1 user, load average: 0.96, 0.64, 0.66"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003915", "end": "2025-12-17 19:00:11.575795", "msg": "", "rc": 0, "start": "2025-12-17 19:00:11.571880", "stderr": "", "stderr_lines": [], "stdout": " 19:00:11 up 22 days, 8:10, 1 user, load average: 0.06, 0.05, 0.00", "stdout_lines": [" 19:00:11 up 22 days, 8:10, 1 user, load average: 0.06, 0.05, 0.00"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002787", "end": "2025-12-17 19:00:11.598686", "msg": "", "rc": 0, "start": "2025-12-17 19:00:11.595899", "stderr": "", "stderr_lines": [], "stdout": " 19:00:11 up 3 days, 8:32, 1 user, load average: 0.15, 0.18, 0.18", "stdout_lines": [" 19:00:11 up 3 days, 8:32, 1 user, load average: 0.15, 0.18, 0.18"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004144", "end": "2025-12-17 19:00:11.591376", "msg": "", "rc": 0, "start": "2025-12-17 19:00:11.587232", "stderr": "", "stderr_lines": [], "stdout": " 19:00:11 up 22 days, 7:24, 1 user, load average: 0.76, 0.82, 0.80", "stdout_lines": [" 19:00:11 up 22 days, 7:24, 1 user, load average: 0.76, 0.82, 0.80"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003099", "end": "2025-12-17 18:59:45.377708", "msg": "", "rc": 0, "start": "2025-12-17 18:59:45.374609", "stderr": "", "stderr_lines": [], "stdout": " 18:59:45 up 11 days, 6:49, 0 user, load average: 0.05, 0.13, 0.17", "stdout_lines": [" 18:59:45 up 11 days, 6:49, 0 user, load average: 0.05, 0.13, 0.17"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008308", "end": "2025-12-17 19:00:12.255949", "msg": "", "rc": 0, "start": "2025-12-17 19:00:12.247641", "stderr": "", "stderr_lines": [], "stdout": " 19:00:12 up 194 days, 10:33, 1 user, load average: 0.26, 0.21, 0.14", "stdout_lines": [" 19:00:12 up 194 days, 10:33, 1 user, load average: 0.26, 0.21, 0.14"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009726", "end": "2025-12-17 19:00:12.298568", "msg": "", "rc": 0, "start": "2025-12-17 19:00:12.288842", "stderr": "", "stderr_lines": [], "stdout": " 19:00:12 up 194 days, 10:33, 1 user, load average: 0.30, 0.22, 0.19", "stdout_lines": [" 19:00:12 up 194 days, 10:33, 1 user, load average: 0.30, 0.22, 0.19"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004129", "end": "2025-12-17 19:00:12.562061", "msg": "", "rc": 0, "start": "2025-12-17 19:00:11.557932", "stderr": "", "stderr_lines": [], "stdout": " 19:00:11 up 22 days, 5:51, 1 user, load average: 0.37, 0.23, 0.15", "stdout_lines": [" 19:00:11 up 22 days, 5:51, 1 user, load average: 0.37, 0.23, 0.15"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003459", "end": "2025-12-17 18:59:39.283414", "msg": "", "rc": 0, "start": "2025-12-17 18:59:39.279955", "stderr": "", "stderr_lines": [], "stdout": " 18:59:39 up 18 days, 3:01, 0 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 18:59:39 up 18 days, 3:01, 0 user, load average: 0.00, 0.00, 0.00"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.005021", "end": "2025-12-17 19:00:12.738691", "msg": "", "rc": 0, "start": "2025-12-17 19:00:12.733670", "stderr": "", "stderr_lines": [], "stdout": " 19:00:12 up 3 days, 8:31, 1 user, load average: 0.01, 0.03, 0.00", "stdout_lines": [" 19:00:12 up 3 days, 8:31, 1 user, load average: 0.01, 0.03, 0.00"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003196", "end": "2025-12-17 18:59:42.218305", "msg": "", "rc": 0, "start": "2025-12-17 18:59:42.215109", "stderr": "", "stderr_lines": [], "stdout": " 18:59:42 up 20 days, 21:54, 0 user, load average: 0.35, 0.42, 0.45", "stdout_lines": [" 18:59:42 up 20 days, 21:54, 0 user, load average: 0.35, 0.42, 0.45"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003472", "end": "2025-12-17 18:59:48.935184", "msg": "", "rc": 0, "start": "2025-12-17 18:59:48.931712", "stderr": "", "stderr_lines": [], "stdout": " 18:59:48 up 17 days, 8:15, 0 user, load average: 0.41, 0.27, 0.30", "stdout_lines": [" 18:59:48 up 17 days, 8:15, 0 user, load average: 0.41, 0.27, 0.30"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004107", "end": "2025-12-17 16:00:12.994718", "msg": "", "rc": 0, "start": "2025-12-17 16:00:12.990611", "stderr": "", "stderr_lines": [], "stdout": " 4:00PM up 22 days, 5:50, 1 user, load averages: 0.14, 0.21, 0.23", "stdout_lines": [" 4:00PM up 22 days, 5:50, 1 user, load averages: 0.14, 0.21, 0.23"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019165", "end": "2025-12-17 19:00:12.945828", "msg": "", "rc": 0, "start": "2025-12-17 19:00:12.926663", "stderr": "", "stderr_lines": [], "stdout": " 19:00:12 up 15 days, 8:26, 1 user, load average: 0.13, 0.13, 0.09", "stdout_lines": [" 19:00:12 up 15 days, 8:26, 1 user, load average: 0.13, 0.13, 0.09"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003965", "end": "2025-12-17 19:00:13.161985", "msg": "", "rc": 0, "start": "2025-12-17 19:00:13.158020", "stderr": "", "stderr_lines": [], "stdout": " 19:00:13 up 3 days, 8:31, 1 user, load average: 0.20, 0.12, 0.09", "stdout_lines": [" 19:00:13 up 3 days, 8:31, 1 user, load average: 0.20, 0.12, 0.09"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009052", "end": "2025-12-17 19:00:14.297673", "msg": "", "rc": 0, "start": "2025-12-17 19:00:14.288621", "stderr": "", "stderr_lines": [], "stdout": " 19:00:14 up 1:20, 1 user, load average: 1.45, 1.22, 1.14", "stdout_lines": [" 19:00:14 up 1:20, 1 user, load average: 1.45, 1.22, 1.14"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004297", "end": "2025-12-17 19:00:13.582656", "msg": "", "rc": 0, "start": "2025-12-17 19:00:13.578359", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004160", "end": "2025-12-17 19:00:13.596455", "msg": "", "rc": 0, "start": "2025-12-17 19:00:13.592295", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005396", "end": "2025-12-17 19:00:13.608544", "msg": "", "rc": 0, "start": "2025-12-17 19:00:13.603148", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004555", "end": "2025-12-17 19:00:13.640893", "msg": "", "rc": 0, "start": "2025-12-17 19:00:13.636338", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.007199", "end": "2025-12-17 19:00:13.654456", "msg": "", "rc": 0, "start": "2025-12-17 19:00:13.647257", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005910", "end": "2025-12-17 18:59:47.461883", "msg": "", "rc": 0, "start": "2025-12-17 18:59:47.455973", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005566", "end": "2025-12-17 18:59:40.907029", "msg": "", "rc": 0, "start": "2025-12-17 18:59:40.901463", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010437", "end": "2025-12-17 19:00:14.334725", "msg": "", "rc": 0, "start": "2025-12-17 19:00:14.324288", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011711", "end": "2025-12-17 19:00:14.347623", "msg": "", "rc": 0, "start": "2025-12-17 19:00:14.335912", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005639", "end": "2025-12-17 19:00:14.608870", "msg": "", "rc": 0, "start": "2025-12-17 19:00:14.603231", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004968", "end": "2025-12-17 18:59:44.065698", "msg": "", "rc": 0, "start": "2025-12-17 18:59:44.060730", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005343", "end": "2025-12-17 16:00:14.799596", "msg": "", "rc": 0, "start": "2025-12-17 16:00:14.794253", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004771", "end": "2025-12-17 18:59:50.767672", "msg": "", "rc": 0, "start": "2025-12-17 18:59:50.762901", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005367", "end": "2025-12-17 19:00:15.029865", "msg": "", "rc": 0, "start": "2025-12-17 19:00:15.024498", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.019784", "end": "2025-12-17 19:00:16.210493", "msg": "", "rc": 0, "start": "2025-12-17 19:00:16.190709", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025081", "end": "2025-12-17 19:00:14.981486", "msg": "", "rc": 0, "start": "2025-12-17 19:00:14.956405", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004561", "end": "2025-12-17 19:00:15.512624", "msg": "", "rc": 0, "start": "2025-12-17 19:00:15.508063", "stderr": "", "stderr_lines": [], "stdout": "77.7%", "stdout_lines": ["77.7%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004315", "end": "2025-12-17 19:00:15.520783", "msg": "", "rc": 0, "start": "2025-12-17 19:00:15.516468", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005256", "end": "2025-12-17 19:00:15.559597", "msg": "", "rc": 0, "start": "2025-12-17 19:00:15.554341", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005104", "end": "2025-12-17 19:00:15.563799", "msg": "", "rc": 0, "start": "2025-12-17 19:00:15.558695", "stderr": "", "stderr_lines": [], "stdout": "49.1%", "stdout_lines": ["49.1%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005379", "end": "2025-12-17 19:00:15.581950", "msg": "", "rc": 0, "start": "2025-12-17 19:00:15.576571", "stderr": "", "stderr_lines": [], "stdout": "60.1%", "stdout_lines": ["60.1%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003616", "end": "2025-12-17 18:59:49.389110", "msg": "", "rc": 0, "start": "2025-12-17 18:59:49.385494", "stderr": "", "stderr_lines": [], "stdout": "71.0%", "stdout_lines": ["71.0%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004496", "end": "2025-12-17 18:59:42.841167", "msg": "", "rc": 0, "start": "2025-12-17 18:59:42.836671", "stderr": "", "stderr_lines": [], "stdout": "69.0%", "stdout_lines": ["69.0%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012028", "end": "2025-12-17 19:00:16.241331", "msg": "", "rc": 0, "start": "2025-12-17 19:00:16.229303", "stderr": "", "stderr_lines": [], "stdout": "13.0%", "stdout_lines": ["13.0%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010855", "end": "2025-12-17 19:00:16.254929", "msg": "", "rc": 0, "start": "2025-12-17 19:00:16.244074", "stderr": "", "stderr_lines": [], "stdout": "6.9%", "stdout_lines": ["6.9%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005889", "end": "2025-12-17 19:00:16.547725", "msg": "", "rc": 0, "start": "2025-12-17 19:00:16.541836", "stderr": "", "stderr_lines": [], "stdout": "35.4%", "stdout_lines": ["35.4%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005186", "end": "2025-12-17 16:00:16.702762", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 16:00:16.697576", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004369", "end": "2025-12-17 18:59:46.063053", "msg": "", "rc": 0, "start": "2025-12-17 18:59:46.058684", "stderr": "", "stderr_lines": [], "stdout": "25.7%", "stdout_lines": ["25.7%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005360", "end": "2025-12-17 18:59:52.689398", "msg": "", "rc": 0, "start": "2025-12-17 18:59:52.684038", "stderr": "", "stderr_lines": [], "stdout": "59.6%", "stdout_lines": ["59.6%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005446", "end": "2025-12-17 19:00:16.983627", "msg": "", "rc": 0, "start": "2025-12-17 19:00:16.978181", "stderr": "", "stderr_lines": [], "stdout": "14.0%", "stdout_lines": ["14.0%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.008684", "end": "2025-12-17 19:00:17.074915", "msg": "", "rc": 0, "start": "2025-12-17 19:00:17.066231", "stderr": "", "stderr_lines": [], "stdout": "12.0%", "stdout_lines": ["12.0%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.026070", "end": "2025-12-17 19:00:16.907625", "msg": "", "rc": 0, "start": "2025-12-17 19:00:16.881555", "stderr": "", "stderr_lines": [], "stdout": "20.3%", "stdout_lines": ["20.3%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004948", "end": "2025-12-17 19:00:17.439551", "msg": "", "rc": 0, "start": "2025-12-17 19:00:17.434603", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005570", "end": "2025-12-17 19:00:17.442404", "msg": "", "rc": 0, "start": "2025-12-17 19:00:17.436834", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006703", "end": "2025-12-17 19:00:17.472753", "msg": "", "rc": 0, "start": "2025-12-17 19:00:17.466050", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002975", "end": "2025-12-17 19:00:17.473366", "msg": "", "rc": 0, "start": "2025-12-17 19:00:17.470391", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006810", "end": "2025-12-17 19:00:17.534434", "msg": "", "rc": 0, "start": "2025-12-17 19:00:17.527624", "stderr": "", "stderr_lines": [], "stdout": "53.0°C", "stdout_lines": ["53.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002726", "end": "2025-12-17 18:59:51.287075", "msg": "", "rc": 0, "start": "2025-12-17 18:59:51.284349", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005591", "end": "2025-12-17 18:59:44.806081", "msg": "", "rc": 0, "start": "2025-12-17 18:59:44.800490", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011988", "end": "2025-12-17 19:00:18.128450", "msg": "", "rc": 0, "start": "2025-12-17 19:00:18.116462", "stderr": "", "stderr_lines": [], "stdout": "32.1°C", "stdout_lines": ["32.1°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013258", "end": "2025-12-17 19:00:18.155360", "msg": "", "rc": 0, "start": "2025-12-17 19:00:18.142102", "stderr": "", "stderr_lines": [], "stdout": "37.0°C", "stdout_lines": ["37.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003342", "end": "2025-12-17 19:00:18.421568", "msg": "", "rc": 0, "start": "2025-12-17 19:00:18.418226", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003776", "end": "2025-12-17 16:00:18.608991", "msg": "", "rc": 0, "start": "2025-12-17 16:00:18.605215", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003557", "end": "2025-12-17 18:59:54.616086", "msg": "", "rc": 0, "start": "2025-12-17 18:59:54.612529", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003311", "end": "2025-12-17 18:59:48.037617", "msg": "", "rc": 0, "start": "2025-12-17 18:59:48.034306", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003209", "end": "2025-12-17 19:00:18.867921", "msg": "", "rc": 0, "start": "2025-12-17 19:00:18.864712", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004725", "end": "2025-12-17 19:00:19.071947", "msg": "", "rc": 0, "start": "2025-12-17 19:00:19.067222", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.032065", "end": "2025-12-17 19:00:18.877833", "msg": "", "rc": 0, "start": "2025-12-17 19:00:18.845768", "stderr": "", "stderr_lines": [], "stdout": "37.5°C", "stdout_lines": ["37.5°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004140", "end": "2025-12-17 19:00:19.442406", "msg": "", "rc": 0, "start": "2025-12-17 19:00:19.438266", "stderr": "", "stderr_lines": [], "stdout": "0.34", "stdout_lines": ["0.34"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004040", "end": "2025-12-17 19:00:19.463319", "msg": "", "rc": 0, "start": "2025-12-17 19:00:19.459279", "stderr": "", "stderr_lines": [], "stdout": "0.20", "stdout_lines": ["0.20"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004913", "end": "2025-12-17 19:00:19.484750", "msg": "", "rc": 0, "start": "2025-12-17 19:00:19.479837", "stderr": "", "stderr_lines": [], "stdout": "1.19", "stdout_lines": ["1.19"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005130", "end": "2025-12-17 19:00:19.496481", "msg": "", "rc": 0, "start": "2025-12-17 19:00:19.491351", "stderr": "", "stderr_lines": [], "stdout": "0.13", "stdout_lines": ["0.13"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005790", "end": "2025-12-17 19:00:19.520013", "msg": "", "rc": 0, "start": "2025-12-17 19:00:19.514223", "stderr": "", "stderr_lines": [], "stdout": "0.87", "stdout_lines": ["0.87"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004662", "end": "2025-12-17 18:59:53.297806", "msg": "", "rc": 0, "start": "2025-12-17 18:59:53.293144", "stderr": "", "stderr_lines": [], "stdout": "0.04", "stdout_lines": ["0.04"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005350", "end": "2025-12-17 18:59:46.783791", "msg": "", "rc": 0, "start": "2025-12-17 18:59:46.778441", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011140", "end": "2025-12-17 19:00:20.187338", "msg": "", "rc": 0, "start": "2025-12-17 19:00:20.176198", "stderr": "", "stderr_lines": [], "stdout": "0.25", "stdout_lines": ["0.25"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010024", "end": "2025-12-17 19:00:20.224014", "msg": "", "rc": 0, "start": "2025-12-17 19:00:20.213990", "stderr": "", "stderr_lines": [], "stdout": "0.29", "stdout_lines": ["0.29"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005600", "end": "2025-12-17 19:00:20.455230", "msg": "", "rc": 0, "start": "2025-12-17 19:00:20.449630", "stderr": "", "stderr_lines": [], "stdout": "0.01", "stdout_lines": ["0.01"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004935", "end": "2025-12-17 18:59:49.982381", "msg": "", "rc": 0, "start": "2025-12-17 18:59:49.977446", "stderr": "", "stderr_lines": [], "stdout": "0.48", "stdout_lines": ["0.48"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006845", "end": "2025-12-17 16:00:20.668931", "msg": "", "rc": 0, "start": "2025-12-17 16:00:20.662086", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004517", "end": "2025-12-17 18:59:56.658322", "msg": "", "rc": 0, "start": "2025-12-17 18:59:56.653805", "stderr": "", "stderr_lines": [], "stdout": "0.38", "stdout_lines": ["0.38"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005241", "end": "2025-12-17 19:00:20.880379", "msg": "", "rc": 0, "start": "2025-12-17 19:00:20.875138", "stderr": "", "stderr_lines": [], "stdout": "0.18", "stdout_lines": ["0.18"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.007806", "end": "2025-12-17 19:00:21.157241", "msg": "", "rc": 0, "start": "2025-12-17 19:00:21.149435", "stderr": "", "stderr_lines": [], "stdout": "1.70", "stdout_lines": ["1.70"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.023644", "end": "2025-12-17 19:00:20.887851", "msg": "", "rc": 0, "start": "2025-12-17 19:00:20.864207", "stderr": "", "stderr_lines": [], "stdout": "0.27", "stdout_lines": ["0.27"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:00:11 up 3 days, 8:32, 1 user, load average: 0.15, 0.18, 0.18\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.20\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:00:11 up 22 days, 6:11, 1 user, load average: 0.96, 0.64, 0.66\nDisk Usage: 14%\nMemory Usage: 49.1%\nCPU Load: 1.19\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:00:11 up 22 days, 5:51, 1 user, load average: 0.37, 0.23, 0.15\nDisk Usage: 23%\nMemory Usage: 77.7%\nCPU Load: 0.34\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:00:11 up 22 days, 7:24, 1 user, load average: 0.76, 0.82, 0.80\nDisk Usage: 14%\nMemory Usage: 60.1%\nCPU Load: 0.87\nCPU Temp: 53.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:00:11 up 22 days, 8:10, 1 user, load average: 0.06, 0.05, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.13\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:00:12 up 15 days, 8:26, 1 user, load average: 0.13, 0.13, 0.09\nDisk Usage: 21%\nMemory Usage: 20.3%\nCPU Load: 0.27\nCPU Temp: 37.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:00:12 up 194 days, 10:33, 1 user, load average: 0.30, 0.22, 0.19\nDisk Usage: 6%\nMemory Usage: 13.0%\nCPU Load: 0.25\nCPU Temp: 37.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:00:12 up 194 days, 10:33, 1 user, load average: 0.26, 0.21, 0.14\nDisk Usage: 3%\nMemory Usage: 6.9%\nCPU Load: 0.29\nCPU Temp: 32.1°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:59:45 up 11 days, 6:49, 0 user, load average: 0.05, 0.13, 0.17\nDisk Usage: 48%\nMemory Usage: 71.0%\nCPU Load: 0.04\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:59:39 up 18 days, 3:01, 0 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 25%\nMemory Usage: 69.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:00:12 up 3 days, 8:31, 1 user, load average: 0.01, 0.03, 0.00\nDisk Usage: 1%\nMemory Usage: 35.4%\nCPU Load: 0.01\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:59:42 up 20 days, 21:54, 0 user, load average: 0.35, 0.42, 0.45\nDisk Usage: 28%\nMemory Usage: 25.7%\nCPU Load: 0.48\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:59:48 up 17 days, 8:15, 0 user, load average: 0.41, 0.27, 0.30\nDisk Usage: 76%\nMemory Usage: 59.6%\nCPU Load: 0.38\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 4:00PM up 22 days, 5:50, 1 user, load averages: 0.14, 0.21, 0.23\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:00:13 up 3 days, 8:31, 1 user, load average: 0.20, 0.12, 0.09\nDisk Usage: 79%\nMemory Usage: 14.0%\nCPU Load: 0.18\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:00:14 up 1:20, 1 user, load average: 1.45, 1.22, 1.14\nDisk Usage: 1%\nMemory Usage: 12.0%\nCPU Load: 1.70\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T00:00:22.072610+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_000521_20083c_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_000521_20083c_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..b0ad6fa --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_000521_20083c_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `027848eaab7a494690d31f732a317dbe` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T00:05:00.001333+00:00 | +| **Fin** | 2025-12-18T00:05:21.911644+00:00 | +| **Durée** | 21.9s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003188", "end": "2025-12-17 19:05:10.779364", "msg": "", "rc": 0, "start": "2025-12-17 19:05:10.776176", "stderr": "", "stderr_lines": [], "stdout": " 19:05:10 up 22 days, 5:56, 1 user, load average: 0.30, 0.25, 0.17", "stdout_lines": [" 19:05:10 up 22 days, 5:56, 1 user, load average: 0.30, 0.25, 0.17"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003737", "end": "2025-12-17 19:05:10.792955", "msg": "", "rc": 0, "start": "2025-12-17 19:05:10.789218", "stderr": "", "stderr_lines": [], "stdout": " 19:05:10 up 22 days, 8:15, 1 user, load average: 0.10, 0.09, 0.02", "stdout_lines": [" 19:05:10 up 22 days, 8:15, 1 user, load average: 0.10, 0.09, 0.02"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003632", "end": "2025-12-17 19:05:10.794129", "msg": "", "rc": 0, "start": "2025-12-17 19:05:10.790497", "stderr": "", "stderr_lines": [], "stdout": " 19:05:10 up 22 days, 6:16, 1 user, load average: 1.00, 0.85, 0.74", "stdout_lines": [" 19:05:10 up 22 days, 6:16, 1 user, load average: 1.00, 0.85, 0.74"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003959", "end": "2025-12-17 19:05:10.808921", "msg": "", "rc": 0, "start": "2025-12-17 19:05:10.804962", "stderr": "", "stderr_lines": [], "stdout": " 19:05:10 up 22 days, 7:29, 1 user, load average: 0.64, 0.71, 0.77", "stdout_lines": [" 19:05:10 up 22 days, 7:29, 1 user, load average: 0.64, 0.71, 0.77"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002820", "end": "2025-12-17 19:05:10.819402", "msg": "", "rc": 0, "start": "2025-12-17 19:05:10.816582", "stderr": "", "stderr_lines": [], "stdout": " 19:05:10 up 3 days, 8:37, 1 user, load average: 0.01, 0.12, 0.15", "stdout_lines": [" 19:05:10 up 3 days, 8:37, 1 user, load average: 0.01, 0.12, 0.15"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002758", "end": "2025-12-17 19:04:44.588753", "msg": "", "rc": 0, "start": "2025-12-17 19:04:44.585995", "stderr": "", "stderr_lines": [], "stdout": " 19:04:44 up 11 days, 6:54, 0 user, load average: 0.09, 0.08, 0.13", "stdout_lines": [" 19:04:44 up 11 days, 6:54, 0 user, load average: 0.09, 0.08, 0.13"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003641", "end": "2025-12-17 19:04:38.061626", "msg": "", "rc": 0, "start": "2025-12-17 19:04:38.057985", "stderr": "", "stderr_lines": [], "stdout": " 19:04:38 up 18 days, 3:06, 0 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 19:04:38 up 18 days, 3:06, 0 user, load average: 0.00, 0.00, 0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008382", "end": "2025-12-17 19:05:11.471045", "msg": "", "rc": 0, "start": "2025-12-17 19:05:11.462663", "stderr": "", "stderr_lines": [], "stdout": " 19:05:11 up 194 days, 10:38, 1 user, load average: 0.20, 0.17, 0.13", "stdout_lines": [" 19:05:11 up 194 days, 10:38, 1 user, load average: 0.20, 0.17, 0.13"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009353", "end": "2025-12-17 19:05:11.518514", "msg": "", "rc": 0, "start": "2025-12-17 19:05:11.509161", "stderr": "", "stderr_lines": [], "stdout": " 19:05:11 up 194 days, 10:38, 1 user, load average: 0.40, 0.29, 0.22", "stdout_lines": [" 19:05:11 up 194 days, 10:38, 1 user, load average: 0.40, 0.29, 0.22"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004870", "end": "2025-12-17 19:05:11.749554", "msg": "", "rc": 0, "start": "2025-12-17 19:05:11.744684", "stderr": "", "stderr_lines": [], "stdout": " 19:05:11 up 3 days, 8:36, 1 user, load average: 0.10, 0.08, 0.02", "stdout_lines": [" 19:05:11 up 3 days, 8:36, 1 user, load average: 0.10, 0.08, 0.02"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003085", "end": "2025-12-17 19:04:41.226452", "msg": "", "rc": 0, "start": "2025-12-17 19:04:41.223367", "stderr": "", "stderr_lines": [], "stdout": " 19:04:41 up 20 days, 21:58, 0 user, load average: 1.23, 0.60, 0.51", "stdout_lines": [" 19:04:41 up 20 days, 21:58, 0 user, load average: 1.23, 0.60, 0.51"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.005296", "end": "2025-12-17 19:04:47.892239", "msg": "", "rc": 0, "start": "2025-12-17 19:04:47.886943", "stderr": "", "stderr_lines": [], "stdout": " 19:04:47 up 17 days, 8:20, 0 user, load average: 0.39, 0.44, 0.37", "stdout_lines": [" 19:04:47 up 17 days, 8:20, 0 user, load average: 0.39, 0.44, 0.37"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004351", "end": "2025-12-17 16:05:11.964439", "msg": "", "rc": 0, "start": "2025-12-17 16:05:11.960088", "stderr": "", "stderr_lines": [], "stdout": " 4:05PM up 22 days, 5:54, 1 user, load averages: 0.36, 0.23, 0.23", "stdout_lines": [" 4:05PM up 22 days, 5:54, 1 user, load averages: 0.36, 0.23, 0.23"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003715", "end": "2025-12-17 19:05:12.180369", "msg": "", "rc": 0, "start": "2025-12-17 19:05:12.176654", "stderr": "", "stderr_lines": [], "stdout": " 19:05:12 up 3 days, 8:36, 1 user, load average: 0.07, 0.12, 0.09", "stdout_lines": [" 19:05:12 up 3 days, 8:36, 1 user, load average: 0.07, 0.12, 0.09"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008757", "end": "2025-12-17 19:05:12.715065", "msg": "", "rc": 0, "start": "2025-12-17 19:05:12.706308", "stderr": "", "stderr_lines": [], "stdout": " 19:05:12 up 1:25, 1 user, load average: 1.09, 1.13, 1.12", "stdout_lines": [" 19:05:12 up 1:25, 1 user, load average: 1.09, 1.13, 1.12"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019689", "end": "2025-12-17 19:05:12.161706", "msg": "", "rc": 0, "start": "2025-12-17 19:05:12.142017", "stderr": "", "stderr_lines": [], "stdout": " 19:05:12 up 15 days, 8:31, 1 user, load average: 0.21, 0.14, 0.10", "stdout_lines": [" 19:05:12 up 15 days, 8:31, 1 user, load average: 0.21, 0.14, 0.10"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004317", "end": "2025-12-17 19:05:12.674442", "msg": "", "rc": 0, "start": "2025-12-17 19:05:12.670125", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004121", "end": "2025-12-17 19:05:12.696358", "msg": "", "rc": 0, "start": "2025-12-17 19:05:12.692237", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004358", "end": "2025-12-17 19:05:12.704959", "msg": "", "rc": 0, "start": "2025-12-17 19:05:12.700601", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004791", "end": "2025-12-17 19:05:12.725814", "msg": "", "rc": 0, "start": "2025-12-17 19:05:12.721023", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005494", "end": "2025-12-17 19:05:12.737939", "msg": "", "rc": 0, "start": "2025-12-17 19:05:12.732445", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004782", "end": "2025-12-17 19:04:46.520062", "msg": "", "rc": 0, "start": "2025-12-17 19:04:46.515280", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005908", "end": "2025-12-17 19:04:39.984528", "msg": "", "rc": 0, "start": "2025-12-17 19:04:39.978620", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010433", "end": "2025-12-17 19:05:13.433324", "msg": "", "rc": 0, "start": "2025-12-17 19:05:13.422891", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011606", "end": "2025-12-17 19:05:13.438811", "msg": "", "rc": 0, "start": "2025-12-17 19:05:13.427205", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005786", "end": "2025-12-17 19:05:13.669338", "msg": "", "rc": 0, "start": "2025-12-17 19:05:13.663552", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005088", "end": "2025-12-17 19:04:43.161805", "msg": "", "rc": 0, "start": "2025-12-17 19:04:43.156717", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005371", "end": "2025-12-17 16:05:13.889171", "msg": "", "rc": 0, "start": "2025-12-17 16:05:13.883800", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004818", "end": "2025-12-17 19:04:49.857632", "msg": "", "rc": 0, "start": "2025-12-17 19:04:49.852814", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005402", "end": "2025-12-17 19:05:14.094332", "msg": "", "rc": 0, "start": "2025-12-17 19:05:14.088930", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.019600", "end": "2025-12-17 19:05:14.742865", "msg": "", "rc": 0, "start": "2025-12-17 19:05:14.723265", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025643", "end": "2025-12-17 19:05:14.059430", "msg": "", "rc": 0, "start": "2025-12-17 19:05:14.033787", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004355", "end": "2025-12-17 19:05:14.580163", "msg": "", "rc": 0, "start": "2025-12-17 19:05:14.575808", "stderr": "", "stderr_lines": [], "stdout": "77.8%", "stdout_lines": ["77.8%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004365", "end": "2025-12-17 19:05:14.593843", "msg": "", "rc": 0, "start": "2025-12-17 19:05:14.589478", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004826", "end": "2025-12-17 19:05:14.606867", "msg": "", "rc": 0, "start": "2025-12-17 19:05:14.602041", "stderr": "", "stderr_lines": [], "stdout": "49.2%", "stdout_lines": ["49.2%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005189", "end": "2025-12-17 19:05:14.637525", "msg": "", "rc": 0, "start": "2025-12-17 19:05:14.632336", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005355", "end": "2025-12-17 19:05:14.647181", "msg": "", "rc": 0, "start": "2025-12-17 19:05:14.641826", "stderr": "", "stderr_lines": [], "stdout": "60.1%", "stdout_lines": ["60.1%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004684", "end": "2025-12-17 19:04:48.406088", "msg": "", "rc": 0, "start": "2025-12-17 19:04:48.401404", "stderr": "", "stderr_lines": [], "stdout": "71.2%", "stdout_lines": ["71.2%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004470", "end": "2025-12-17 19:04:41.875226", "msg": "", "rc": 0, "start": "2025-12-17 19:04:41.870756", "stderr": "", "stderr_lines": [], "stdout": "69.0%", "stdout_lines": ["69.0%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010784", "end": "2025-12-17 19:05:15.280171", "msg": "", "rc": 0, "start": "2025-12-17 19:05:15.269387", "stderr": "", "stderr_lines": [], "stdout": "6.9%", "stdout_lines": ["6.9%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012160", "end": "2025-12-17 19:05:15.322933", "msg": "", "rc": 0, "start": "2025-12-17 19:05:15.310773", "stderr": "", "stderr_lines": [], "stdout": "12.8%", "stdout_lines": ["12.8%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005744", "end": "2025-12-17 19:05:15.546911", "msg": "", "rc": 0, "start": "2025-12-17 19:05:15.541167", "stderr": "", "stderr_lines": [], "stdout": "35.4%", "stdout_lines": ["35.4%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004969", "end": "2025-12-17 19:04:45.044098", "msg": "", "rc": 0, "start": "2025-12-17 19:04:45.039129", "stderr": "", "stderr_lines": [], "stdout": "27.4%", "stdout_lines": ["27.4%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005138", "end": "2025-12-17 16:05:15.770170", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 16:05:15.765032", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005686", "end": "2025-12-17 19:04:51.707382", "msg": "", "rc": 0, "start": "2025-12-17 19:04:51.701696", "stderr": "", "stderr_lines": [], "stdout": "60.5%", "stdout_lines": ["60.5%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005446", "end": "2025-12-17 19:05:15.970494", "msg": "", "rc": 0, "start": "2025-12-17 19:05:15.965048", "stderr": "", "stderr_lines": [], "stdout": "14.1%", "stdout_lines": ["14.1%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.008419", "end": "2025-12-17 19:05:16.696167", "msg": "", "rc": 0, "start": "2025-12-17 19:05:16.687748", "stderr": "", "stderr_lines": [], "stdout": "11.8%", "stdout_lines": ["11.8%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025414", "end": "2025-12-17 19:05:15.970151", "msg": "", "rc": 0, "start": "2025-12-17 19:05:15.944737", "stderr": "", "stderr_lines": [], "stdout": "20.3%", "stdout_lines": ["20.3%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004823", "end": "2025-12-17 19:05:16.502679", "msg": "", "rc": 0, "start": "2025-12-17 19:05:16.497856", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005378", "end": "2025-12-17 19:05:16.523283", "msg": "", "rc": 0, "start": "2025-12-17 19:05:16.517905", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003243", "end": "2025-12-17 19:05:16.534401", "msg": "", "rc": 0, "start": "2025-12-17 19:05:16.531158", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006543", "end": "2025-12-17 19:05:16.553713", "msg": "", "rc": 0, "start": "2025-12-17 19:05:16.547170", "stderr": "", "stderr_lines": [], "stdout": "52.5°C", "stdout_lines": ["52.5°C"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005336", "end": "2025-12-17 19:05:16.608539", "msg": "", "rc": 0, "start": "2025-12-17 19:05:16.603203", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002484", "end": "2025-12-17 19:04:50.318838", "msg": "", "rc": 0, "start": "2025-12-17 19:04:50.316354", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003275", "end": "2025-12-17 19:04:43.830630", "msg": "", "rc": 0, "start": "2025-12-17 19:04:43.827355", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012079", "end": "2025-12-17 19:05:17.205433", "msg": "", "rc": 0, "start": "2025-12-17 19:05:17.193354", "stderr": "", "stderr_lines": [], "stdout": "32.6°C", "stdout_lines": ["32.6°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013215", "end": "2025-12-17 19:05:17.247556", "msg": "", "rc": 0, "start": "2025-12-17 19:05:17.234341", "stderr": "", "stderr_lines": [], "stdout": "36.5°C", "stdout_lines": ["36.5°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003366", "end": "2025-12-17 19:05:17.480096", "msg": "", "rc": 0, "start": "2025-12-17 19:05:17.476730", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002954", "end": "2025-12-17 19:04:47.017503", "msg": "", "rc": 0, "start": "2025-12-17 19:04:47.014549", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003986", "end": "2025-12-17 16:05:17.703067", "msg": "", "rc": 0, "start": "2025-12-17 16:05:17.699081", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002454", "end": "2025-12-17 19:04:53.701643", "msg": "", "rc": 0, "start": "2025-12-17 19:04:53.699189", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003003", "end": "2025-12-17 19:05:17.905314", "msg": "", "rc": 0, "start": "2025-12-17 19:05:17.902311", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004501", "end": "2025-12-17 19:05:18.805863", "msg": "", "rc": 0, "start": "2025-12-17 19:05:18.801362", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028176", "end": "2025-12-17 19:05:17.916640", "msg": "", "rc": 0, "start": "2025-12-17 19:05:17.888464", "stderr": "", "stderr_lines": [], "stdout": "35.8°C", "stdout_lines": ["35.8°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004037", "end": "2025-12-17 19:05:18.466780", "msg": "", "rc": 0, "start": "2025-12-17 19:05:18.462743", "stderr": "", "stderr_lines": [], "stdout": "0.09", "stdout_lines": ["0.09"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004860", "end": "2025-12-17 19:05:18.501481", "msg": "", "rc": 0, "start": "2025-12-17 19:05:18.496621", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004957", "end": "2025-12-17 19:05:18.500257", "msg": "", "rc": 0, "start": "2025-12-17 19:05:18.495300", "stderr": "", "stderr_lines": [], "stdout": "1.08", "stdout_lines": ["1.08"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006544", "end": "2025-12-17 19:05:18.526882", "msg": "", "rc": 0, "start": "2025-12-17 19:05:18.520338", "stderr": "", "stderr_lines": [], "stdout": "0.85", "stdout_lines": ["0.85"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004231", "end": "2025-12-17 19:05:18.580552", "msg": "", "rc": 0, "start": "2025-12-17 19:05:18.576321", "stderr": "", "stderr_lines": [], "stdout": "0.44", "stdout_lines": ["0.44"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004241", "end": "2025-12-17 19:04:52.291747", "msg": "", "rc": 0, "start": "2025-12-17 19:04:52.287506", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005401", "end": "2025-12-17 19:04:45.834421", "msg": "", "rc": 0, "start": "2025-12-17 19:04:45.829020", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.009992", "end": "2025-12-17 19:05:19.197790", "msg": "", "rc": 0, "start": "2025-12-17 19:05:19.187798", "stderr": "", "stderr_lines": [], "stdout": "0.18", "stdout_lines": ["0.18"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011364", "end": "2025-12-17 19:05:19.219938", "msg": "", "rc": 0, "start": "2025-12-17 19:05:19.208574", "stderr": "", "stderr_lines": [], "stdout": "0.65", "stdout_lines": ["0.65"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005562", "end": "2025-12-17 19:05:19.441219", "msg": "", "rc": 0, "start": "2025-12-17 19:05:19.435657", "stderr": "", "stderr_lines": [], "stdout": "0.17", "stdout_lines": ["0.17"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005868", "end": "2025-12-17 16:05:19.671143", "msg": "", "rc": 0, "start": "2025-12-17 16:05:19.665275", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005207", "end": "2025-12-17 19:04:49.032238", "msg": "", "rc": 0, "start": "2025-12-17 19:04:49.027031", "stderr": "", "stderr_lines": [], "stdout": "1.21", "stdout_lines": ["1.21"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004344", "end": "2025-12-17 19:04:55.640938", "msg": "", "rc": 0, "start": "2025-12-17 19:04:55.636594", "stderr": "", "stderr_lines": [], "stdout": "0.35", "stdout_lines": ["0.35"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005313", "end": "2025-12-17 19:05:19.859178", "msg": "", "rc": 0, "start": "2025-12-17 19:05:19.853865", "stderr": "", "stderr_lines": [], "stdout": "0.06", "stdout_lines": ["0.06"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.007419", "end": "2025-12-17 19:05:20.832280", "msg": "", "rc": 0, "start": "2025-12-17 19:05:20.824861", "stderr": "", "stderr_lines": [], "stdout": "1.07", "stdout_lines": ["1.07"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.027061", "end": "2025-12-17 19:05:20.073439", "msg": "", "rc": 0, "start": "2025-12-17 19:05:20.046378", "stderr": "", "stderr_lines": [], "stdout": "0.33", "stdout_lines": ["0.33"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:05:10 up 3 days, 8:37, 1 user, load average: 0.01, 0.12, 0.15\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.09\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:05:10 up 22 days, 5:56, 1 user, load average: 0.30, 0.25, 0.17\nDisk Usage: 23%\nMemory Usage: 77.8%\nCPU Load: 0.44\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:05:10 up 22 days, 6:16, 1 user, load average: 1.00, 0.85, 0.74\nDisk Usage: 14%\nMemory Usage: 49.2%\nCPU Load: 1.08\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:05:10 up 22 days, 7:29, 1 user, load average: 0.64, 0.71, 0.77\nDisk Usage: 14%\nMemory Usage: 60.1%\nCPU Load: 0.85\nCPU Temp: 52.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:05:10 up 22 days, 8:15, 1 user, load average: 0.10, 0.09, 0.02\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:05:12 up 15 days, 8:31, 1 user, load average: 0.21, 0.14, 0.10\nDisk Usage: 21%\nMemory Usage: 20.3%\nCPU Load: 0.33\nCPU Temp: 35.8°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:05:11 up 194 days, 10:38, 1 user, load average: 0.40, 0.29, 0.22\nDisk Usage: 6%\nMemory Usage: 12.8%\nCPU Load: 0.65\nCPU Temp: 36.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:05:11 up 194 days, 10:38, 1 user, load average: 0.20, 0.17, 0.13\nDisk Usage: 3%\nMemory Usage: 6.9%\nCPU Load: 0.18\nCPU Temp: 32.6°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:04:44 up 11 days, 6:54, 0 user, load average: 0.09, 0.08, 0.13\nDisk Usage: 48%\nMemory Usage: 71.2%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:04:38 up 18 days, 3:06, 0 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 25%\nMemory Usage: 69.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:05:11 up 3 days, 8:36, 1 user, load average: 0.10, 0.08, 0.02\nDisk Usage: 1%\nMemory Usage: 35.4%\nCPU Load: 0.17\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:04:41 up 20 days, 21:58, 0 user, load average: 1.23, 0.60, 0.51\nDisk Usage: 28%\nMemory Usage: 27.4%\nCPU Load: 1.21\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:04:47 up 17 days, 8:20, 0 user, load average: 0.39, 0.44, 0.37\nDisk Usage: 76%\nMemory Usage: 60.5%\nCPU Load: 0.35\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 4:05PM up 22 days, 5:54, 1 user, load averages: 0.36, 0.23, 0.23\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:05:12 up 3 days, 8:36, 1 user, load average: 0.07, 0.12, 0.09\nDisk Usage: 79%\nMemory Usage: 14.1%\nCPU Load: 0.06\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:05:12 up 1:25, 1 user, load average: 1.09, 1.13, 1.12\nDisk Usage: 1%\nMemory Usage: 11.8%\nCPU Load: 1.07\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T00:05:21.954920+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_001023_391704_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_001023_391704_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..3cdde9f --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_001023_391704_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `3500e1033bff4e4a877c04f9230978b4` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T00:10:00.000431+00:00 | +| **Fin** | 2025-12-18T00:10:23.799551+00:00 | +| **Durée** | 23.8s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003972", "end": "2025-12-17 19:10:12.110226", "msg": "", "rc": 0, "start": "2025-12-17 19:10:12.106254", "stderr": "", "stderr_lines": [], "stdout": " 19:10:12 up 22 days, 8:20, 1 user, load average: 0.06, 0.07, 0.02", "stdout_lines": [" 19:10:12 up 22 days, 8:20, 1 user, load average: 0.06, 0.07, 0.02"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003898", "end": "2025-12-17 19:10:12.120652", "msg": "", "rc": 0, "start": "2025-12-17 19:10:12.116754", "stderr": "", "stderr_lines": [], "stdout": " 19:10:12 up 22 days, 7:34, 1 user, load average: 0.90, 0.84, 0.81", "stdout_lines": [" 19:10:12 up 22 days, 7:34, 1 user, load average: 0.90, 0.84, 0.81"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002960", "end": "2025-12-17 19:10:12.132411", "msg": "", "rc": 0, "start": "2025-12-17 19:10:12.129451", "stderr": "", "stderr_lines": [], "stdout": " 19:10:12 up 3 days, 8:42, 1 user, load average: 0.20, 0.16, 0.16", "stdout_lines": [" 19:10:12 up 3 days, 8:42, 1 user, load average: 0.20, 0.16, 0.16"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008370", "end": "2025-12-17 19:10:12.769856", "msg": "", "rc": 0, "start": "2025-12-17 19:10:12.761486", "stderr": "", "stderr_lines": [], "stdout": " 19:10:12 up 194 days, 10:43, 1 user, load average: 0.22, 0.14, 0.12", "stdout_lines": [" 19:10:12 up 194 days, 10:43, 1 user, load average: 0.22, 0.14, 0.12"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009179", "end": "2025-12-17 19:10:12.821020", "msg": "", "rc": 0, "start": "2025-12-17 19:10:12.811841", "stderr": "", "stderr_lines": [], "stdout": " 19:10:12 up 194 days, 10:43, 1 user, load average: 0.32, 0.29, 0.23", "stdout_lines": [" 19:10:12 up 194 days, 10:43, 1 user, load average: 0.32, 0.29, 0.23"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004498", "end": "2025-12-17 19:10:13.088076", "msg": "", "rc": 0, "start": "2025-12-17 19:10:12.083578", "stderr": "", "stderr_lines": [], "stdout": " 19:10:12 up 22 days, 6:01, 1 user, load average: 0.24, 0.19, 0.17", "stdout_lines": [" 19:10:12 up 22 days, 6:01, 1 user, load average: 0.24, 0.19, 0.17"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004002", "end": "2025-12-17 19:10:13.101594", "msg": "", "rc": 0, "start": "2025-12-17 19:10:12.097592", "stderr": "", "stderr_lines": [], "stdout": " 19:10:12 up 22 days, 6:21, 1 user, load average: 0.52, 0.68, 0.70", "stdout_lines": [" 19:10:12 up 22 days, 6:21, 1 user, load average: 0.52, 0.68, 0.70"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002856", "end": "2025-12-17 19:09:46.553867", "msg": "", "rc": 0, "start": "2025-12-17 19:09:46.551011", "stderr": "", "stderr_lines": [], "stdout": " 19:09:46 up 11 days, 6:59, 0 user, load average: 0.01, 0.04, 0.08", "stdout_lines": [" 19:09:46 up 11 days, 6:59, 0 user, load average: 0.01, 0.04, 0.08"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003565", "end": "2025-12-17 19:09:40.080339", "msg": "", "rc": 0, "start": "2025-12-17 19:09:40.076774", "stderr": "", "stderr_lines": [], "stdout": " 19:09:40 up 18 days, 3:11, 0 user, load average: 0.02, 0.01, 0.00", "stdout_lines": [" 19:09:40 up 18 days, 3:11, 0 user, load average: 0.02, 0.01, 0.00"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004681", "end": "2025-12-17 19:10:13.545028", "msg": "", "rc": 0, "start": "2025-12-17 19:10:13.540347", "stderr": "", "stderr_lines": [], "stdout": " 19:10:13 up 3 days, 8:41, 1 user, load average: 0.04, 0.05, 0.01", "stdout_lines": [" 19:10:13 up 3 days, 8:41, 1 user, load average: 0.04, 0.05, 0.01"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019564", "end": "2025-12-17 19:10:13.471561", "msg": "", "rc": 0, "start": "2025-12-17 19:10:13.451997", "stderr": "", "stderr_lines": [], "stdout": " 19:10:13 up 15 days, 8:36, 1 user, load average: 0.15, 0.18, 0.12", "stdout_lines": [" 19:10:13 up 15 days, 8:36, 1 user, load average: 0.15, 0.18, 0.12"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003254", "end": "2025-12-17 19:09:42.973996", "msg": "", "rc": 0, "start": "2025-12-17 19:09:42.970742", "stderr": "", "stderr_lines": [], "stdout": " 19:09:42 up 20 days, 22:04, 0 user, load average: 0.53, 0.52, 0.49", "stdout_lines": [" 19:09:42 up 20 days, 22:04, 0 user, load average: 0.53, 0.52, 0.49"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003723", "end": "2025-12-17 19:09:49.628153", "msg": "", "rc": 0, "start": "2025-12-17 19:09:49.624430", "stderr": "", "stderr_lines": [], "stdout": " 19:09:49 up 17 days, 8:25, 0 user, load average: 0.16, 0.37, 0.36", "stdout_lines": [" 19:09:49 up 17 days, 8:25, 0 user, load average: 0.16, 0.37, 0.36"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004057", "end": "2025-12-17 16:10:13.784726", "msg": "", "rc": 0, "start": "2025-12-17 16:10:13.780669", "stderr": "", "stderr_lines": [], "stdout": " 4:10PM up 22 days, 6 hrs, 1 user, load averages: 0.15, 0.19, 0.20", "stdout_lines": [" 4:10PM up 22 days, 6 hrs, 1 user, load averages: 0.15, 0.19, 0.20"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008953", "end": "2025-12-17 19:10:14.449470", "msg": "", "rc": 0, "start": "2025-12-17 19:10:14.440517", "stderr": "", "stderr_lines": [], "stdout": " 19:10:14 up 1:30, 1 user, load average: 1.21, 1.11, 1.10", "stdout_lines": [" 19:10:14 up 1:30, 1 user, load average: 1.21, 1.11, 1.10"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003674", "end": "2025-12-17 19:10:13.975764", "msg": "", "rc": 0, "start": "2025-12-17 19:10:13.972090", "stderr": "", "stderr_lines": [], "stdout": " 19:10:13 up 3 days, 8:41, 1 user, load average: 0.00, 0.04, 0.06", "stdout_lines": [" 19:10:13 up 3 days, 8:41, 1 user, load average: 0.00, 0.04, 0.06"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004325", "end": "2025-12-17 19:10:14.368286", "msg": "", "rc": 0, "start": "2025-12-17 19:10:14.363961", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004603", "end": "2025-12-17 19:10:14.385746", "msg": "", "rc": 0, "start": "2025-12-17 19:10:14.381143", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004167", "end": "2025-12-17 19:10:14.393279", "msg": "", "rc": 0, "start": "2025-12-17 19:10:14.389112", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004790", "end": "2025-12-17 19:10:14.416715", "msg": "", "rc": 0, "start": "2025-12-17 19:10:14.411925", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005503", "end": "2025-12-17 19:10:14.435514", "msg": "", "rc": 0, "start": "2025-12-17 19:10:14.430011", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005169", "end": "2025-12-17 19:09:48.166300", "msg": "", "rc": 0, "start": "2025-12-17 19:09:48.161131", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005701", "end": "2025-12-17 19:09:41.662268", "msg": "", "rc": 0, "start": "2025-12-17 19:09:41.656567", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010581", "end": "2025-12-17 19:10:15.124532", "msg": "", "rc": 0, "start": "2025-12-17 19:10:15.113951", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011593", "end": "2025-12-17 19:10:15.165709", "msg": "", "rc": 0, "start": "2025-12-17 19:10:15.154116", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005864", "end": "2025-12-17 19:10:15.323358", "msg": "", "rc": 0, "start": "2025-12-17 19:10:15.317494", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005290", "end": "2025-12-17 19:09:44.815471", "msg": "", "rc": 0, "start": "2025-12-17 19:09:44.810181", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004829", "end": "2025-12-17 19:09:51.534057", "msg": "", "rc": 0, "start": "2025-12-17 19:09:51.529228", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005372", "end": "2025-12-17 16:10:15.630797", "msg": "", "rc": 0, "start": "2025-12-17 16:10:15.625425", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005396", "end": "2025-12-17 19:10:15.768035", "msg": "", "rc": 0, "start": "2025-12-17 19:10:15.762639", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.020956", "end": "2025-12-17 19:10:16.411410", "msg": "", "rc": 0, "start": "2025-12-17 19:10:16.390454", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025707", "end": "2025-12-17 19:10:15.762030", "msg": "", "rc": 0, "start": "2025-12-17 19:10:15.736323", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004318", "end": "2025-12-17 19:10:16.272536", "msg": "", "rc": 0, "start": "2025-12-17 19:10:16.268218", "stderr": "", "stderr_lines": [], "stdout": "77.8%", "stdout_lines": ["77.8%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004371", "end": "2025-12-17 19:10:16.289581", "msg": "", "rc": 0, "start": "2025-12-17 19:10:16.285210", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004782", "end": "2025-12-17 19:10:16.311108", "msg": "", "rc": 0, "start": "2025-12-17 19:10:16.306326", "stderr": "", "stderr_lines": [], "stdout": "49.3%", "stdout_lines": ["49.3%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004900", "end": "2025-12-17 19:10:16.329867", "msg": "", "rc": 0, "start": "2025-12-17 19:10:16.324967", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005538", "end": "2025-12-17 19:10:16.340138", "msg": "", "rc": 0, "start": "2025-12-17 19:10:16.334600", "stderr": "", "stderr_lines": [], "stdout": "60.1%", "stdout_lines": ["60.1%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003665", "end": "2025-12-17 19:09:50.098652", "msg": "", "rc": 0, "start": "2025-12-17 19:09:50.094987", "stderr": "", "stderr_lines": [], "stdout": "71.1%", "stdout_lines": ["71.1%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004725", "end": "2025-12-17 19:09:43.570433", "msg": "", "rc": 0, "start": "2025-12-17 19:09:43.565708", "stderr": "", "stderr_lines": [], "stdout": "69.0%", "stdout_lines": ["69.0%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011109", "end": "2025-12-17 19:10:16.988855", "msg": "", "rc": 0, "start": "2025-12-17 19:10:16.977746", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011850", "end": "2025-12-17 19:10:17.006634", "msg": "", "rc": 0, "start": "2025-12-17 19:10:16.994784", "stderr": "", "stderr_lines": [], "stdout": "12.8%", "stdout_lines": ["12.8%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005965", "end": "2025-12-17 19:10:17.234660", "msg": "", "rc": 0, "start": "2025-12-17 19:10:17.228695", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010363", "end": "2025-12-17 19:09:46.760082", "msg": "", "rc": 0, "start": "2025-12-17 19:09:46.749719", "stderr": "", "stderr_lines": [], "stdout": "27.4%", "stdout_lines": ["27.4%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005807", "end": "2025-12-17 16:10:17.490628", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 16:10:17.484821", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004556", "end": "2025-12-17 19:09:53.446306", "msg": "", "rc": 0, "start": "2025-12-17 19:09:53.441750", "stderr": "", "stderr_lines": [], "stdout": "59.1%", "stdout_lines": ["59.1%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005575", "end": "2025-12-17 19:10:17.686663", "msg": "", "rc": 0, "start": "2025-12-17 19:10:17.681088", "stderr": "", "stderr_lines": [], "stdout": "14.0%", "stdout_lines": ["14.0%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.009153", "end": "2025-12-17 19:10:18.494538", "msg": "", "rc": 0, "start": "2025-12-17 19:10:18.485385", "stderr": "", "stderr_lines": [], "stdout": "11.8%", "stdout_lines": ["11.8%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.026061", "end": "2025-12-17 19:10:17.663009", "msg": "", "rc": 0, "start": "2025-12-17 19:10:17.636948", "stderr": "", "stderr_lines": [], "stdout": "20.0%", "stdout_lines": ["20.0%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005268", "end": "2025-12-17 19:10:18.211467", "msg": "", "rc": 0, "start": "2025-12-17 19:10:18.206199", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005181", "end": "2025-12-17 19:10:18.214397", "msg": "", "rc": 0, "start": "2025-12-17 19:10:18.209216", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005683", "end": "2025-12-17 19:10:18.244205", "msg": "", "rc": 0, "start": "2025-12-17 19:10:18.238522", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003166", "end": "2025-12-17 19:10:18.251918", "msg": "", "rc": 0, "start": "2025-12-17 19:10:18.248752", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006326", "end": "2025-12-17 19:10:18.277993", "msg": "", "rc": 0, "start": "2025-12-17 19:10:18.271667", "stderr": "", "stderr_lines": [], "stdout": "52.5°C", "stdout_lines": ["52.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002391", "end": "2025-12-17 19:09:52.008516", "msg": "", "rc": 0, "start": "2025-12-17 19:09:52.006125", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003220", "end": "2025-12-17 19:09:45.507748", "msg": "", "rc": 0, "start": "2025-12-17 19:09:45.504528", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011744", "end": "2025-12-17 19:10:18.945144", "msg": "", "rc": 0, "start": "2025-12-17 19:10:18.933400", "stderr": "", "stderr_lines": [], "stdout": "32.6°C", "stdout_lines": ["32.6°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012807", "end": "2025-12-17 19:10:18.979802", "msg": "", "rc": 0, "start": "2025-12-17 19:10:18.966995", "stderr": "", "stderr_lines": [], "stdout": "37.5°C", "stdout_lines": ["37.5°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003122", "end": "2025-12-17 19:10:19.153966", "msg": "", "rc": 0, "start": "2025-12-17 19:10:19.150844", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002969", "end": "2025-12-17 19:09:48.674705", "msg": "", "rc": 0, "start": "2025-12-17 19:09:48.671736", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003827", "end": "2025-12-17 16:10:19.425565", "msg": "", "rc": 0, "start": "2025-12-17 16:10:19.421738", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002742", "end": "2025-12-17 19:09:55.377200", "msg": "", "rc": 0, "start": "2025-12-17 19:09:55.374458", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002896", "end": "2025-12-17 19:10:19.608700", "msg": "", "rc": 0, "start": "2025-12-17 19:10:19.605804", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004914", "end": "2025-12-17 19:10:20.468629", "msg": "", "rc": 0, "start": "2025-12-17 19:10:20.463715", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.032387", "end": "2025-12-17 19:10:19.802473", "msg": "", "rc": 0, "start": "2025-12-17 19:10:19.770086", "stderr": "", "stderr_lines": [], "stdout": "38.0°C", "stdout_lines": ["38.0°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004077", "end": "2025-12-17 19:10:20.345102", "msg": "", "rc": 0, "start": "2025-12-17 19:10:20.341025", "stderr": "", "stderr_lines": [], "stdout": "0.22", "stdout_lines": ["0.22"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004737", "end": "2025-12-17 19:10:20.368488", "msg": "", "rc": 0, "start": "2025-12-17 19:10:20.363751", "stderr": "", "stderr_lines": [], "stdout": "0.44", "stdout_lines": ["0.44"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004127", "end": "2025-12-17 19:10:20.379006", "msg": "", "rc": 0, "start": "2025-12-17 19:10:20.374879", "stderr": "", "stderr_lines": [], "stdout": "0.41", "stdout_lines": ["0.41"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004497", "end": "2025-12-17 19:10:20.403629", "msg": "", "rc": 0, "start": "2025-12-17 19:10:20.399132", "stderr": "", "stderr_lines": [], "stdout": "0.05", "stdout_lines": ["0.05"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005865", "end": "2025-12-17 19:10:20.446074", "msg": "", "rc": 0, "start": "2025-12-17 19:10:20.440209", "stderr": "", "stderr_lines": [], "stdout": "1.08", "stdout_lines": ["1.08"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004209", "end": "2025-12-17 19:09:54.165552", "msg": "", "rc": 0, "start": "2025-12-17 19:09:54.161343", "stderr": "", "stderr_lines": [], "stdout": "0.01", "stdout_lines": ["0.01"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005397", "end": "2025-12-17 19:09:47.703156", "msg": "", "rc": 0, "start": "2025-12-17 19:09:47.697759", "stderr": "", "stderr_lines": [], "stdout": "0.10", "stdout_lines": ["0.10"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010172", "end": "2025-12-17 19:10:21.108368", "msg": "", "rc": 0, "start": "2025-12-17 19:10:21.098196", "stderr": "", "stderr_lines": [], "stdout": "0.26", "stdout_lines": ["0.26"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011215", "end": "2025-12-17 19:10:21.178941", "msg": "", "rc": 0, "start": "2025-12-17 19:10:21.167726", "stderr": "", "stderr_lines": [], "stdout": "0.50", "stdout_lines": ["0.50"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005704", "end": "2025-12-17 19:10:21.350495", "msg": "", "rc": 0, "start": "2025-12-17 19:10:21.344791", "stderr": "", "stderr_lines": [], "stdout": "0.04", "stdout_lines": ["0.04"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006822", "end": "2025-12-17 19:09:50.904148", "msg": "", "rc": 0, "start": "2025-12-17 19:09:50.897326", "stderr": "", "stderr_lines": [], "stdout": "0.49", "stdout_lines": ["0.49"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004262", "end": "2025-12-17 19:09:57.536079", "msg": "", "rc": 0, "start": "2025-12-17 19:09:57.531817", "stderr": "", "stderr_lines": [], "stdout": "0.54", "stdout_lines": ["0.54"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005706", "end": "2025-12-17 16:10:21.625375", "msg": "", "rc": 0, "start": "2025-12-17 16:10:21.619669", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005392", "end": "2025-12-17 19:10:21.780591", "msg": "", "rc": 0, "start": "2025-12-17 19:10:21.775199", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.008278", "end": "2025-12-17 19:10:22.801759", "msg": "", "rc": 0, "start": "2025-12-17 19:10:22.793481", "stderr": "", "stderr_lines": [], "stdout": "1.25", "stdout_lines": ["1.25"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024176", "end": "2025-12-17 19:10:21.899101", "msg": "", "rc": 0, "start": "2025-12-17 19:10:21.874925", "stderr": "", "stderr_lines": [], "stdout": "0.53", "stdout_lines": ["0.53"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:10:12 up 3 days, 8:42, 1 user, load average: 0.20, 0.16, 0.16\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.41\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:10:12 up 22 days, 6:01, 1 user, load average: 0.24, 0.19, 0.17\nDisk Usage: 23%\nMemory Usage: 77.8%\nCPU Load: 0.22\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:10:12 up 22 days, 6:21, 1 user, load average: 0.52, 0.68, 0.70\nDisk Usage: 14%\nMemory Usage: 49.3%\nCPU Load: 0.44\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:10:12 up 22 days, 7:34, 1 user, load average: 0.90, 0.84, 0.81\nDisk Usage: 14%\nMemory Usage: 60.1%\nCPU Load: 1.08\nCPU Temp: 52.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:10:12 up 22 days, 8:20, 1 user, load average: 0.06, 0.07, 0.02\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.05\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:10:13 up 15 days, 8:36, 1 user, load average: 0.15, 0.18, 0.12\nDisk Usage: 21%\nMemory Usage: 20.0%\nCPU Load: 0.53\nCPU Temp: 38.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:10:12 up 194 days, 10:43, 1 user, load average: 0.32, 0.29, 0.23\nDisk Usage: 6%\nMemory Usage: 12.8%\nCPU Load: 0.50\nCPU Temp: 37.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:10:12 up 194 days, 10:43, 1 user, load average: 0.22, 0.14, 0.12\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.26\nCPU Temp: 32.6°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:09:46 up 11 days, 6:59, 0 user, load average: 0.01, 0.04, 0.08\nDisk Usage: 48%\nMemory Usage: 71.1%\nCPU Load: 0.01\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:09:40 up 18 days, 3:11, 0 user, load average: 0.02, 0.01, 0.00\nDisk Usage: 25%\nMemory Usage: 69.0%\nCPU Load: 0.10\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:10:13 up 3 days, 8:41, 1 user, load average: 0.04, 0.05, 0.01\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.04\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:09:42 up 20 days, 22:04, 0 user, load average: 0.53, 0.52, 0.49\nDisk Usage: 28%\nMemory Usage: 27.4%\nCPU Load: 0.49\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:09:49 up 17 days, 8:25, 0 user, load average: 0.16, 0.37, 0.36\nDisk Usage: 76%\nMemory Usage: 59.1%\nCPU Load: 0.54\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 4:10PM up 22 days, 6 hrs, 1 user, load averages: 0.15, 0.19, 0.20\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:10:13 up 3 days, 8:41, 1 user, load average: 0.00, 0.04, 0.06\nDisk Usage: 79%\nMemory Usage: 14.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:10:14 up 1:30, 1 user, load average: 1.21, 1.11, 1.10\nDisk Usage: 1%\nMemory Usage: 11.8%\nCPU Load: 1.25\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T00:10:23.841299+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_001521_1392f0_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_001521_1392f0_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..fda09c7 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_001521_1392f0_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `ef895bb8db1f44cebb2871f090ec002f` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T00:15:00.001001+00:00 | +| **Fin** | 2025-12-18T00:15:21.726974+00:00 | +| **Durée** | 21.7s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003325", "end": "2025-12-17 19:15:10.995748", "msg": "", "rc": 0, "start": "2025-12-17 19:15:10.992423", "stderr": "", "stderr_lines": [], "stdout": " 19:15:10 up 22 days, 6:06, 1 user, load average: 0.09, 0.16, 0.17", "stdout_lines": [" 19:15:10 up 22 days, 6:06, 1 user, load average: 0.09, 0.16, 0.17"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004163", "end": "2025-12-17 19:15:11.007882", "msg": "", "rc": 0, "start": "2025-12-17 19:15:11.003719", "stderr": "", "stderr_lines": [], "stdout": " 19:15:11 up 22 days, 8:25, 1 user, load average: 0.14, 0.11, 0.04", "stdout_lines": [" 19:15:11 up 22 days, 8:25, 1 user, load average: 0.14, 0.11, 0.04"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003606", "end": "2025-12-17 19:15:11.011508", "msg": "", "rc": 0, "start": "2025-12-17 19:15:11.007902", "stderr": "", "stderr_lines": [], "stdout": " 19:15:11 up 22 days, 6:26, 1 user, load average: 0.84, 0.79, 0.74", "stdout_lines": [" 19:15:11 up 22 days, 6:26, 1 user, load average: 0.84, 0.79, 0.74"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003891", "end": "2025-12-17 19:15:11.026853", "msg": "", "rc": 0, "start": "2025-12-17 19:15:11.022962", "stderr": "", "stderr_lines": [], "stdout": " 19:15:11 up 22 days, 7:39, 1 user, load average: 1.04, 0.88, 0.83", "stdout_lines": [" 19:15:11 up 22 days, 7:39, 1 user, load average: 1.04, 0.88, 0.83"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003019", "end": "2025-12-17 19:15:11.038464", "msg": "", "rc": 0, "start": "2025-12-17 19:15:11.035445", "stderr": "", "stderr_lines": [], "stdout": " 19:15:11 up 3 days, 8:47, 1 user, load average: 0.51, 0.32, 0.22", "stdout_lines": [" 19:15:11 up 3 days, 8:47, 1 user, load average: 0.51, 0.32, 0.22"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002770", "end": "2025-12-17 19:14:44.793341", "msg": "", "rc": 0, "start": "2025-12-17 19:14:44.790571", "stderr": "", "stderr_lines": [], "stdout": " 19:14:44 up 11 days, 7:04, 0 user, load average: 0.04, 0.07, 0.08", "stdout_lines": [" 19:14:44 up 11 days, 7:04, 0 user, load average: 0.04, 0.07, 0.08"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003601", "end": "2025-12-17 19:14:38.253499", "msg": "", "rc": 0, "start": "2025-12-17 19:14:38.249898", "stderr": "", "stderr_lines": [], "stdout": " 19:14:38 up 18 days, 3:16, 0 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 19:14:38 up 18 days, 3:16, 0 user, load average: 0.00, 0.00, 0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008424", "end": "2025-12-17 19:15:11.682602", "msg": "", "rc": 0, "start": "2025-12-17 19:15:11.674178", "stderr": "", "stderr_lines": [], "stdout": " 19:15:11 up 194 days, 10:48, 1 user, load average: 0.13, 0.12, 0.10", "stdout_lines": [" 19:15:11 up 194 days, 10:48, 1 user, load average: 0.13, 0.12, 0.10"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009412", "end": "2025-12-17 19:15:11.698793", "msg": "", "rc": 0, "start": "2025-12-17 19:15:11.689381", "stderr": "", "stderr_lines": [], "stdout": " 19:15:11 up 194 days, 10:48, 1 user, load average: 0.32, 0.28, 0.24", "stdout_lines": [" 19:15:11 up 194 days, 10:48, 1 user, load average: 0.32, 0.28, 0.24"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004659", "end": "2025-12-17 19:15:11.950664", "msg": "", "rc": 0, "start": "2025-12-17 19:15:11.946005", "stderr": "", "stderr_lines": [], "stdout": " 19:15:11 up 3 days, 8:46, 1 user, load average: 0.12, 0.05, 0.01", "stdout_lines": [" 19:15:11 up 3 days, 8:46, 1 user, load average: 0.12, 0.05, 0.01"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003356", "end": "2025-12-17 19:14:41.421038", "msg": "", "rc": 0, "start": "2025-12-17 19:14:41.417682", "stderr": "", "stderr_lines": [], "stdout": " 19:14:41 up 20 days, 22:08, 0 user, load average: 0.43, 0.47, 0.47", "stdout_lines": [" 19:14:41 up 20 days, 22:08, 0 user, load average: 0.43, 0.47, 0.47"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004164", "end": "2025-12-17 16:15:12.149712", "msg": "", "rc": 0, "start": "2025-12-17 16:15:12.145548", "stderr": "", "stderr_lines": [], "stdout": " 4:15PM up 22 days, 6:04, 1 user, load averages: 0.20, 0.22, 0.21", "stdout_lines": [" 4:15PM up 22 days, 6:04, 1 user, load averages: 0.20, 0.22, 0.21"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.007963", "end": "2025-12-17 19:14:48.097209", "msg": "", "rc": 0, "start": "2025-12-17 19:14:48.089246", "stderr": "", "stderr_lines": [], "stdout": " 19:14:48 up 17 days, 8:30, 0 user, load average: 0.12, 0.26, 0.31", "stdout_lines": [" 19:14:48 up 17 days, 8:30, 0 user, load average: 0.12, 0.26, 0.31"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004170", "end": "2025-12-17 19:15:12.366435", "msg": "", "rc": 0, "start": "2025-12-17 19:15:12.362265", "stderr": "", "stderr_lines": [], "stdout": " 19:15:12 up 3 days, 8:46, 1 user, load average: 0.28, 0.14, 0.09", "stdout_lines": [" 19:15:12 up 3 days, 8:46, 1 user, load average: 0.28, 0.14, 0.09"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.007801", "end": "2025-12-17 19:15:12.511659", "msg": "", "rc": 0, "start": "2025-12-17 19:15:12.503858", "stderr": "", "stderr_lines": [], "stdout": " 19:15:12 up 1:35, 1 user, load average: 1.30, 1.16, 1.10", "stdout_lines": [" 19:15:12 up 1:35, 1 user, load average: 1.30, 1.16, 1.10"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019551", "end": "2025-12-17 19:15:12.363562", "msg": "", "rc": 0, "start": "2025-12-17 19:15:12.344011", "stderr": "", "stderr_lines": [], "stdout": " 19:15:12 up 15 days, 8:41, 1 user, load average: 0.20, 0.22, 0.16", "stdout_lines": [" 19:15:12 up 15 days, 8:41, 1 user, load average: 0.20, 0.22, 0.16"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004141", "end": "2025-12-17 19:15:12.888104", "msg": "", "rc": 0, "start": "2025-12-17 19:15:12.883963", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004785", "end": "2025-12-17 19:15:12.901095", "msg": "", "rc": 0, "start": "2025-12-17 19:15:12.896310", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004164", "end": "2025-12-17 19:15:12.903958", "msg": "", "rc": 0, "start": "2025-12-17 19:15:12.899794", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004797", "end": "2025-12-17 19:15:12.943689", "msg": "", "rc": 0, "start": "2025-12-17 19:15:12.938892", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005576", "end": "2025-12-17 19:15:12.949084", "msg": "", "rc": 0, "start": "2025-12-17 19:15:12.943508", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004708", "end": "2025-12-17 19:14:46.696565", "msg": "", "rc": 0, "start": "2025-12-17 19:14:46.691857", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005686", "end": "2025-12-17 19:14:40.186453", "msg": "", "rc": 0, "start": "2025-12-17 19:14:40.180767", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010595", "end": "2025-12-17 19:15:13.608439", "msg": "", "rc": 0, "start": "2025-12-17 19:15:13.597844", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011773", "end": "2025-12-17 19:15:13.650863", "msg": "", "rc": 0, "start": "2025-12-17 19:15:13.639090", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005782", "end": "2025-12-17 19:15:13.862136", "msg": "", "rc": 0, "start": "2025-12-17 19:15:13.856354", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005293", "end": "2025-12-17 19:14:43.373149", "msg": "", "rc": 0, "start": "2025-12-17 19:14:43.367856", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.009025", "end": "2025-12-17 19:14:50.023855", "msg": "", "rc": 0, "start": "2025-12-17 19:14:50.014830", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005416", "end": "2025-12-17 16:15:14.108385", "msg": "", "rc": 0, "start": "2025-12-17 16:15:14.102969", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005574", "end": "2025-12-17 19:15:14.299380", "msg": "", "rc": 0, "start": "2025-12-17 19:15:14.293806", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.020545", "end": "2025-12-17 19:15:14.533013", "msg": "", "rc": 0, "start": "2025-12-17 19:15:14.512468", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025170", "end": "2025-12-17 19:15:14.265372", "msg": "", "rc": 0, "start": "2025-12-17 19:15:14.240202", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004200", "end": "2025-12-17 19:15:14.782573", "msg": "", "rc": 0, "start": "2025-12-17 19:15:14.778373", "stderr": "", "stderr_lines": [], "stdout": "77.9%", "stdout_lines": ["77.9%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004188", "end": "2025-12-17 19:15:14.810688", "msg": "", "rc": 0, "start": "2025-12-17 19:15:14.806500", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004538", "end": "2025-12-17 19:15:14.822169", "msg": "", "rc": 0, "start": "2025-12-17 19:15:14.817631", "stderr": "", "stderr_lines": [], "stdout": "49.2%", "stdout_lines": ["49.2%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005065", "end": "2025-12-17 19:15:14.844700", "msg": "", "rc": 0, "start": "2025-12-17 19:15:14.839635", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005611", "end": "2025-12-17 19:15:14.857487", "msg": "", "rc": 0, "start": "2025-12-17 19:15:14.851876", "stderr": "", "stderr_lines": [], "stdout": "60.0%", "stdout_lines": ["60.0%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004104", "end": "2025-12-17 19:14:48.625015", "msg": "", "rc": 0, "start": "2025-12-17 19:14:48.620911", "stderr": "", "stderr_lines": [], "stdout": "71.3%", "stdout_lines": ["71.3%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004461", "end": "2025-12-17 19:14:42.085489", "msg": "", "rc": 0, "start": "2025-12-17 19:14:42.081028", "stderr": "", "stderr_lines": [], "stdout": "69.0%", "stdout_lines": ["69.0%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010850", "end": "2025-12-17 19:15:15.487931", "msg": "", "rc": 0, "start": "2025-12-17 19:15:15.477081", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012137", "end": "2025-12-17 19:15:15.548095", "msg": "", "rc": 0, "start": "2025-12-17 19:15:15.535958", "stderr": "", "stderr_lines": [], "stdout": "13.0%", "stdout_lines": ["13.0%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006067", "end": "2025-12-17 19:15:15.792814", "msg": "", "rc": 0, "start": "2025-12-17 19:15:15.786747", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004243", "end": "2025-12-17 19:14:45.285212", "msg": "", "rc": 0, "start": "2025-12-17 19:14:45.280969", "stderr": "", "stderr_lines": [], "stdout": "27.2%", "stdout_lines": ["27.2%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.008990", "end": "2025-12-17 19:14:51.898993", "msg": "", "rc": 0, "start": "2025-12-17 19:14:51.890003", "stderr": "", "stderr_lines": [], "stdout": "52.9%", "stdout_lines": ["52.9%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005096", "end": "2025-12-17 16:15:16.011824", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 16:15:16.006728", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.009043", "end": "2025-12-17 19:15:16.234658", "msg": "", "rc": 0, "start": "2025-12-17 19:15:16.225615", "stderr": "", "stderr_lines": [], "stdout": "14.2%", "stdout_lines": ["14.2%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010624", "end": "2025-12-17 19:15:16.517171", "msg": "", "rc": 0, "start": "2025-12-17 19:15:16.506547", "stderr": "", "stderr_lines": [], "stdout": "12.1%", "stdout_lines": ["12.1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025427", "end": "2025-12-17 19:15:16.172780", "msg": "", "rc": 0, "start": "2025-12-17 19:15:16.147353", "stderr": "", "stderr_lines": [], "stdout": "20.5%", "stdout_lines": ["20.5%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005311", "end": "2025-12-17 19:15:16.682015", "msg": "", "rc": 0, "start": "2025-12-17 19:15:16.676704", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004803", "end": "2025-12-17 19:15:16.694871", "msg": "", "rc": 0, "start": "2025-12-17 19:15:16.690068", "stderr": "", "stderr_lines": [], "stdout": "47.0°C", "stdout_lines": ["47.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005671", "end": "2025-12-17 19:15:16.723489", "msg": "", "rc": 0, "start": "2025-12-17 19:15:16.717818", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003337", "end": "2025-12-17 19:15:16.734324", "msg": "", "rc": 0, "start": "2025-12-17 19:15:16.730987", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006892", "end": "2025-12-17 19:15:16.757963", "msg": "", "rc": 0, "start": "2025-12-17 19:15:16.751071", "stderr": "", "stderr_lines": [], "stdout": "53.0°C", "stdout_lines": ["53.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002557", "end": "2025-12-17 19:14:50.530360", "msg": "", "rc": 0, "start": "2025-12-17 19:14:50.527803", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003034", "end": "2025-12-17 19:14:44.014076", "msg": "", "rc": 0, "start": "2025-12-17 19:14:44.011042", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012479", "end": "2025-12-17 19:15:17.430191", "msg": "", "rc": 0, "start": "2025-12-17 19:15:17.417712", "stderr": "", "stderr_lines": [], "stdout": "31.2°C", "stdout_lines": ["31.2°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012945", "end": "2025-12-17 19:15:17.440732", "msg": "", "rc": 0, "start": "2025-12-17 19:15:17.427787", "stderr": "", "stderr_lines": [], "stdout": "36.5°C", "stdout_lines": ["36.5°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003132", "end": "2025-12-17 19:15:17.713228", "msg": "", "rc": 0, "start": "2025-12-17 19:15:17.710096", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003139", "end": "2025-12-17 19:14:47.209734", "msg": "", "rc": 0, "start": "2025-12-17 19:14:47.206595", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004000", "end": "2025-12-17 16:15:17.911550", "msg": "", "rc": 0, "start": "2025-12-17 16:15:17.907550", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003044", "end": "2025-12-17 19:14:53.893524", "msg": "", "rc": 0, "start": "2025-12-17 19:14:53.890480", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003648", "end": "2025-12-17 19:15:18.179803", "msg": "", "rc": 0, "start": "2025-12-17 19:15:18.176155", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028783", "end": "2025-12-17 19:15:18.103492", "msg": "", "rc": 0, "start": "2025-12-17 19:15:18.074709", "stderr": "", "stderr_lines": [], "stdout": "36.9°C", "stdout_lines": ["36.9°C"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004430", "end": "2025-12-17 19:15:18.570829", "msg": "", "rc": 0, "start": "2025-12-17 19:15:18.566399", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004108", "end": "2025-12-17 19:15:18.643106", "msg": "", "rc": 0, "start": "2025-12-17 19:15:18.638998", "stderr": "", "stderr_lines": [], "stdout": "0.16", "stdout_lines": ["0.16"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004215", "end": "2025-12-17 19:15:18.660469", "msg": "", "rc": 0, "start": "2025-12-17 19:15:18.656254", "stderr": "", "stderr_lines": [], "stdout": "0.58", "stdout_lines": ["0.58"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004581", "end": "2025-12-17 19:15:18.671489", "msg": "", "rc": 0, "start": "2025-12-17 19:15:18.666908", "stderr": "", "stderr_lines": [], "stdout": "0.78", "stdout_lines": ["0.78"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005090", "end": "2025-12-17 19:15:18.701432", "msg": "", "rc": 0, "start": "2025-12-17 19:15:18.696342", "stderr": "", "stderr_lines": [], "stdout": "0.12", "stdout_lines": ["0.12"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005712", "end": "2025-12-17 19:15:18.715365", "msg": "", "rc": 0, "start": "2025-12-17 19:15:18.709653", "stderr": "", "stderr_lines": [], "stdout": "1.44", "stdout_lines": ["1.44"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004222", "end": "2025-12-17 19:14:52.462121", "msg": "", "rc": 0, "start": "2025-12-17 19:14:52.457899", "stderr": "", "stderr_lines": [], "stdout": "0.03", "stdout_lines": ["0.03"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004994", "end": "2025-12-17 19:14:45.945419", "msg": "", "rc": 0, "start": "2025-12-17 19:14:45.940425", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010157", "end": "2025-12-17 19:15:19.378763", "msg": "", "rc": 0, "start": "2025-12-17 19:15:19.368606", "stderr": "", "stderr_lines": [], "stdout": "0.12", "stdout_lines": ["0.12"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011373", "end": "2025-12-17 19:15:19.398751", "msg": "", "rc": 0, "start": "2025-12-17 19:15:19.387378", "stderr": "", "stderr_lines": [], "stdout": "0.51", "stdout_lines": ["0.51"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005849", "end": "2025-12-17 19:15:19.604183", "msg": "", "rc": 0, "start": "2025-12-17 19:15:19.598334", "stderr": "", "stderr_lines": [], "stdout": "0.11", "stdout_lines": ["0.11"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005403", "end": "2025-12-17 19:14:49.129701", "msg": "", "rc": 0, "start": "2025-12-17 19:14:49.124298", "stderr": "", "stderr_lines": [], "stdout": "0.44", "stdout_lines": ["0.44"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005937", "end": "2025-12-17 16:15:19.850385", "msg": "", "rc": 0, "start": "2025-12-17 16:15:19.844448", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004345", "end": "2025-12-17 19:14:55.785410", "msg": "", "rc": 0, "start": "2025-12-17 19:14:55.781065", "stderr": "", "stderr_lines": [], "stdout": "0.11", "stdout_lines": ["0.11"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005262", "end": "2025-12-17 19:15:20.037070", "msg": "", "rc": 0, "start": "2025-12-17 19:15:20.031808", "stderr": "", "stderr_lines": [], "stdout": "0.24", "stdout_lines": ["0.24"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.007372", "end": "2025-12-17 19:15:20.514510", "msg": "", "rc": 0, "start": "2025-12-17 19:15:20.507138", "stderr": "", "stderr_lines": [], "stdout": "1.56", "stdout_lines": ["1.56"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.027809", "end": "2025-12-17 19:15:20.259993", "msg": "", "rc": 0, "start": "2025-12-17 19:15:20.232184", "stderr": "", "stderr_lines": [], "stdout": "0.41", "stdout_lines": ["0.41"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:15:11 up 3 days, 8:47, 1 user, load average: 0.51, 0.32, 0.22\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.58\nCPU Temp: 47.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:15:10 up 22 days, 6:06, 1 user, load average: 0.09, 0.16, 0.17\nDisk Usage: 23%\nMemory Usage: 77.9%\nCPU Load: 0.16\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:15:11 up 22 days, 6:26, 1 user, load average: 0.84, 0.79, 0.74\nDisk Usage: 14%\nMemory Usage: 49.2%\nCPU Load: 0.78\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:15:11 up 22 days, 7:39, 1 user, load average: 1.04, 0.88, 0.83\nDisk Usage: 14%\nMemory Usage: 60.0%\nCPU Load: 1.44\nCPU Temp: 53.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:15:11 up 22 days, 8:25, 1 user, load average: 0.14, 0.11, 0.04\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.12\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:15:12 up 15 days, 8:41, 1 user, load average: 0.20, 0.22, 0.16\nDisk Usage: 21%\nMemory Usage: 20.5%\nCPU Load: 0.41\nCPU Temp: 36.9°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:15:11 up 194 days, 10:48, 1 user, load average: 0.32, 0.28, 0.24\nDisk Usage: 6%\nMemory Usage: 13.0%\nCPU Load: 0.51\nCPU Temp: 36.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:15:11 up 194 days, 10:48, 1 user, load average: 0.13, 0.12, 0.10\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.12\nCPU Temp: 31.2°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:14:44 up 11 days, 7:04, 0 user, load average: 0.04, 0.07, 0.08\nDisk Usage: 48%\nMemory Usage: 71.3%\nCPU Load: 0.03\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:14:38 up 18 days, 3:16, 0 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 25%\nMemory Usage: 69.0%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:15:11 up 3 days, 8:46, 1 user, load average: 0.12, 0.05, 0.01\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.11\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:14:41 up 20 days, 22:08, 0 user, load average: 0.43, 0.47, 0.47\nDisk Usage: 28%\nMemory Usage: 27.2%\nCPU Load: 0.44\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:14:48 up 17 days, 8:30, 0 user, load average: 0.12, 0.26, 0.31\nDisk Usage: 76%\nMemory Usage: 52.9%\nCPU Load: 0.11\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 4:15PM up 22 days, 6:04, 1 user, load averages: 0.20, 0.22, 0.21\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:15:12 up 3 days, 8:46, 1 user, load average: 0.28, 0.14, 0.09\nDisk Usage: 79%\nMemory Usage: 14.2%\nCPU Load: 0.24\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:15:12 up 1:35, 1 user, load average: 1.30, 1.16, 1.10\nDisk Usage: 1%\nMemory Usage: 12.1%\nCPU Load: 1.56\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T00:15:21.773569+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_002102_4b36a5_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_002102_4b36a5_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..7171862 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_002102_4b36a5_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `6dcde60ea5ab4bed89b72ba444f44e41` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T00:20:00.007260+00:00 | +| **Fin** | 2025-12-18T00:21:01.946702+00:00 | +| **Durée** | 61.9s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [hp2.i7.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [automate.prod.home] +ok: [orangepi.pc.home] +ok: [jump.point.home] +ok: [localhost] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003261", "end": "2025-12-17 19:20:28.236106", "msg": "", "rc": 0, "start": "2025-12-17 19:20:28.232845", "stderr": "", "stderr_lines": [], "stdout": " 19:20:28 up 22 days, 6:11, 1 user, load average: 0.09, 0.14, 0.16", "stdout_lines": [" 19:20:28 up 22 days, 6:11, 1 user, load average: 0.09, 0.14, 0.16"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004015", "end": "2025-12-17 19:20:28.312846", "msg": "", "rc": 0, "start": "2025-12-17 19:20:28.308831", "stderr": "", "stderr_lines": [], "stdout": " 19:20:28 up 22 days, 7:45, 1 user, load average: 0.92, 0.79, 0.81", "stdout_lines": [" 19:20:28 up 22 days, 7:45, 1 user, load average: 0.92, 0.79, 0.81"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003912", "end": "2025-12-17 19:20:28.324301", "msg": "", "rc": 0, "start": "2025-12-17 19:20:28.320389", "stderr": "", "stderr_lines": [], "stdout": " 19:20:28 up 22 days, 6:31, 1 user, load average: 1.05, 0.85, 0.77", "stdout_lines": [" 19:20:28 up 22 days, 6:31, 1 user, load average: 1.05, 0.85, 0.77"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003569", "end": "2025-12-17 19:20:28.288125", "msg": "", "rc": 0, "start": "2025-12-17 19:20:28.284556", "stderr": "", "stderr_lines": [], "stdout": " 19:20:28 up 22 days, 8:31, 1 user, load average: 0.08, 0.09, 0.04", "stdout_lines": [" 19:20:28 up 22 days, 8:31, 1 user, load average: 0.08, 0.09, 0.04"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002899", "end": "2025-12-17 19:20:28.331680", "msg": "", "rc": 0, "start": "2025-12-17 19:20:28.328781", "stderr": "", "stderr_lines": [], "stdout": " 19:20:28 up 3 days, 8:52, 1 user, load average: 0.34, 0.29, 0.23", "stdout_lines": [" 19:20:28 up 3 days, 8:52, 1 user, load average: 0.34, 0.29, 0.23"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003131", "end": "2025-12-17 19:20:02.850258", "msg": "", "rc": 0, "start": "2025-12-17 19:20:02.847127", "stderr": "", "stderr_lines": [], "stdout": " 19:20:02 up 11 days, 7:09, 0 user, load average: 0.24, 0.32, 0.19", "stdout_lines": [" 19:20:02 up 11 days, 7:09, 0 user, load average: 0.24, 0.32, 0.19"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009285", "end": "2025-12-17 19:20:29.722960", "msg": "", "rc": 0, "start": "2025-12-17 19:20:29.713675", "stderr": "", "stderr_lines": [], "stdout": " 19:20:29 up 194 days, 10:53, 1 user, load average: 0.32, 0.25, 0.23", "stdout_lines": [" 19:20:29 up 194 days, 10:53, 1 user, load average: 0.32, 0.25, 0.23"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008324", "end": "2025-12-17 19:20:29.768222", "msg": "", "rc": 0, "start": "2025-12-17 19:20:29.759898", "stderr": "", "stderr_lines": [], "stdout": " 19:20:29 up 194 days, 10:53, 1 user, load average: 0.20, 0.15, 0.10", "stdout_lines": [" 19:20:29 up 194 days, 10:53, 1 user, load average: 0.20, 0.15, 0.10"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003188", "end": "2025-12-17 19:19:56.522807", "msg": "", "rc": 0, "start": "2025-12-17 19:19:56.519619", "stderr": "", "stderr_lines": [], "stdout": " 19:19:56 up 18 days, 3:22, 0 user, load average: 0.01, 0.02, 0.00", "stdout_lines": [" 19:19:56 up 18 days, 3:22, 0 user, load average: 0.01, 0.02, 0.00"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019452", "end": "2025-12-17 19:20:30.221261", "msg": "", "rc": 0, "start": "2025-12-17 19:20:30.201809", "stderr": "", "stderr_lines": [], "stdout": " 19:20:30 up 15 days, 8:47, 1 user, load average: 0.26, 0.18, 0.16", "stdout_lines": [" 19:20:30 up 15 days, 8:47, 1 user, load average: 0.26, 0.18, 0.16"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004811", "end": "2025-12-17 19:20:30.479227", "msg": "", "rc": 0, "start": "2025-12-17 19:20:30.474416", "stderr": "", "stderr_lines": [], "stdout": " 19:20:30 up 3 days, 8:52, 1 user, load average: 0.03, 0.06, 0.01", "stdout_lines": [" 19:20:30 up 3 days, 8:52, 1 user, load average: 0.03, 0.06, 0.01"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004205", "end": "2025-12-17 19:20:06.838101", "msg": "", "rc": 0, "start": "2025-12-17 19:20:06.833896", "stderr": "", "stderr_lines": [], "stdout": " 19:20:06 up 17 days, 8:35, 0 user, load average: 0.64, 0.41, 0.34", "stdout_lines": [" 19:20:06 up 17 days, 8:35, 0 user, load average: 0.64, 0.41, 0.34"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003085", "end": "2025-12-17 19:20:00.251360", "msg": "", "rc": 0, "start": "2025-12-17 19:20:00.248275", "stderr": "", "stderr_lines": [], "stdout": " 19:20:00 up 20 days, 22:14, 0 user, load average: 0.56, 0.43, 0.45", "stdout_lines": [" 19:20:00 up 20 days, 22:14, 0 user, load average: 0.56, 0.43, 0.45"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004302", "end": "2025-12-17 16:20:31.053509", "msg": "", "rc": 0, "start": "2025-12-17 16:20:31.049207", "stderr": "", "stderr_lines": [], "stdout": " 4:20PM up 22 days, 6:10, 1 user, load averages: 0.30, 0.24, 0.21", "stdout_lines": [" 4:20PM up 22 days, 6:10, 1 user, load averages: 0.30, 0.24, 0.21"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003847", "end": "2025-12-17 19:20:31.285680", "msg": "", "rc": 0, "start": "2025-12-17 19:20:31.281833", "stderr": "", "stderr_lines": [], "stdout": " 19:20:31 up 3 days, 8:52, 1 user, load average: 0.04, 0.05, 0.06", "stdout_lines": [" 19:20:31 up 3 days, 8:52, 1 user, load average: 0.04, 0.05, 0.06"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.045311", "end": "2025-12-17 19:20:34.456033", "msg": "", "rc": 0, "start": "2025-12-17 19:20:34.410722", "stderr": "", "stderr_lines": [], "stdout": " 19:20:34 up 1:41, 1 user, load average: 1.51, 1.25, 1.15", "stdout_lines": [" 19:20:34 up 1:41, 1 user, load average: 1.51, 1.25, 1.15"]} + +TASK [Get disk usage] ********************************************************** +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004273", "end": "2025-12-17 19:20:33.951319", "msg": "", "rc": 0, "start": "2025-12-17 19:20:33.947046", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004370", "end": "2025-12-17 19:20:34.081244", "msg": "", "rc": 0, "start": "2025-12-17 19:20:34.076874", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005928", "end": "2025-12-17 19:20:34.201039", "msg": "", "rc": 0, "start": "2025-12-17 19:20:34.195111", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005874", "end": "2025-12-17 19:20:34.186923", "msg": "", "rc": 0, "start": "2025-12-17 19:20:34.181049", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004838", "end": "2025-12-17 19:20:34.313119", "msg": "", "rc": 0, "start": "2025-12-17 19:20:34.308281", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004579", "end": "2025-12-17 19:20:08.626959", "msg": "", "rc": 0, "start": "2025-12-17 19:20:08.622380", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011743", "end": "2025-12-17 19:20:35.432757", "msg": "", "rc": 0, "start": "2025-12-17 19:20:35.421014", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005720", "end": "2025-12-17 19:20:02.173091", "msg": "", "rc": 0, "start": "2025-12-17 19:20:02.167371", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010566", "end": "2025-12-17 19:20:35.505997", "msg": "", "rc": 0, "start": "2025-12-17 19:20:35.495431", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025821", "end": "2025-12-17 19:20:35.782955", "msg": "", "rc": 0, "start": "2025-12-17 19:20:35.757134", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.007396", "end": "2025-12-17 19:20:36.284440", "msg": "", "rc": 0, "start": "2025-12-17 19:20:36.277044", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005617", "end": "2025-12-17 16:20:36.622902", "msg": "", "rc": 0, "start": "2025-12-17 16:20:36.617285", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004848", "end": "2025-12-17 19:20:12.510978", "msg": "", "rc": 0, "start": "2025-12-17 19:20:12.506130", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005585", "end": "2025-12-17 19:20:05.979724", "msg": "", "rc": 0, "start": "2025-12-17 19:20:05.974139", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005339", "end": "2025-12-17 19:20:36.819994", "msg": "", "rc": 0, "start": "2025-12-17 19:20:36.814655", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.090608", "end": "2025-12-17 19:20:38.225812", "msg": "", "rc": 0, "start": "2025-12-17 19:20:38.135204", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004110", "end": "2025-12-17 19:20:39.152988", "msg": "", "rc": 0, "start": "2025-12-17 19:20:39.148878", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004232", "end": "2025-12-17 19:20:39.209714", "msg": "", "rc": 0, "start": "2025-12-17 19:20:39.205482", "stderr": "", "stderr_lines": [], "stdout": "77.8%", "stdout_lines": ["77.8%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004825", "end": "2025-12-17 19:20:39.428602", "msg": "", "rc": 0, "start": "2025-12-17 19:20:39.423777", "stderr": "", "stderr_lines": [], "stdout": "49.4%", "stdout_lines": ["49.4%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004754", "end": "2025-12-17 19:20:39.482048", "msg": "", "rc": 0, "start": "2025-12-17 19:20:39.477294", "stderr": "", "stderr_lines": [], "stdout": "9.1%", "stdout_lines": ["9.1%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005463", "end": "2025-12-17 19:20:39.432909", "msg": "", "rc": 0, "start": "2025-12-17 19:20:39.427446", "stderr": "", "stderr_lines": [], "stdout": "60.1%", "stdout_lines": ["60.1%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003780", "end": "2025-12-17 19:20:13.535442", "msg": "", "rc": 0, "start": "2025-12-17 19:20:13.531662", "stderr": "", "stderr_lines": [], "stdout": "71.4%", "stdout_lines": ["71.4%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012108", "end": "2025-12-17 19:20:40.270734", "msg": "", "rc": 0, "start": "2025-12-17 19:20:40.258626", "stderr": "", "stderr_lines": [], "stdout": "12.7%", "stdout_lines": ["12.7%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004473", "end": "2025-12-17 19:20:07.062670", "msg": "", "rc": 0, "start": "2025-12-17 19:20:07.058197", "stderr": "", "stderr_lines": [], "stdout": "69.0%", "stdout_lines": ["69.0%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010881", "end": "2025-12-17 19:20:40.421060", "msg": "", "rc": 0, "start": "2025-12-17 19:20:40.410179", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025941", "end": "2025-12-17 19:20:40.994594", "msg": "", "rc": 0, "start": "2025-12-17 19:20:40.968653", "stderr": "", "stderr_lines": [], "stdout": "19.9%", "stdout_lines": ["19.9%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005883", "end": "2025-12-17 19:20:41.124201", "msg": "", "rc": 0, "start": "2025-12-17 19:20:41.118318", "stderr": "", "stderr_lines": [], "stdout": "35.7%", "stdout_lines": ["35.7%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004569", "end": "2025-12-17 19:20:10.769314", "msg": "", "rc": 0, "start": "2025-12-17 19:20:10.764745", "stderr": "", "stderr_lines": [], "stdout": "26.0%", "stdout_lines": ["26.0%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003699", "end": "2025-12-17 19:20:17.607588", "msg": "", "rc": 0, "start": "2025-12-17 19:20:17.603889", "stderr": "", "stderr_lines": [], "stdout": "55.2%", "stdout_lines": ["55.2%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005324", "end": "2025-12-17 16:20:41.828576", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 16:20:41.823252", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006063", "end": "2025-12-17 19:20:42.048270", "msg": "", "rc": 0, "start": "2025-12-17 19:20:42.042207", "stderr": "", "stderr_lines": [], "stdout": "14.0%", "stdout_lines": ["14.0%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.055872", "end": "2025-12-17 19:20:43.252969", "msg": "", "rc": 0, "start": "2025-12-17 19:20:43.197097", "stderr": "", "stderr_lines": [], "stdout": "12.0%", "stdout_lines": ["12.0%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004874", "end": "2025-12-17 19:20:44.258410", "msg": "", "rc": 0, "start": "2025-12-17 19:20:44.253536", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005438", "end": "2025-12-17 19:20:44.405028", "msg": "", "rc": 0, "start": "2025-12-17 19:20:44.399590", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005709", "end": "2025-12-17 19:20:44.507188", "msg": "", "rc": 0, "start": "2025-12-17 19:20:44.501479", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.007084", "end": "2025-12-17 19:20:44.646528", "msg": "", "rc": 0, "start": "2025-12-17 19:20:44.639444", "stderr": "", "stderr_lines": [], "stdout": "53.0°C", "stdout_lines": ["53.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003072", "end": "2025-12-17 19:20:44.684910", "msg": "", "rc": 0, "start": "2025-12-17 19:20:44.681838", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012971", "end": "2025-12-17 19:20:45.776219", "msg": "", "rc": 0, "start": "2025-12-17 19:20:45.763248", "stderr": "", "stderr_lines": [], "stdout": "35.5°C", "stdout_lines": ["35.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003502", "end": "2025-12-17 19:20:19.245702", "msg": "", "rc": 0, "start": "2025-12-17 19:20:19.242200", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011825", "end": "2025-12-17 19:20:46.079064", "msg": "", "rc": 0, "start": "2025-12-17 19:20:46.067239", "stderr": "", "stderr_lines": [], "stdout": "31.6°C", "stdout_lines": ["31.6°C"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002838", "end": "2025-12-17 19:20:12.862959", "msg": "", "rc": 0, "start": "2025-12-17 19:20:12.860121", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028642", "end": "2025-12-17 19:20:46.518218", "msg": "", "rc": 0, "start": "2025-12-17 19:20:46.489576", "stderr": "", "stderr_lines": [], "stdout": "35.0°C", "stdout_lines": ["35.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003144", "end": "2025-12-17 19:20:46.986964", "msg": "", "rc": 0, "start": "2025-12-17 19:20:46.983820", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002807", "end": "2025-12-17 19:20:16.570046", "msg": "", "rc": 0, "start": "2025-12-17 19:20:16.567239", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002802", "end": "2025-12-17 19:20:23.379913", "msg": "", "rc": 0, "start": "2025-12-17 19:20:23.377111", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004085", "end": "2025-12-17 16:20:47.680636", "msg": "", "rc": 0, "start": "2025-12-17 16:20:47.676551", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002918", "end": "2025-12-17 19:20:48.028968", "msg": "", "rc": 0, "start": "2025-12-17 19:20:48.026050", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.052138", "end": "2025-12-17 19:20:51.306526", "msg": "", "rc": 0, "start": "2025-12-17 19:20:51.254388", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} + +TASK [Get CPU load] ************************************************************ +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004192", "end": "2025-12-17 19:20:52.496306", "msg": "", "rc": 0, "start": "2025-12-17 19:20:52.492114", "stderr": "", "stderr_lines": [], "stdout": "0.58", "stdout_lines": ["0.58"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004277", "end": "2025-12-17 19:20:52.628351", "msg": "", "rc": 0, "start": "2025-12-17 19:20:52.624074", "stderr": "", "stderr_lines": [], "stdout": "0.06", "stdout_lines": ["0.06"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004971", "end": "2025-12-17 19:20:52.854090", "msg": "", "rc": 0, "start": "2025-12-17 19:20:52.849119", "stderr": "", "stderr_lines": [], "stdout": "1.25", "stdout_lines": ["1.25"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004453", "end": "2025-12-17 19:20:52.900018", "msg": "", "rc": 0, "start": "2025-12-17 19:20:52.895565", "stderr": "", "stderr_lines": [], "stdout": "0.13", "stdout_lines": ["0.13"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005420", "end": "2025-12-17 19:20:53.041727", "msg": "", "rc": 0, "start": "2025-12-17 19:20:53.036307", "stderr": "", "stderr_lines": [], "stdout": "0.73", "stdout_lines": ["0.73"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011230", "end": "2025-12-17 19:20:54.192006", "msg": "", "rc": 0, "start": "2025-12-17 19:20:54.180776", "stderr": "", "stderr_lines": [], "stdout": "0.29", "stdout_lines": ["0.29"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004498", "end": "2025-12-17 19:20:27.621897", "msg": "", "rc": 0, "start": "2025-12-17 19:20:27.617399", "stderr": "", "stderr_lines": [], "stdout": "0.16", "stdout_lines": ["0.16"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005342", "end": "2025-12-17 19:20:21.131820", "msg": "", "rc": 0, "start": "2025-12-17 19:20:21.126478", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010084", "end": "2025-12-17 19:20:54.386196", "msg": "", "rc": 0, "start": "2025-12-17 19:20:54.376112", "stderr": "", "stderr_lines": [], "stdout": "0.20", "stdout_lines": ["0.20"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024410", "end": "2025-12-17 19:20:54.477439", "msg": "", "rc": 0, "start": "2025-12-17 19:20:54.453029", "stderr": "", "stderr_lines": [], "stdout": "0.25", "stdout_lines": ["0.25"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005885", "end": "2025-12-17 19:20:55.135566", "msg": "", "rc": 0, "start": "2025-12-17 19:20:55.129681", "stderr": "", "stderr_lines": [], "stdout": "0.21", "stdout_lines": ["0.21"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004354", "end": "2025-12-17 19:20:31.324918", "msg": "", "rc": 0, "start": "2025-12-17 19:20:31.320564", "stderr": "", "stderr_lines": [], "stdout": "1.08", "stdout_lines": ["1.08"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005035", "end": "2025-12-17 19:20:24.738031", "msg": "", "rc": 0, "start": "2025-12-17 19:20:24.732996", "stderr": "", "stderr_lines": [], "stdout": "0.44", "stdout_lines": ["0.44"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006300", "end": "2025-12-17 16:20:55.409606", "msg": "", "rc": 0, "start": "2025-12-17 16:20:55.403306", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005276", "end": "2025-12-17 19:20:55.517279", "msg": "", "rc": 0, "start": "2025-12-17 19:20:55.512003", "stderr": "", "stderr_lines": [], "stdout": "0.02", "stdout_lines": ["0.02"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.085075", "end": "2025-12-17 19:20:57.977135", "msg": "", "rc": 0, "start": "2025-12-17 19:20:57.892060", "stderr": "", "stderr_lines": [], "stdout": "2.36", "stdout_lines": ["2.36"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:20:28 up 3 days, 8:52, 1 user, load average: 0.34, 0.29, 0.23\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.58\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:20:28 up 22 days, 6:11, 1 user, load average: 0.09, 0.14, 0.16\nDisk Usage: 23%\nMemory Usage: 77.8%\nCPU Load: 0.06\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:20:28 up 22 days, 6:31, 1 user, load average: 1.05, 0.85, 0.77\nDisk Usage: 14%\nMemory Usage: 49.4%\nCPU Load: 1.25\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:20:28 up 22 days, 7:45, 1 user, load average: 0.92, 0.79, 0.81\nDisk Usage: 14%\nMemory Usage: 60.1%\nCPU Load: 0.73\nCPU Temp: 53.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:20:28 up 22 days, 8:31, 1 user, load average: 0.08, 0.09, 0.04\nDisk Usage: 9%\nMemory Usage: 9.1%\nCPU Load: 0.13\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:20:30 up 15 days, 8:47, 1 user, load average: 0.26, 0.18, 0.16\nDisk Usage: 21%\nMemory Usage: 19.9%\nCPU Load: 0.25\nCPU Temp: 35.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:20:29 up 194 days, 10:53, 1 user, load average: 0.20, 0.15, 0.10\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.20\nCPU Temp: 31.6°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:20:29 up 194 days, 10:53, 1 user, load average: 0.32, 0.25, 0.23\nDisk Usage: 6%\nMemory Usage: 12.7%\nCPU Load: 0.29\nCPU Temp: 35.5°C\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:19:56 up 18 days, 3:22, 0 user, load average: 0.01, 0.02, 0.00\nDisk Usage: 25%\nMemory Usage: 69.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:20:02 up 11 days, 7:09, 0 user, load average: 0.24, 0.32, 0.19\nDisk Usage: 48%\nMemory Usage: 71.4%\nCPU Load: 0.16\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:20:30 up 3 days, 8:52, 1 user, load average: 0.03, 0.06, 0.01\nDisk Usage: 1%\nMemory Usage: 35.7%\nCPU Load: 0.21\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:20:00 up 20 days, 22:14, 0 user, load average: 0.56, 0.43, 0.45\nDisk Usage: 28%\nMemory Usage: 26.0%\nCPU Load: 0.44\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:20:06 up 17 days, 8:35, 0 user, load average: 0.64, 0.41, 0.34\nDisk Usage: 76%\nMemory Usage: 55.2%\nCPU Load: 1.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 4:20PM up 22 days, 6:10, 1 user, load averages: 0.30, 0.24, 0.21\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:20:31 up 3 days, 8:52, 1 user, load average: 0.04, 0.05, 0.06\nDisk Usage: 79%\nMemory Usage: 14.0%\nCPU Load: 0.02\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:20:34 up 1:41, 1 user, load average: 1.51, 1.25, 1.15\nDisk Usage: 1%\nMemory Usage: 12.0%\nCPU Load: 2.36\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T00:21:02.136377+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_010021_09d437_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_010021_09d437_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..06883b8 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_010021_09d437_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `f335da0c39524920aaf079331242cc1a` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T01:00:00.000535+00:00 | +| **Fin** | 2025-12-18T01:00:21.416206+00:00 | +| **Durée** | 21.4s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003804", "end": "2025-12-17 20:00:10.816631", "msg": "", "rc": 0, "start": "2025-12-17 20:00:10.812827", "stderr": "", "stderr_lines": [], "stdout": " 20:00:10 up 22 days, 9:10, 1 user, load average: 0.05, 0.07, 0.08", "stdout_lines": [" 20:00:10 up 22 days, 9:10, 1 user, load average: 0.05, 0.07, 0.08"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003502", "end": "2025-12-17 20:00:10.821032", "msg": "", "rc": 0, "start": "2025-12-17 20:00:10.817530", "stderr": "", "stderr_lines": [], "stdout": " 20:00:10 up 22 days, 7:11, 1 user, load average: 0.57, 0.54, 0.61", "stdout_lines": [" 20:00:10 up 22 days, 7:11, 1 user, load average: 0.57, 0.54, 0.61"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002770", "end": "2025-12-17 20:00:10.842003", "msg": "", "rc": 0, "start": "2025-12-17 20:00:10.839233", "stderr": "", "stderr_lines": [], "stdout": " 20:00:10 up 3 days, 9:32, 1 user, load average: 0.36, 0.21, 0.14", "stdout_lines": [" 20:00:10 up 3 days, 9:32, 1 user, load average: 0.36, 0.21, 0.14"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003913", "end": "2025-12-17 20:00:10.838646", "msg": "", "rc": 0, "start": "2025-12-17 20:00:10.834733", "stderr": "", "stderr_lines": [], "stdout": " 20:00:10 up 22 days, 8:24, 1 user, load average: 0.97, 0.75, 0.72", "stdout_lines": [" 20:00:10 up 22 days, 8:24, 1 user, load average: 0.97, 0.75, 0.72"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002895", "end": "2025-12-17 19:59:44.594713", "msg": "", "rc": 0, "start": "2025-12-17 19:59:44.591818", "stderr": "", "stderr_lines": [], "stdout": " 19:59:44 up 11 days, 7:49, 0 user, load average: 0.04, 0.09, 0.09", "stdout_lines": [" 19:59:44 up 11 days, 7:49, 0 user, load average: 0.04, 0.09, 0.09"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008423", "end": "2025-12-17 20:00:11.506502", "msg": "", "rc": 0, "start": "2025-12-17 20:00:11.498079", "stderr": "", "stderr_lines": [], "stdout": " 20:00:11 up 194 days, 11:33, 1 user, load average: 0.08, 0.11, 0.09", "stdout_lines": [" 20:00:11 up 194 days, 11:33, 1 user, load average: 0.08, 0.11, 0.09"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009316", "end": "2025-12-17 20:00:11.552588", "msg": "", "rc": 0, "start": "2025-12-17 20:00:11.543272", "stderr": "", "stderr_lines": [], "stdout": " 20:00:11 up 194 days, 11:33, 1 user, load average: 0.28, 0.22, 0.19", "stdout_lines": [" 20:00:11 up 194 days, 11:33, 1 user, load average: 0.28, 0.22, 0.19"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004440", "end": "2025-12-17 20:00:11.802665", "msg": "", "rc": 0, "start": "2025-12-17 20:00:10.798225", "stderr": "", "stderr_lines": [], "stdout": " 20:00:10 up 22 days, 6:51, 1 user, load average: 0.07, 0.11, 0.09", "stdout_lines": [" 20:00:10 up 22 days, 6:51, 1 user, load average: 0.07, 0.11, 0.09"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003277", "end": "2025-12-17 19:59:38.501357", "msg": "", "rc": 0, "start": "2025-12-17 19:59:38.498080", "stderr": "", "stderr_lines": [], "stdout": " 19:59:38 up 18 days, 4:01, 0 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 19:59:38 up 18 days, 4:01, 0 user, load average: 0.00, 0.00, 0.00"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004882", "end": "2025-12-17 20:00:12.037802", "msg": "", "rc": 0, "start": "2025-12-17 20:00:12.032920", "stderr": "", "stderr_lines": [], "stdout": " 20:00:12 up 3 days, 9:31, 1 user, load average: 0.00, 0.02, 0.01", "stdout_lines": [" 20:00:12 up 3 days, 9:31, 1 user, load average: 0.00, 0.02, 0.01"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003300", "end": "2025-12-17 19:59:41.428293", "msg": "", "rc": 0, "start": "2025-12-17 19:59:41.424993", "stderr": "", "stderr_lines": [], "stdout": " 19:59:41 up 20 days, 22:53, 0 user, load average: 0.72, 0.48, 0.45", "stdout_lines": [" 19:59:41 up 20 days, 22:53, 0 user, load average: 0.72, 0.48, 0.45"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003132", "end": "2025-12-17 19:59:48.138833", "msg": "", "rc": 0, "start": "2025-12-17 19:59:48.135701", "stderr": "", "stderr_lines": [], "stdout": " 19:59:48 up 17 days, 9:15, 0 user, load average: 0.25, 0.20, 0.20", "stdout_lines": [" 19:59:48 up 17 days, 9:15, 0 user, load average: 0.25, 0.20, 0.20"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004271", "end": "2025-12-17 17:00:12.283676", "msg": "", "rc": 0, "start": "2025-12-17 17:00:12.279405", "stderr": "", "stderr_lines": [], "stdout": " 5:00PM up 22 days, 6:49, 1 user, load averages: 0.17, 0.20, 0.19", "stdout_lines": [" 5:00PM up 22 days, 6:49, 1 user, load averages: 0.17, 0.20, 0.19"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019386", "end": "2025-12-17 20:00:12.223258", "msg": "", "rc": 0, "start": "2025-12-17 20:00:12.203872", "stderr": "", "stderr_lines": [], "stdout": " 20:00:12 up 15 days, 9:26, 1 user, load average: 0.25, 0.08, 0.02", "stdout_lines": [" 20:00:12 up 15 days, 9:26, 1 user, load average: 0.25, 0.08, 0.02"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.007536", "end": "2025-12-17 20:00:12.740211", "msg": "", "rc": 0, "start": "2025-12-17 20:00:12.732675", "stderr": "", "stderr_lines": [], "stdout": " 20:00:12 up 6 min, 1 user, load average: 1.10, 0.77, 0.35", "stdout_lines": [" 20:00:12 up 6 min, 1 user, load average: 1.10, 0.77, 0.35"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003792", "end": "2025-12-17 20:00:12.491780", "msg": "", "rc": 0, "start": "2025-12-17 20:00:12.487988", "stderr": "", "stderr_lines": [], "stdout": " 20:00:12 up 3 days, 9:31, 1 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 20:00:12 up 3 days, 9:31, 1 user, load average: 0.00, 0.00, 0.00"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004239", "end": "2025-12-17 20:00:12.925117", "msg": "", "rc": 0, "start": "2025-12-17 20:00:12.920878", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004074", "end": "2025-12-17 20:00:12.961550", "msg": "", "rc": 0, "start": "2025-12-17 20:00:12.957476", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004623", "end": "2025-12-17 20:00:12.959205", "msg": "", "rc": 0, "start": "2025-12-17 20:00:12.954582", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004713", "end": "2025-12-17 20:00:12.988053", "msg": "", "rc": 0, "start": "2025-12-17 20:00:12.983340", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005539", "end": "2025-12-17 20:00:13.012790", "msg": "", "rc": 0, "start": "2025-12-17 20:00:13.007251", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005630", "end": "2025-12-17 19:59:46.711758", "msg": "", "rc": 0, "start": "2025-12-17 19:59:46.706128", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005468", "end": "2025-12-17 19:59:40.187932", "msg": "", "rc": 0, "start": "2025-12-17 19:59:40.182464", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010566", "end": "2025-12-17 20:00:13.670084", "msg": "", "rc": 0, "start": "2025-12-17 20:00:13.659518", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011429", "end": "2025-12-17 20:00:13.733424", "msg": "", "rc": 0, "start": "2025-12-17 20:00:13.721995", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005815", "end": "2025-12-17 20:00:13.908193", "msg": "", "rc": 0, "start": "2025-12-17 20:00:13.902378", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005241", "end": "2025-12-17 19:59:43.363611", "msg": "", "rc": 0, "start": "2025-12-17 19:59:43.358370", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005154", "end": "2025-12-17 19:59:50.053362", "msg": "", "rc": 0, "start": "2025-12-17 19:59:50.048208", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005616", "end": "2025-12-17 17:00:14.181734", "msg": "", "rc": 0, "start": "2025-12-17 17:00:14.176118", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005682", "end": "2025-12-17 20:00:14.333015", "msg": "", "rc": 0, "start": "2025-12-17 20:00:14.327333", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.012022", "end": "2025-12-17 20:00:14.694981", "msg": "", "rc": 0, "start": "2025-12-17 20:00:14.682959", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025424", "end": "2025-12-17 20:00:14.315123", "msg": "", "rc": 0, "start": "2025-12-17 20:00:14.289699", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004280", "end": "2025-12-17 20:00:14.826548", "msg": "", "rc": 0, "start": "2025-12-17 20:00:14.822268", "stderr": "", "stderr_lines": [], "stdout": "77.9%", "stdout_lines": ["77.9%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005122", "end": "2025-12-17 20:00:14.841108", "msg": "", "rc": 0, "start": "2025-12-17 20:00:14.835986", "stderr": "", "stderr_lines": [], "stdout": "49.4%", "stdout_lines": ["49.4%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004117", "end": "2025-12-17 20:00:14.857644", "msg": "", "rc": 0, "start": "2025-12-17 20:00:14.853527", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004221", "end": "2025-12-17 20:00:14.888305", "msg": "", "rc": 0, "start": "2025-12-17 20:00:14.884084", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005595", "end": "2025-12-17 20:00:14.895076", "msg": "", "rc": 0, "start": "2025-12-17 20:00:14.889481", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004025", "end": "2025-12-17 19:59:48.620259", "msg": "", "rc": 0, "start": "2025-12-17 19:59:48.616234", "stderr": "", "stderr_lines": [], "stdout": "70.7%", "stdout_lines": ["70.7%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004765", "end": "2025-12-17 19:59:42.083525", "msg": "", "rc": 0, "start": "2025-12-17 19:59:42.078760", "stderr": "", "stderr_lines": [], "stdout": "68.3%", "stdout_lines": ["68.3%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010827", "end": "2025-12-17 20:00:15.529180", "msg": "", "rc": 0, "start": "2025-12-17 20:00:15.518353", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012044", "end": "2025-12-17 20:00:15.549173", "msg": "", "rc": 0, "start": "2025-12-17 20:00:15.537129", "stderr": "", "stderr_lines": [], "stdout": "12.8%", "stdout_lines": ["12.8%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006064", "end": "2025-12-17 20:00:15.824861", "msg": "", "rc": 0, "start": "2025-12-17 20:00:15.818797", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005117", "end": "2025-12-17 17:00:16.005318", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 17:00:16.000201", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006711", "end": "2025-12-17 19:59:45.284937", "msg": "", "rc": 0, "start": "2025-12-17 19:59:45.278226", "stderr": "", "stderr_lines": [], "stdout": "27.5%", "stdout_lines": ["27.5%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003860", "end": "2025-12-17 19:59:51.909110", "msg": "", "rc": 0, "start": "2025-12-17 19:59:51.905250", "stderr": "", "stderr_lines": [], "stdout": "54.9%", "stdout_lines": ["54.9%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005423", "end": "2025-12-17 20:00:16.251258", "msg": "", "rc": 0, "start": "2025-12-17 20:00:16.245835", "stderr": "", "stderr_lines": [], "stdout": "13.6%", "stdout_lines": ["13.6%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.015791", "end": "2025-12-17 20:00:16.629639", "msg": "", "rc": 0, "start": "2025-12-17 20:00:16.613848", "stderr": "", "stderr_lines": [], "stdout": "11.9%", "stdout_lines": ["11.9%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.026045", "end": "2025-12-17 20:00:16.225822", "msg": "", "rc": 0, "start": "2025-12-17 20:00:16.199777", "stderr": "", "stderr_lines": [], "stdout": "19.9%", "stdout_lines": ["19.9%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005426", "end": "2025-12-17 20:00:16.755325", "msg": "", "rc": 0, "start": "2025-12-17 20:00:16.749899", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004835", "end": "2025-12-17 20:00:16.762609", "msg": "", "rc": 0, "start": "2025-12-17 20:00:16.757774", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005740", "end": "2025-12-17 20:00:16.795814", "msg": "", "rc": 0, "start": "2025-12-17 20:00:16.790074", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003202", "end": "2025-12-17 20:00:16.803354", "msg": "", "rc": 0, "start": "2025-12-17 20:00:16.800152", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006648", "end": "2025-12-17 20:00:16.816913", "msg": "", "rc": 0, "start": "2025-12-17 20:00:16.810265", "stderr": "", "stderr_lines": [], "stdout": "52.5°C", "stdout_lines": ["52.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002554", "end": "2025-12-17 19:59:50.526514", "msg": "", "rc": 0, "start": "2025-12-17 19:59:50.523960", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003095", "end": "2025-12-17 19:59:44.008365", "msg": "", "rc": 0, "start": "2025-12-17 19:59:44.005270", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011768", "end": "2025-12-17 20:00:17.468664", "msg": "", "rc": 0, "start": "2025-12-17 20:00:17.456896", "stderr": "", "stderr_lines": [], "stdout": "32.6°C", "stdout_lines": ["32.6°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013023", "end": "2025-12-17 20:00:17.476657", "msg": "", "rc": 0, "start": "2025-12-17 20:00:17.463634", "stderr": "", "stderr_lines": [], "stdout": "36.0°C", "stdout_lines": ["36.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003271", "end": "2025-12-17 20:00:17.717875", "msg": "", "rc": 0, "start": "2025-12-17 20:00:17.714604", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002941", "end": "2025-12-17 19:59:47.200921", "msg": "", "rc": 0, "start": "2025-12-17 19:59:47.197980", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003854", "end": "2025-12-17 17:00:17.943991", "msg": "", "rc": 0, "start": "2025-12-17 17:00:17.940137", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002895", "end": "2025-12-17 19:59:53.873655", "msg": "", "rc": 0, "start": "2025-12-17 19:59:53.870760", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002916", "end": "2025-12-17 20:00:18.135466", "msg": "", "rc": 0, "start": "2025-12-17 20:00:18.132550", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003609", "end": "2025-12-17 20:00:18.556238", "msg": "", "rc": 0, "start": "2025-12-17 20:00:18.552629", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028769", "end": "2025-12-17 20:00:18.153717", "msg": "", "rc": 0, "start": "2025-12-17 20:00:18.124948", "stderr": "", "stderr_lines": [], "stdout": "35.7°C", "stdout_lines": ["35.7°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004067", "end": "2025-12-17 20:00:18.674264", "msg": "", "rc": 0, "start": "2025-12-17 20:00:18.670197", "stderr": "", "stderr_lines": [], "stdout": "0.06", "stdout_lines": ["0.06"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.003974", "end": "2025-12-17 20:00:18.708291", "msg": "", "rc": 0, "start": "2025-12-17 20:00:18.704317", "stderr": "", "stderr_lines": [], "stdout": "0.41", "stdout_lines": ["0.41"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004495", "end": "2025-12-17 20:00:18.699660", "msg": "", "rc": 0, "start": "2025-12-17 20:00:18.695165", "stderr": "", "stderr_lines": [], "stdout": "0.60", "stdout_lines": ["0.60"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005618", "end": "2025-12-17 20:00:18.730488", "msg": "", "rc": 0, "start": "2025-12-17 20:00:18.724870", "stderr": "", "stderr_lines": [], "stdout": "0.19", "stdout_lines": ["0.19"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005761", "end": "2025-12-17 20:00:18.763901", "msg": "", "rc": 0, "start": "2025-12-17 20:00:18.758140", "stderr": "", "stderr_lines": [], "stdout": "0.97", "stdout_lines": ["0.97"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004431", "end": "2025-12-17 19:59:52.456408", "msg": "", "rc": 0, "start": "2025-12-17 19:59:52.451977", "stderr": "", "stderr_lines": [], "stdout": "0.04", "stdout_lines": ["0.04"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006101", "end": "2025-12-17 19:59:45.997175", "msg": "", "rc": 0, "start": "2025-12-17 19:59:45.991074", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010038", "end": "2025-12-17 20:00:19.470544", "msg": "", "rc": 0, "start": "2025-12-17 20:00:19.460506", "stderr": "", "stderr_lines": [], "stdout": "0.22", "stdout_lines": ["0.22"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011248", "end": "2025-12-17 20:00:19.523879", "msg": "", "rc": 0, "start": "2025-12-17 20:00:19.512631", "stderr": "", "stderr_lines": [], "stdout": "0.26", "stdout_lines": ["0.26"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005688", "end": "2025-12-17 20:00:19.631296", "msg": "", "rc": 0, "start": "2025-12-17 20:00:19.625608", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006201", "end": "2025-12-17 19:59:49.202884", "msg": "", "rc": 0, "start": "2025-12-17 19:59:49.196683", "stderr": "", "stderr_lines": [], "stdout": "0.84", "stdout_lines": ["0.84"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004225", "end": "2025-12-17 19:59:55.839461", "msg": "", "rc": 0, "start": "2025-12-17 19:59:55.835236", "stderr": "", "stderr_lines": [], "stdout": "0.29", "stdout_lines": ["0.29"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006024", "end": "2025-12-17 17:00:19.970243", "msg": "", "rc": 0, "start": "2025-12-17 17:00:19.964219", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005239", "end": "2025-12-17 20:00:20.042242", "msg": "", "rc": 0, "start": "2025-12-17 20:00:20.037003", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024521", "end": "2025-12-17 20:00:20.070718", "msg": "", "rc": 0, "start": "2025-12-17 20:00:20.046197", "stderr": "", "stderr_lines": [], "stdout": "0.23", "stdout_lines": ["0.23"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006530", "end": "2025-12-17 20:00:20.607480", "msg": "", "rc": 0, "start": "2025-12-17 20:00:20.600950", "stderr": "", "stderr_lines": [], "stdout": "1.18", "stdout_lines": ["1.18"]} + +TASK [Display health status] *************************************************** +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:00:10 up 22 days, 6:51, 1 user, load average: 0.07, 0.11, 0.09\nDisk Usage: 23%\nMemory Usage: 77.9%\nCPU Load: 0.06\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:00:10 up 22 days, 8:24, 1 user, load average: 0.97, 0.75, 0.72\nDisk Usage: 14%\nMemory Usage: 59.7%\nCPU Load: 0.97\nCPU Temp: 52.5°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:00:10 up 22 days, 7:11, 1 user, load average: 0.57, 0.54, 0.61\nDisk Usage: 14%\nMemory Usage: 49.4%\nCPU Load: 0.60\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:00:10 up 3 days, 9:32, 1 user, load average: 0.36, 0.21, 0.14\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.41\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:00:10 up 22 days, 9:10, 1 user, load average: 0.05, 0.07, 0.08\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.19\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:00:12 up 15 days, 9:26, 1 user, load average: 0.25, 0.08, 0.02\nDisk Usage: 21%\nMemory Usage: 19.9%\nCPU Load: 0.23\nCPU Temp: 35.7°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:00:11 up 194 days, 11:33, 1 user, load average: 0.28, 0.22, 0.19\nDisk Usage: 6%\nMemory Usage: 12.8%\nCPU Load: 0.26\nCPU Temp: 36.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:00:11 up 194 days, 11:33, 1 user, load average: 0.08, 0.11, 0.09\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.22\nCPU Temp: 32.6°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:59:44 up 11 days, 7:49, 0 user, load average: 0.04, 0.09, 0.09\nDisk Usage: 48%\nMemory Usage: 70.7%\nCPU Load: 0.04\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:59:38 up 18 days, 4:01, 0 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 25%\nMemory Usage: 68.3%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:00:12 up 3 days, 9:31, 1 user, load average: 0.00, 0.02, 0.01\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:59:41 up 20 days, 22:53, 0 user, load average: 0.72, 0.48, 0.45\nDisk Usage: 28%\nMemory Usage: 27.5%\nCPU Load: 0.84\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 19:59:48 up 17 days, 9:15, 0 user, load average: 0.25, 0.20, 0.20\nDisk Usage: 76%\nMemory Usage: 54.9%\nCPU Load: 0.29\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 5:00PM up 22 days, 6:49, 1 user, load averages: 0.17, 0.20, 0.19\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:00:12 up 3 days, 9:31, 1 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 79%\nMemory Usage: 13.6%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:00:12 up 6 min, 1 user, load average: 1.10, 0.77, 0.35\nDisk Usage: 1%\nMemory Usage: 11.9%\nCPU Load: 1.18\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T01:00:21.464581+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_010522_e1cdb6_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_010522_e1cdb6_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..011d86f --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_010522_e1cdb6_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `671e948f418d48b1808655d90c317d77` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T01:05:00.001677+00:00 | +| **Fin** | 2025-12-18T01:05:22.922967+00:00 | +| **Durée** | 22.9s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [dev.prod.home] +ok: [hp.truenas.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003349", "end": "2025-12-17 20:05:12.017194", "msg": "", "rc": 0, "start": "2025-12-17 20:05:12.013845", "stderr": "", "stderr_lines": [], "stdout": " 20:05:12 up 22 days, 7:16, 1 user, load average: 0.55, 0.44, 0.54", "stdout_lines": [" 20:05:12 up 22 days, 7:16, 1 user, load average: 0.55, 0.44, 0.54"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004108", "end": "2025-12-17 20:05:12.025599", "msg": "", "rc": 0, "start": "2025-12-17 20:05:12.021491", "stderr": "", "stderr_lines": [], "stdout": " 20:05:12 up 22 days, 9:15, 1 user, load average: 0.25, 0.11, 0.10", "stdout_lines": [" 20:05:12 up 22 days, 9:15, 1 user, load average: 0.25, 0.11, 0.10"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003013", "end": "2025-12-17 20:05:12.051692", "msg": "", "rc": 0, "start": "2025-12-17 20:05:12.048679", "stderr": "", "stderr_lines": [], "stdout": " 20:05:12 up 3 days, 9:37, 1 user, load average: 0.42, 0.21, 0.15", "stdout_lines": [" 20:05:12 up 3 days, 9:37, 1 user, load average: 0.42, 0.21, 0.15"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004301", "end": "2025-12-17 20:05:12.052277", "msg": "", "rc": 0, "start": "2025-12-17 20:05:12.047976", "stderr": "", "stderr_lines": [], "stdout": " 20:05:12 up 22 days, 8:29, 1 user, load average: 0.80, 0.65, 0.67", "stdout_lines": [" 20:05:12 up 22 days, 8:29, 1 user, load average: 0.80, 0.65, 0.67"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002945", "end": "2025-12-17 20:04:45.799345", "msg": "", "rc": 0, "start": "2025-12-17 20:04:45.796400", "stderr": "", "stderr_lines": [], "stdout": " 20:04:45 up 11 days, 7:54, 0 user, load average: 0.58, 0.22, 0.13", "stdout_lines": [" 20:04:45 up 11 days, 7:54, 0 user, load average: 0.58, 0.22, 0.13"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008439", "end": "2025-12-17 20:05:12.708467", "msg": "", "rc": 0, "start": "2025-12-17 20:05:12.700028", "stderr": "", "stderr_lines": [], "stdout": " 20:05:12 up 194 days, 11:38, 1 user, load average: 0.04, 0.10, 0.09", "stdout_lines": [" 20:05:12 up 194 days, 11:38, 1 user, load average: 0.04, 0.10, 0.09"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009266", "end": "2025-12-17 20:05:12.748962", "msg": "", "rc": 0, "start": "2025-12-17 20:05:12.739696", "stderr": "", "stderr_lines": [], "stdout": " 20:05:12 up 194 days, 11:38, 1 user, load average: 0.13, 0.18, 0.17", "stdout_lines": [" 20:05:12 up 194 days, 11:38, 1 user, load average: 0.13, 0.18, 0.17"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004362", "end": "2025-12-17 20:05:13.011391", "msg": "", "rc": 0, "start": "2025-12-17 20:05:12.007029", "stderr": "", "stderr_lines": [], "stdout": " 20:05:12 up 22 days, 6:56, 1 user, load average: 0.09, 0.12, 0.09", "stdout_lines": [" 20:05:12 up 22 days, 6:56, 1 user, load average: 0.09, 0.12, 0.09"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003535", "end": "2025-12-17 20:04:39.707287", "msg": "", "rc": 0, "start": "2025-12-17 20:04:39.703752", "stderr": "", "stderr_lines": [], "stdout": " 20:04:39 up 18 days, 4:06, 0 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 20:04:39 up 18 days, 4:06, 0 user, load average: 0.00, 0.00, 0.00"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004818", "end": "2025-12-17 20:05:13.217335", "msg": "", "rc": 0, "start": "2025-12-17 20:05:13.212517", "stderr": "", "stderr_lines": [], "stdout": " 20:05:13 up 3 days, 9:36, 1 user, load average: 0.09, 0.05, 0.01", "stdout_lines": [" 20:05:13 up 3 days, 9:36, 1 user, load average: 0.09, 0.05, 0.01"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003370", "end": "2025-12-17 20:04:42.611801", "msg": "", "rc": 0, "start": "2025-12-17 20:04:42.608431", "stderr": "", "stderr_lines": [], "stdout": " 20:04:42 up 20 days, 22:59, 0 user, load average: 0.49, 0.80, 0.64", "stdout_lines": [" 20:04:42 up 20 days, 22:59, 0 user, load average: 0.49, 0.80, 0.64"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002849", "end": "2025-12-17 20:04:49.355867", "msg": "", "rc": 0, "start": "2025-12-17 20:04:49.353018", "stderr": "", "stderr_lines": [], "stdout": " 20:04:49 up 17 days, 9:20, 0 user, load average: 0.34, 0.18, 0.18", "stdout_lines": [" 20:04:49 up 17 days, 9:20, 0 user, load average: 0.34, 0.18, 0.18"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004160", "end": "2025-12-17 17:05:13.492775", "msg": "", "rc": 0, "start": "2025-12-17 17:05:13.488615", "stderr": "", "stderr_lines": [], "stdout": " 5:05PM up 22 days, 6:55, 1 user, load averages: 0.17, 0.16, 0.17", "stdout_lines": [" 5:05PM up 22 days, 6:55, 1 user, load averages: 0.17, 0.16, 0.17"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019733", "end": "2025-12-17 20:05:13.410023", "msg": "", "rc": 0, "start": "2025-12-17 20:05:13.390290", "stderr": "", "stderr_lines": [], "stdout": " 20:05:13 up 15 days, 9:31, 1 user, load average: 0.25, 0.12, 0.03", "stdout_lines": [" 20:05:13 up 15 days, 9:31, 1 user, load average: 0.25, 0.12, 0.03"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003664", "end": "2025-12-17 20:05:13.646536", "msg": "", "rc": 0, "start": "2025-12-17 20:05:13.642872", "stderr": "", "stderr_lines": [], "stdout": " 20:05:13 up 3 days, 9:36, 1 user, load average: 0.10, 0.06, 0.01", "stdout_lines": [" 20:05:13 up 3 days, 9:36, 1 user, load average: 0.10, 0.06, 0.01"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.006276", "end": "2025-12-17 20:05:14.036742", "msg": "", "rc": 0, "start": "2025-12-17 20:05:14.030466", "stderr": "", "stderr_lines": [], "stdout": " 20:05:14 up 11 min, 1 user, load average: 1.46, 1.09, 0.61", "stdout_lines": [" 20:05:14 up 11 min, 1 user, load average: 1.46, 1.09, 0.61"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004135", "end": "2025-12-17 20:05:14.088512", "msg": "", "rc": 0, "start": "2025-12-17 20:05:14.084377", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004137", "end": "2025-12-17 20:05:14.123354", "msg": "", "rc": 0, "start": "2025-12-17 20:05:14.119217", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004625", "end": "2025-12-17 20:05:14.127484", "msg": "", "rc": 0, "start": "2025-12-17 20:05:14.122859", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004698", "end": "2025-12-17 20:05:14.154031", "msg": "", "rc": 0, "start": "2025-12-17 20:05:14.149333", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005596", "end": "2025-12-17 20:05:14.157625", "msg": "", "rc": 0, "start": "2025-12-17 20:05:14.152029", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005316", "end": "2025-12-17 20:04:47.904630", "msg": "", "rc": 0, "start": "2025-12-17 20:04:47.899314", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005653", "end": "2025-12-17 20:04:41.341128", "msg": "", "rc": 0, "start": "2025-12-17 20:04:41.335475", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011153", "end": "2025-12-17 20:05:14.888300", "msg": "", "rc": 0, "start": "2025-12-17 20:05:14.877147", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011677", "end": "2025-12-17 20:05:14.915771", "msg": "", "rc": 0, "start": "2025-12-17 20:05:14.904094", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005682", "end": "2025-12-17 20:05:15.109141", "msg": "", "rc": 0, "start": "2025-12-17 20:05:15.103459", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005322", "end": "2025-12-17 20:04:44.525028", "msg": "", "rc": 0, "start": "2025-12-17 20:04:44.519706", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005479", "end": "2025-12-17 17:05:15.394408", "msg": "", "rc": 0, "start": "2025-12-17 17:05:15.388929", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004944", "end": "2025-12-17 20:04:51.290687", "msg": "", "rc": 0, "start": "2025-12-17 20:04:51.285743", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005672", "end": "2025-12-17 20:05:15.579465", "msg": "", "rc": 0, "start": "2025-12-17 20:05:15.573793", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025623", "end": "2025-12-17 20:05:15.494537", "msg": "", "rc": 0, "start": "2025-12-17 20:05:15.468914", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.015857", "end": "2025-12-17 20:05:16.021451", "msg": "", "rc": 0, "start": "2025-12-17 20:05:16.005594", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004289", "end": "2025-12-17 20:05:16.142967", "msg": "", "rc": 0, "start": "2025-12-17 20:05:16.138678", "stderr": "", "stderr_lines": [], "stdout": "78.0%", "stdout_lines": ["78.0%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004184", "end": "2025-12-17 20:05:16.168838", "msg": "", "rc": 0, "start": "2025-12-17 20:05:16.164654", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004743", "end": "2025-12-17 20:05:16.184721", "msg": "", "rc": 0, "start": "2025-12-17 20:05:16.179978", "stderr": "", "stderr_lines": [], "stdout": "49.4%", "stdout_lines": ["49.4%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004343", "end": "2025-12-17 20:05:16.210446", "msg": "", "rc": 0, "start": "2025-12-17 20:05:16.206103", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005747", "end": "2025-12-17 20:05:16.219727", "msg": "", "rc": 0, "start": "2025-12-17 20:05:16.213980", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004063", "end": "2025-12-17 20:04:49.969656", "msg": "", "rc": 0, "start": "2025-12-17 20:04:49.965593", "stderr": "", "stderr_lines": [], "stdout": "70.5%", "stdout_lines": ["70.5%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004750", "end": "2025-12-17 20:04:43.432763", "msg": "", "rc": 0, "start": "2025-12-17 20:04:43.428013", "stderr": "", "stderr_lines": [], "stdout": "68.2%", "stdout_lines": ["68.2%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011018", "end": "2025-12-17 20:05:16.888362", "msg": "", "rc": 0, "start": "2025-12-17 20:05:16.877344", "stderr": "", "stderr_lines": [], "stdout": "6.7%", "stdout_lines": ["6.7%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011658", "end": "2025-12-17 20:05:16.920915", "msg": "", "rc": 0, "start": "2025-12-17 20:05:16.909257", "stderr": "", "stderr_lines": [], "stdout": "12.9%", "stdout_lines": ["12.9%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005876", "end": "2025-12-17 20:05:17.187877", "msg": "", "rc": 0, "start": "2025-12-17 20:05:17.182001", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004265", "end": "2025-12-17 20:04:46.650698", "msg": "", "rc": 0, "start": "2025-12-17 20:04:46.646433", "stderr": "", "stderr_lines": [], "stdout": "27.2%", "stdout_lines": ["27.2%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005501", "end": "2025-12-17 17:05:17.417631", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 17:05:17.412130", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004290", "end": "2025-12-17 20:04:53.322260", "msg": "", "rc": 0, "start": "2025-12-17 20:04:53.317970", "stderr": "", "stderr_lines": [], "stdout": "56.3%", "stdout_lines": ["56.3%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005417", "end": "2025-12-17 20:05:17.635486", "msg": "", "rc": 0, "start": "2025-12-17 20:05:17.630069", "stderr": "", "stderr_lines": [], "stdout": "13.9%", "stdout_lines": ["13.9%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025381", "end": "2025-12-17 20:05:17.553155", "msg": "", "rc": 0, "start": "2025-12-17 20:05:17.527774", "stderr": "", "stderr_lines": [], "stdout": "20.8%", "stdout_lines": ["20.8%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.008417", "end": "2025-12-17 20:05:18.012349", "msg": "", "rc": 0, "start": "2025-12-17 20:05:18.003932", "stderr": "", "stderr_lines": [], "stdout": "11.6%", "stdout_lines": ["11.6%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004922", "end": "2025-12-17 20:05:18.190657", "msg": "", "rc": 0, "start": "2025-12-17 20:05:18.185735", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005758", "end": "2025-12-17 20:05:18.193902", "msg": "", "rc": 0, "start": "2025-12-17 20:05:18.188144", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005677", "end": "2025-12-17 20:05:18.229435", "msg": "", "rc": 0, "start": "2025-12-17 20:05:18.223758", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003036", "end": "2025-12-17 20:05:18.234996", "msg": "", "rc": 0, "start": "2025-12-17 20:05:18.231960", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006301", "end": "2025-12-17 20:05:18.261768", "msg": "", "rc": 0, "start": "2025-12-17 20:05:18.255467", "stderr": "", "stderr_lines": [], "stdout": "53.0°C", "stdout_lines": ["53.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002578", "end": "2025-12-17 20:04:52.002829", "msg": "", "rc": 0, "start": "2025-12-17 20:04:52.000251", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003162", "end": "2025-12-17 20:04:45.460259", "msg": "", "rc": 0, "start": "2025-12-17 20:04:45.457097", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011780", "end": "2025-12-17 20:05:18.933417", "msg": "", "rc": 0, "start": "2025-12-17 20:05:18.921637", "stderr": "", "stderr_lines": [], "stdout": "31.2°C", "stdout_lines": ["31.2°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012940", "end": "2025-12-17 20:05:18.954265", "msg": "", "rc": 0, "start": "2025-12-17 20:05:18.941325", "stderr": "", "stderr_lines": [], "stdout": "36.0°C", "stdout_lines": ["36.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003286", "end": "2025-12-17 20:05:19.213611", "msg": "", "rc": 0, "start": "2025-12-17 20:05:19.210325", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002837", "end": "2025-12-17 20:04:48.639457", "msg": "", "rc": 0, "start": "2025-12-17 20:04:48.636620", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004211", "end": "2025-12-17 17:05:19.444336", "msg": "", "rc": 0, "start": "2025-12-17 17:05:19.440125", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003137", "end": "2025-12-17 20:04:55.339874", "msg": "", "rc": 0, "start": "2025-12-17 20:04:55.336737", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002893", "end": "2025-12-17 20:05:19.665624", "msg": "", "rc": 0, "start": "2025-12-17 20:05:19.662731", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004097", "end": "2025-12-17 20:05:19.954562", "msg": "", "rc": 0, "start": "2025-12-17 20:05:19.950465", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028278", "end": "2025-12-17 20:05:19.600735", "msg": "", "rc": 0, "start": "2025-12-17 20:05:19.572457", "stderr": "", "stderr_lines": [], "stdout": "35.7°C", "stdout_lines": ["35.7°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004029", "end": "2025-12-17 20:05:20.159479", "msg": "", "rc": 0, "start": "2025-12-17 20:05:20.155450", "stderr": "", "stderr_lines": [], "stdout": "0.35", "stdout_lines": ["0.35"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004089", "end": "2025-12-17 20:05:20.165542", "msg": "", "rc": 0, "start": "2025-12-17 20:05:20.161453", "stderr": "", "stderr_lines": [], "stdout": "0.16", "stdout_lines": ["0.16"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004492", "end": "2025-12-17 20:05:20.201160", "msg": "", "rc": 0, "start": "2025-12-17 20:05:20.196668", "stderr": "", "stderr_lines": [], "stdout": "0.62", "stdout_lines": ["0.62"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005775", "end": "2025-12-17 20:05:20.218540", "msg": "", "rc": 0, "start": "2025-12-17 20:05:20.212765", "stderr": "", "stderr_lines": [], "stdout": "0.21", "stdout_lines": ["0.21"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.008389", "end": "2025-12-17 20:05:20.218067", "msg": "", "rc": 0, "start": "2025-12-17 20:05:20.209678", "stderr": "", "stderr_lines": [], "stdout": "0.75", "stdout_lines": ["0.75"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004257", "end": "2025-12-17 20:04:53.958746", "msg": "", "rc": 0, "start": "2025-12-17 20:04:53.954489", "stderr": "", "stderr_lines": [], "stdout": "0.57", "stdout_lines": ["0.57"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005187", "end": "2025-12-17 20:04:47.451771", "msg": "", "rc": 0, "start": "2025-12-17 20:04:47.446584", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011031", "end": "2025-12-17 20:05:20.901636", "msg": "", "rc": 0, "start": "2025-12-17 20:05:20.890605", "stderr": "", "stderr_lines": [], "stdout": "0.12", "stdout_lines": ["0.12"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010124", "end": "2025-12-17 20:05:20.963210", "msg": "", "rc": 0, "start": "2025-12-17 20:05:20.953086", "stderr": "", "stderr_lines": [], "stdout": "0.04", "stdout_lines": ["0.04"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005638", "end": "2025-12-17 20:05:21.217220", "msg": "", "rc": 0, "start": "2025-12-17 20:05:21.211582", "stderr": "", "stderr_lines": [], "stdout": "0.07", "stdout_lines": ["0.07"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005347", "end": "2025-12-17 20:04:50.675932", "msg": "", "rc": 0, "start": "2025-12-17 20:04:50.670585", "stderr": "", "stderr_lines": [], "stdout": "0.49", "stdout_lines": ["0.49"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005795", "end": "2025-12-17 17:05:21.430642", "msg": "", "rc": 0, "start": "2025-12-17 17:05:21.424847", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004338", "end": "2025-12-17 20:04:57.339338", "msg": "", "rc": 0, "start": "2025-12-17 20:04:57.335000", "stderr": "", "stderr_lines": [], "stdout": "0.29", "stdout_lines": ["0.29"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005392", "end": "2025-12-17 20:05:21.677786", "msg": "", "rc": 0, "start": "2025-12-17 20:05:21.672394", "stderr": "", "stderr_lines": [], "stdout": "0.09", "stdout_lines": ["0.09"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024283", "end": "2025-12-17 20:05:21.576064", "msg": "", "rc": 0, "start": "2025-12-17 20:05:21.551781", "stderr": "", "stderr_lines": [], "stdout": "0.31", "stdout_lines": ["0.31"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.008243", "end": "2025-12-17 20:05:21.997681", "msg": "", "rc": 0, "start": "2025-12-17 20:05:21.989438", "stderr": "", "stderr_lines": [], "stdout": "1.46", "stdout_lines": ["1.46"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:05:12 up 3 days, 9:37, 1 user, load average: 0.42, 0.21, 0.15\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.35\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:05:12 up 22 days, 6:56, 1 user, load average: 0.09, 0.12, 0.09\nDisk Usage: 23%\nMemory Usage: 78.0%\nCPU Load: 0.16\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:05:12 up 22 days, 7:16, 1 user, load average: 0.55, 0.44, 0.54\nDisk Usage: 14%\nMemory Usage: 49.4%\nCPU Load: 0.62\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:05:12 up 22 days, 8:29, 1 user, load average: 0.80, 0.65, 0.67\nDisk Usage: 14%\nMemory Usage: 59.7%\nCPU Load: 0.75\nCPU Temp: 53.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:05:12 up 22 days, 9:15, 1 user, load average: 0.25, 0.11, 0.10\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.21\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:05:13 up 15 days, 9:31, 1 user, load average: 0.25, 0.12, 0.03\nDisk Usage: 21%\nMemory Usage: 20.8%\nCPU Load: 0.31\nCPU Temp: 35.7°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:05:12 up 194 days, 11:38, 1 user, load average: 0.13, 0.18, 0.17\nDisk Usage: 6%\nMemory Usage: 12.9%\nCPU Load: 0.12\nCPU Temp: 36.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:05:12 up 194 days, 11:38, 1 user, load average: 0.04, 0.10, 0.09\nDisk Usage: 3%\nMemory Usage: 6.7%\nCPU Load: 0.04\nCPU Temp: 31.2°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:04:45 up 11 days, 7:54, 0 user, load average: 0.58, 0.22, 0.13\nDisk Usage: 48%\nMemory Usage: 70.5%\nCPU Load: 0.57\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:04:39 up 18 days, 4:06, 0 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 25%\nMemory Usage: 68.2%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:05:13 up 3 days, 9:36, 1 user, load average: 0.09, 0.05, 0.01\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.07\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:04:42 up 20 days, 22:59, 0 user, load average: 0.49, 0.80, 0.64\nDisk Usage: 28%\nMemory Usage: 27.2%\nCPU Load: 0.49\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:04:49 up 17 days, 9:20, 0 user, load average: 0.34, 0.18, 0.18\nDisk Usage: 76%\nMemory Usage: 56.3%\nCPU Load: 0.29\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 5:05PM up 22 days, 6:55, 1 user, load averages: 0.17, 0.16, 0.17\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:05:13 up 3 days, 9:36, 1 user, load average: 0.10, 0.06, 0.01\nDisk Usage: 79%\nMemory Usage: 13.9%\nCPU Load: 0.09\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:05:14 up 11 min, 1 user, load average: 1.46, 1.09, 0.61\nDisk Usage: 1%\nMemory Usage: 11.6%\nCPU Load: 1.46\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T01:05:22.984108+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_011024_1b98c9_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_011024_1b98c9_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..55880dd --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_011024_1b98c9_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `045d0df6f60649489537c0943e530db9` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T01:10:00.001296+00:00 | +| **Fin** | 2025-12-18T01:10:24.490720+00:00 | +| **Durée** | 24.5s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003423", "end": "2025-12-17 20:10:13.890177", "msg": "", "rc": 0, "start": "2025-12-17 20:10:13.886754", "stderr": "", "stderr_lines": [], "stdout": " 20:10:13 up 22 days, 7:21, 1 user, load average: 0.96, 0.64, 0.59", "stdout_lines": [" 20:10:13 up 22 days, 7:21, 1 user, load average: 0.96, 0.64, 0.59"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003775", "end": "2025-12-17 20:10:13.900826", "msg": "", "rc": 0, "start": "2025-12-17 20:10:13.897051", "stderr": "", "stderr_lines": [], "stdout": " 20:10:13 up 22 days, 9:20, 1 user, load average: 0.08, 0.09, 0.09", "stdout_lines": [" 20:10:13 up 22 days, 9:20, 1 user, load average: 0.08, 0.09, 0.09"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003776", "end": "2025-12-17 20:10:13.909225", "msg": "", "rc": 0, "start": "2025-12-17 20:10:13.905449", "stderr": "", "stderr_lines": [], "stdout": " 20:10:13 up 22 days, 8:34, 1 user, load average: 0.50, 0.59, 0.63", "stdout_lines": [" 20:10:13 up 22 days, 8:34, 1 user, load average: 0.50, 0.59, 0.63"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002832", "end": "2025-12-17 20:10:13.929092", "msg": "", "rc": 0, "start": "2025-12-17 20:10:13.926260", "stderr": "", "stderr_lines": [], "stdout": " 20:10:13 up 3 days, 9:42, 1 user, load average: 0.28, 0.17, 0.14", "stdout_lines": [" 20:10:13 up 3 days, 9:42, 1 user, load average: 0.28, 0.17, 0.14"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002906", "end": "2025-12-17 20:09:47.653266", "msg": "", "rc": 0, "start": "2025-12-17 20:09:47.650360", "stderr": "", "stderr_lines": [], "stdout": " 20:09:47 up 11 days, 7:59, 0 user, load average: 0.62, 0.26, 0.14", "stdout_lines": [" 20:09:47 up 11 days, 7:59, 0 user, load average: 0.62, 0.26, 0.14"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008492", "end": "2025-12-17 20:10:14.587187", "msg": "", "rc": 0, "start": "2025-12-17 20:10:14.578695", "stderr": "", "stderr_lines": [], "stdout": " 20:10:14 up 194 days, 11:43, 1 user, load average: 0.16, 0.13, 0.10", "stdout_lines": [" 20:10:14 up 194 days, 11:43, 1 user, load average: 0.16, 0.13, 0.10"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009096", "end": "2025-12-17 20:10:14.620826", "msg": "", "rc": 0, "start": "2025-12-17 20:10:14.611730", "stderr": "", "stderr_lines": [], "stdout": " 20:10:14 up 194 days, 11:43, 1 user, load average: 0.22, 0.18, 0.18", "stdout_lines": [" 20:10:14 up 194 days, 11:43, 1 user, load average: 0.22, 0.18, 0.18"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004684", "end": "2025-12-17 20:10:14.880403", "msg": "", "rc": 0, "start": "2025-12-17 20:10:13.875719", "stderr": "", "stderr_lines": [], "stdout": " 20:10:13 up 22 days, 7:01, 1 user, load average: 0.01, 0.07, 0.08", "stdout_lines": [" 20:10:13 up 22 days, 7:01, 1 user, load average: 0.01, 0.07, 0.08"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003555", "end": "2025-12-17 20:09:41.563305", "msg": "", "rc": 0, "start": "2025-12-17 20:09:41.559750", "stderr": "", "stderr_lines": [], "stdout": " 20:09:41 up 18 days, 4:11, 0 user, load average: 0.00, 0.02, 0.00", "stdout_lines": [" 20:09:41 up 18 days, 4:11, 0 user, load average: 0.00, 0.02, 0.00"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004824", "end": "2025-12-17 20:10:15.096722", "msg": "", "rc": 0, "start": "2025-12-17 20:10:15.091898", "stderr": "", "stderr_lines": [], "stdout": " 20:10:15 up 3 days, 9:41, 1 user, load average: 0.01, 0.08, 0.03", "stdout_lines": [" 20:10:15 up 3 days, 9:41, 1 user, load average: 0.01, 0.08, 0.03"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003327", "end": "2025-12-17 20:09:44.476987", "msg": "", "rc": 0, "start": "2025-12-17 20:09:44.473660", "stderr": "", "stderr_lines": [], "stdout": " 20:09:44 up 20 days, 23:04, 0 user, load average: 0.23, 0.47, 0.54", "stdout_lines": [" 20:09:44 up 20 days, 23:04, 0 user, load average: 0.23, 0.47, 0.54"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003140", "end": "2025-12-17 20:09:51.232752", "msg": "", "rc": 0, "start": "2025-12-17 20:09:51.229612", "stderr": "", "stderr_lines": [], "stdout": " 20:09:51 up 17 days, 9:25, 0 user, load average: 0.03, 0.08, 0.13", "stdout_lines": [" 20:09:51 up 17 days, 9:25, 0 user, load average: 0.03, 0.08, 0.13"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004129", "end": "2025-12-17 17:10:15.376498", "msg": "", "rc": 0, "start": "2025-12-17 17:10:15.372369", "stderr": "", "stderr_lines": [], "stdout": " 5:10PM up 22 days, 7 hrs, 1 user, load averages: 0.43, 0.24, 0.18", "stdout_lines": [" 5:10PM up 22 days, 7 hrs, 1 user, load averages: 0.43, 0.24, 0.18"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019452", "end": "2025-12-17 20:10:15.280706", "msg": "", "rc": 0, "start": "2025-12-17 20:10:15.261254", "stderr": "", "stderr_lines": [], "stdout": " 20:10:15 up 15 days, 9:36, 1 user, load average: 0.22, 0.11, 0.04", "stdout_lines": [" 20:10:15 up 15 days, 9:36, 1 user, load average: 0.22, 0.11, 0.04"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.005812", "end": "2025-12-17 20:10:15.734639", "msg": "", "rc": 0, "start": "2025-12-17 20:10:15.728827", "stderr": "", "stderr_lines": [], "stdout": " 20:10:15 up 16 min, 1 user, load average: 1.31, 1.19, 0.79", "stdout_lines": [" 20:10:15 up 16 min, 1 user, load average: 1.31, 1.19, 0.79"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003754", "end": "2025-12-17 20:10:15.510893", "msg": "", "rc": 0, "start": "2025-12-17 20:10:15.507139", "stderr": "", "stderr_lines": [], "stdout": " 20:10:15 up 3 days, 9:41, 1 user, load average: 0.08, 0.06, 0.01", "stdout_lines": [" 20:10:15 up 3 days, 9:41, 1 user, load average: 0.08, 0.06, 0.01"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004219", "end": "2025-12-17 20:10:15.923787", "msg": "", "rc": 0, "start": "2025-12-17 20:10:15.919568", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004194", "end": "2025-12-17 20:10:15.932752", "msg": "", "rc": 0, "start": "2025-12-17 20:10:15.928558", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005302", "end": "2025-12-17 20:10:15.936162", "msg": "", "rc": 0, "start": "2025-12-17 20:10:15.930860", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004853", "end": "2025-12-17 20:10:15.965380", "msg": "", "rc": 0, "start": "2025-12-17 20:10:15.960527", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005674", "end": "2025-12-17 20:10:15.983380", "msg": "", "rc": 0, "start": "2025-12-17 20:10:15.977706", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005161", "end": "2025-12-17 20:09:49.680855", "msg": "", "rc": 0, "start": "2025-12-17 20:09:49.675694", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005441", "end": "2025-12-17 20:09:43.152827", "msg": "", "rc": 0, "start": "2025-12-17 20:09:43.147386", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010272", "end": "2025-12-17 20:10:16.653376", "msg": "", "rc": 0, "start": "2025-12-17 20:10:16.643104", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011590", "end": "2025-12-17 20:10:16.699330", "msg": "", "rc": 0, "start": "2025-12-17 20:10:16.687740", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005705", "end": "2025-12-17 20:10:16.885592", "msg": "", "rc": 0, "start": "2025-12-17 20:10:16.879887", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005506", "end": "2025-12-17 20:09:46.330620", "msg": "", "rc": 0, "start": "2025-12-17 20:09:46.325114", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005264", "end": "2025-12-17 20:09:53.036736", "msg": "", "rc": 0, "start": "2025-12-17 20:09:53.031472", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005312", "end": "2025-12-17 17:10:17.157243", "msg": "", "rc": 0, "start": "2025-12-17 17:10:17.151931", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005518", "end": "2025-12-17 20:10:17.318631", "msg": "", "rc": 0, "start": "2025-12-17 20:10:17.313113", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.016470", "end": "2025-12-17 20:10:17.636335", "msg": "", "rc": 0, "start": "2025-12-17 20:10:17.619865", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025372", "end": "2025-12-17 20:10:17.312057", "msg": "", "rc": 0, "start": "2025-12-17 20:10:17.286685", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005172", "end": "2025-12-17 20:10:17.872062", "msg": "", "rc": 0, "start": "2025-12-17 20:10:17.866890", "stderr": "", "stderr_lines": [], "stdout": "49.3%", "stdout_lines": ["49.3%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004172", "end": "2025-12-17 20:10:17.859994", "msg": "", "rc": 0, "start": "2025-12-17 20:10:17.855822", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004483", "end": "2025-12-17 20:10:17.864147", "msg": "", "rc": 0, "start": "2025-12-17 20:10:17.859664", "stderr": "", "stderr_lines": [], "stdout": "78.0%", "stdout_lines": ["78.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005814", "end": "2025-12-17 20:10:17.908489", "msg": "", "rc": 0, "start": "2025-12-17 20:10:17.902675", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004701", "end": "2025-12-17 20:10:17.895138", "msg": "", "rc": 0, "start": "2025-12-17 20:10:17.890437", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003540", "end": "2025-12-17 20:09:51.734417", "msg": "", "rc": 0, "start": "2025-12-17 20:09:51.730877", "stderr": "", "stderr_lines": [], "stdout": "70.7%", "stdout_lines": ["70.7%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004431", "end": "2025-12-17 20:09:45.206693", "msg": "", "rc": 0, "start": "2025-12-17 20:09:45.202262", "stderr": "", "stderr_lines": [], "stdout": "68.1%", "stdout_lines": ["68.1%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010828", "end": "2025-12-17 20:10:18.652133", "msg": "", "rc": 0, "start": "2025-12-17 20:10:18.641305", "stderr": "", "stderr_lines": [], "stdout": "6.9%", "stdout_lines": ["6.9%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011885", "end": "2025-12-17 20:10:18.697129", "msg": "", "rc": 0, "start": "2025-12-17 20:10:18.685244", "stderr": "", "stderr_lines": [], "stdout": "12.9%", "stdout_lines": ["12.9%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005746", "end": "2025-12-17 20:10:18.938032", "msg": "", "rc": 0, "start": "2025-12-17 20:10:18.932286", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.009827", "end": "2025-12-17 20:09:48.404207", "msg": "", "rc": 0, "start": "2025-12-17 20:09:48.394380", "stderr": "", "stderr_lines": [], "stdout": "27.8%", "stdout_lines": ["27.8%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005080", "end": "2025-12-17 17:10:19.153446", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 17:10:19.148366", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004386", "end": "2025-12-17 20:09:55.038514", "msg": "", "rc": 0, "start": "2025-12-17 20:09:55.034128", "stderr": "", "stderr_lines": [], "stdout": "54.3%", "stdout_lines": ["54.3%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005686", "end": "2025-12-17 20:10:19.389347", "msg": "", "rc": 0, "start": "2025-12-17 20:10:19.383661", "stderr": "", "stderr_lines": [], "stdout": "13.8%", "stdout_lines": ["13.8%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.009127", "end": "2025-12-17 20:10:19.688583", "msg": "", "rc": 0, "start": "2025-12-17 20:10:19.679456", "stderr": "", "stderr_lines": [], "stdout": "11.7%", "stdout_lines": ["11.7%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025728", "end": "2025-12-17 20:10:19.345518", "msg": "", "rc": 0, "start": "2025-12-17 20:10:19.319790", "stderr": "", "stderr_lines": [], "stdout": "19.9%", "stdout_lines": ["19.9%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005457", "end": "2025-12-17 20:10:19.930586", "msg": "", "rc": 0, "start": "2025-12-17 20:10:19.925129", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004828", "end": "2025-12-17 20:10:19.958954", "msg": "", "rc": 0, "start": "2025-12-17 20:10:19.954126", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005675", "end": "2025-12-17 20:10:19.972304", "msg": "", "rc": 0, "start": "2025-12-17 20:10:19.966629", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002983", "end": "2025-12-17 20:10:19.989074", "msg": "", "rc": 0, "start": "2025-12-17 20:10:19.986091", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006318", "end": "2025-12-17 20:10:20.007786", "msg": "", "rc": 0, "start": "2025-12-17 20:10:20.001468", "stderr": "", "stderr_lines": [], "stdout": "53.0°C", "stdout_lines": ["53.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002658", "end": "2025-12-17 20:09:53.705546", "msg": "", "rc": 0, "start": "2025-12-17 20:09:53.702888", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003156", "end": "2025-12-17 20:09:47.172298", "msg": "", "rc": 0, "start": "2025-12-17 20:09:47.169142", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011416", "end": "2025-12-17 20:10:20.647210", "msg": "", "rc": 0, "start": "2025-12-17 20:10:20.635794", "stderr": "", "stderr_lines": [], "stdout": "33.1°C", "stdout_lines": ["33.1°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012988", "end": "2025-12-17 20:10:20.683418", "msg": "", "rc": 0, "start": "2025-12-17 20:10:20.670430", "stderr": "", "stderr_lines": [], "stdout": "36.5°C", "stdout_lines": ["36.5°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003090", "end": "2025-12-17 20:10:20.910519", "msg": "", "rc": 0, "start": "2025-12-17 20:10:20.907429", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003363", "end": "2025-12-17 20:09:50.353281", "msg": "", "rc": 0, "start": "2025-12-17 20:09:50.349918", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003907", "end": "2025-12-17 17:10:21.129696", "msg": "", "rc": 0, "start": "2025-12-17 17:10:21.125789", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002948", "end": "2025-12-17 20:09:57.015468", "msg": "", "rc": 0, "start": "2025-12-17 20:09:57.012520", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002988", "end": "2025-12-17 20:10:21.351100", "msg": "", "rc": 0, "start": "2025-12-17 20:10:21.348112", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004513", "end": "2025-12-17 20:10:21.629110", "msg": "", "rc": 0, "start": "2025-12-17 20:10:21.624597", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028559", "end": "2025-12-17 20:10:21.323874", "msg": "", "rc": 0, "start": "2025-12-17 20:10:21.295315", "stderr": "", "stderr_lines": [], "stdout": "36.2°C", "stdout_lines": ["36.2°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004152", "end": "2025-12-17 20:10:21.893951", "msg": "", "rc": 0, "start": "2025-12-17 20:10:21.889799", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004165", "end": "2025-12-17 20:10:21.891890", "msg": "", "rc": 0, "start": "2025-12-17 20:10:21.887725", "stderr": "", "stderr_lines": [], "stdout": "0.34", "stdout_lines": ["0.34"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004669", "end": "2025-12-17 20:10:21.899810", "msg": "", "rc": 0, "start": "2025-12-17 20:10:21.895141", "stderr": "", "stderr_lines": [], "stdout": "0.81", "stdout_lines": ["0.81"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005850", "end": "2025-12-17 20:10:21.931412", "msg": "", "rc": 0, "start": "2025-12-17 20:10:21.925562", "stderr": "", "stderr_lines": [], "stdout": "0.07", "stdout_lines": ["0.07"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005755", "end": "2025-12-17 20:10:21.952172", "msg": "", "rc": 0, "start": "2025-12-17 20:10:21.946417", "stderr": "", "stderr_lines": [], "stdout": "0.54", "stdout_lines": ["0.54"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004456", "end": "2025-12-17 20:09:55.651496", "msg": "", "rc": 0, "start": "2025-12-17 20:09:55.647040", "stderr": "", "stderr_lines": [], "stdout": "0.52", "stdout_lines": ["0.52"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005590", "end": "2025-12-17 20:09:49.144641", "msg": "", "rc": 0, "start": "2025-12-17 20:09:49.139051", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010087", "end": "2025-12-17 20:10:22.690809", "msg": "", "rc": 0, "start": "2025-12-17 20:10:22.680722", "stderr": "", "stderr_lines": [], "stdout": "0.21", "stdout_lines": ["0.21"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011144", "end": "2025-12-17 20:10:22.714317", "msg": "", "rc": 0, "start": "2025-12-17 20:10:22.703173", "stderr": "", "stderr_lines": [], "stdout": "0.26", "stdout_lines": ["0.26"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005627", "end": "2025-12-17 20:10:22.871418", "msg": "", "rc": 0, "start": "2025-12-17 20:10:22.865791", "stderr": "", "stderr_lines": [], "stdout": "0.01", "stdout_lines": ["0.01"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005195", "end": "2025-12-17 20:09:52.346394", "msg": "", "rc": 0, "start": "2025-12-17 20:09:52.341199", "stderr": "", "stderr_lines": [], "stdout": "0.29", "stdout_lines": ["0.29"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005842", "end": "2025-12-17 17:10:23.170218", "msg": "", "rc": 0, "start": "2025-12-17 17:10:23.164376", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004293", "end": "2025-12-17 20:09:59.063916", "msg": "", "rc": 0, "start": "2025-12-17 20:09:59.059623", "stderr": "", "stderr_lines": [], "stdout": "0.11", "stdout_lines": ["0.11"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005217", "end": "2025-12-17 20:10:23.297400", "msg": "", "rc": 0, "start": "2025-12-17 20:10:23.292183", "stderr": "", "stderr_lines": [], "stdout": "0.14", "stdout_lines": ["0.14"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.007846", "end": "2025-12-17 20:10:23.664947", "msg": "", "rc": 0, "start": "2025-12-17 20:10:23.657101", "stderr": "", "stderr_lines": [], "stdout": "1.58", "stdout_lines": ["1.58"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.023981", "end": "2025-12-17 20:10:23.274628", "msg": "", "rc": 0, "start": "2025-12-17 20:10:23.250647", "stderr": "", "stderr_lines": [], "stdout": "0.26", "stdout_lines": ["0.26"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:10:13 up 3 days, 9:42, 1 user, load average: 0.28, 0.17, 0.14\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.34\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:10:13 up 22 days, 7:01, 1 user, load average: 0.01, 0.07, 0.08\nDisk Usage: 23%\nMemory Usage: 78.0%\nCPU Load: 0.00\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:10:13 up 22 days, 7:21, 1 user, load average: 0.96, 0.64, 0.59\nDisk Usage: 14%\nMemory Usage: 49.3%\nCPU Load: 0.81\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:10:13 up 22 days, 8:34, 1 user, load average: 0.50, 0.59, 0.63\nDisk Usage: 14%\nMemory Usage: 59.7%\nCPU Load: 0.54\nCPU Temp: 53.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:10:13 up 22 days, 9:20, 1 user, load average: 0.08, 0.09, 0.09\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.07\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:10:15 up 15 days, 9:36, 1 user, load average: 0.22, 0.11, 0.04\nDisk Usage: 21%\nMemory Usage: 19.9%\nCPU Load: 0.26\nCPU Temp: 36.2°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:10:14 up 194 days, 11:43, 1 user, load average: 0.22, 0.18, 0.18\nDisk Usage: 6%\nMemory Usage: 12.9%\nCPU Load: 0.26\nCPU Temp: 36.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:10:14 up 194 days, 11:43, 1 user, load average: 0.16, 0.13, 0.10\nDisk Usage: 3%\nMemory Usage: 6.9%\nCPU Load: 0.21\nCPU Temp: 33.1°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:09:47 up 11 days, 7:59, 0 user, load average: 0.62, 0.26, 0.14\nDisk Usage: 48%\nMemory Usage: 70.7%\nCPU Load: 0.52\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:09:41 up 18 days, 4:11, 0 user, load average: 0.00, 0.02, 0.00\nDisk Usage: 25%\nMemory Usage: 68.1%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:10:15 up 3 days, 9:41, 1 user, load average: 0.01, 0.08, 0.03\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.01\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:09:44 up 20 days, 23:04, 0 user, load average: 0.23, 0.47, 0.54\nDisk Usage: 28%\nMemory Usage: 27.8%\nCPU Load: 0.29\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:09:51 up 17 days, 9:25, 0 user, load average: 0.03, 0.08, 0.13\nDisk Usage: 76%\nMemory Usage: 54.3%\nCPU Load: 0.11\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 5:10PM up 22 days, 7 hrs, 1 user, load averages: 0.43, 0.24, 0.18\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:10:15 up 3 days, 9:41, 1 user, load average: 0.08, 0.06, 0.01\nDisk Usage: 79%\nMemory Usage: 13.8%\nCPU Load: 0.14\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:10:15 up 16 min, 1 user, load average: 1.31, 1.19, 0.79\nDisk Usage: 1%\nMemory Usage: 11.7%\nCPU Load: 1.58\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T01:10:24.543238+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_011522_c1638f_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_011522_c1638f_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..e08e708 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_011522_c1638f_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `4a212d3c3c294b0e8ae9f54829b74319` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T01:15:00.001247+00:00 | +| **Fin** | 2025-12-18T01:15:22.088440+00:00 | +| **Durée** | 22.1s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [dev.prod.home] +ok: [hp.truenas.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003660", "end": "2025-12-17 20:15:11.771623", "msg": "", "rc": 0, "start": "2025-12-17 20:15:11.767963", "stderr": "", "stderr_lines": [], "stdout": " 20:15:11 up 22 days, 7:26, 1 user, load average: 0.92, 0.73, 0.64", "stdout_lines": [" 20:15:11 up 22 days, 7:26, 1 user, load average: 0.92, 0.73, 0.64"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003722", "end": "2025-12-17 20:15:11.770729", "msg": "", "rc": 0, "start": "2025-12-17 20:15:11.767007", "stderr": "", "stderr_lines": [], "stdout": " 20:15:11 up 22 days, 9:25, 1 user, load average: 0.04, 0.05, 0.07", "stdout_lines": [" 20:15:11 up 22 days, 9:25, 1 user, load average: 0.04, 0.05, 0.07"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003882", "end": "2025-12-17 20:15:11.789955", "msg": "", "rc": 0, "start": "2025-12-17 20:15:11.786073", "stderr": "", "stderr_lines": [], "stdout": " 20:15:11 up 22 days, 8:39, 1 user, load average: 0.69, 0.63, 0.64", "stdout_lines": [" 20:15:11 up 22 days, 8:39, 1 user, load average: 0.69, 0.63, 0.64"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002828", "end": "2025-12-17 20:15:11.798754", "msg": "", "rc": 0, "start": "2025-12-17 20:15:11.795926", "stderr": "", "stderr_lines": [], "stdout": " 20:15:11 up 3 days, 9:47, 1 user, load average: 0.09, 0.12, 0.11", "stdout_lines": [" 20:15:11 up 3 days, 9:47, 1 user, load average: 0.09, 0.12, 0.11"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002844", "end": "2025-12-17 20:14:45.523614", "msg": "", "rc": 0, "start": "2025-12-17 20:14:45.520770", "stderr": "", "stderr_lines": [], "stdout": " 20:14:45 up 11 days, 8:04, 0 user, load average: 0.14, 0.17, 0.13", "stdout_lines": [" 20:14:45 up 11 days, 8:04, 0 user, load average: 0.14, 0.17, 0.13"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008442", "end": "2025-12-17 20:15:12.451245", "msg": "", "rc": 0, "start": "2025-12-17 20:15:12.442803", "stderr": "", "stderr_lines": [], "stdout": " 20:15:12 up 194 days, 11:48, 1 user, load average: 0.15, 0.16, 0.11", "stdout_lines": [" 20:15:12 up 194 days, 11:48, 1 user, load average: 0.15, 0.16, 0.11"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009267", "end": "2025-12-17 20:15:12.488107", "msg": "", "rc": 0, "start": "2025-12-17 20:15:12.478840", "stderr": "", "stderr_lines": [], "stdout": " 20:15:12 up 194 days, 11:48, 1 user, load average: 0.30, 0.30, 0.23", "stdout_lines": [" 20:15:12 up 194 days, 11:48, 1 user, load average: 0.30, 0.30, 0.23"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004410", "end": "2025-12-17 20:15:12.761060", "msg": "", "rc": 0, "start": "2025-12-17 20:15:11.756650", "stderr": "", "stderr_lines": [], "stdout": " 20:15:11 up 22 days, 7:06, 1 user, load average: 0.09, 0.06, 0.07", "stdout_lines": [" 20:15:11 up 22 days, 7:06, 1 user, load average: 0.09, 0.06, 0.07"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003630", "end": "2025-12-17 20:14:39.428314", "msg": "", "rc": 0, "start": "2025-12-17 20:14:39.424684", "stderr": "", "stderr_lines": [], "stdout": " 20:14:39 up 18 days, 4:16, 0 user, load average: 0.09, 0.05, 0.01", "stdout_lines": [" 20:14:39 up 18 days, 4:16, 0 user, load average: 0.09, 0.05, 0.01"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004848", "end": "2025-12-17 20:15:12.968087", "msg": "", "rc": 0, "start": "2025-12-17 20:15:12.963239", "stderr": "", "stderr_lines": [], "stdout": " 20:15:12 up 3 days, 9:46, 1 user, load average: 0.05, 0.05, 0.02", "stdout_lines": [" 20:15:12 up 3 days, 9:46, 1 user, load average: 0.05, 0.05, 0.02"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003192", "end": "2025-12-17 20:14:42.335048", "msg": "", "rc": 0, "start": "2025-12-17 20:14:42.331856", "stderr": "", "stderr_lines": [], "stdout": " 20:14:42 up 20 days, 23:09, 0 user, load average: 0.35, 0.46, 0.52", "stdout_lines": [" 20:14:42 up 20 days, 23:09, 0 user, load average: 0.35, 0.46, 0.52"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003368", "end": "2025-12-17 20:14:49.071373", "msg": "", "rc": 0, "start": "2025-12-17 20:14:49.068005", "stderr": "", "stderr_lines": [], "stdout": " 20:14:49 up 17 days, 9:30, 0 user, load average: 0.15, 0.29, 0.22", "stdout_lines": [" 20:14:49 up 17 days, 9:30, 0 user, load average: 0.15, 0.29, 0.22"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004231", "end": "2025-12-17 17:15:13.213110", "msg": "", "rc": 0, "start": "2025-12-17 17:15:13.208879", "stderr": "", "stderr_lines": [], "stdout": " 5:15PM up 22 days, 7:05, 1 user, load averages: 0.24, 0.25, 0.20", "stdout_lines": [" 5:15PM up 22 days, 7:05, 1 user, load averages: 0.24, 0.25, 0.20"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019459", "end": "2025-12-17 20:15:13.160458", "msg": "", "rc": 0, "start": "2025-12-17 20:15:13.140999", "stderr": "", "stderr_lines": [], "stdout": " 20:15:13 up 15 days, 9:41, 1 user, load average: 0.24, 0.13, 0.06", "stdout_lines": [" 20:15:13 up 15 days, 9:41, 1 user, load average: 0.24, 0.13, 0.06"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003754", "end": "2025-12-17 20:15:13.395541", "msg": "", "rc": 0, "start": "2025-12-17 20:15:13.391787", "stderr": "", "stderr_lines": [], "stdout": " 20:15:13 up 3 days, 9:46, 1 user, load average: 0.12, 0.11, 0.02", "stdout_lines": [" 20:15:13 up 3 days, 9:46, 1 user, load average: 0.12, 0.11, 0.02"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.005855", "end": "2025-12-17 20:15:13.776186", "msg": "", "rc": 0, "start": "2025-12-17 20:15:13.770331", "stderr": "", "stderr_lines": [], "stdout": " 20:15:13 up 21 min, 1 user, load average: 1.22, 1.18, 0.92", "stdout_lines": [" 20:15:13 up 21 min, 1 user, load average: 1.22, 1.18, 0.92"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004245", "end": "2025-12-17 20:15:13.874948", "msg": "", "rc": 0, "start": "2025-12-17 20:15:13.870703", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004128", "end": "2025-12-17 20:15:13.886670", "msg": "", "rc": 0, "start": "2025-12-17 20:15:13.882542", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004756", "end": "2025-12-17 20:15:13.897378", "msg": "", "rc": 0, "start": "2025-12-17 20:15:13.892622", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004997", "end": "2025-12-17 20:15:13.932622", "msg": "", "rc": 0, "start": "2025-12-17 20:15:13.927625", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005686", "end": "2025-12-17 20:15:13.940508", "msg": "", "rc": 0, "start": "2025-12-17 20:15:13.934822", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005041", "end": "2025-12-17 20:14:47.663128", "msg": "", "rc": 0, "start": "2025-12-17 20:14:47.658087", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005543", "end": "2025-12-17 20:14:41.120642", "msg": "", "rc": 0, "start": "2025-12-17 20:14:41.115099", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010541", "end": "2025-12-17 20:15:14.641293", "msg": "", "rc": 0, "start": "2025-12-17 20:15:14.630752", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011532", "end": "2025-12-17 20:15:14.689863", "msg": "", "rc": 0, "start": "2025-12-17 20:15:14.678331", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005868", "end": "2025-12-17 20:15:14.895390", "msg": "", "rc": 0, "start": "2025-12-17 20:15:14.889522", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005440", "end": "2025-12-17 20:14:44.325241", "msg": "", "rc": 0, "start": "2025-12-17 20:14:44.319801", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004906", "end": "2025-12-17 20:14:51.028740", "msg": "", "rc": 0, "start": "2025-12-17 20:14:51.023834", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005442", "end": "2025-12-17 17:15:15.159989", "msg": "", "rc": 0, "start": "2025-12-17 17:15:15.154547", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005546", "end": "2025-12-17 20:15:15.358803", "msg": "", "rc": 0, "start": "2025-12-17 20:15:15.353257", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025618", "end": "2025-12-17 20:15:15.280313", "msg": "", "rc": 0, "start": "2025-12-17 20:15:15.254695", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.008610", "end": "2025-12-17 20:15:15.763447", "msg": "", "rc": 0, "start": "2025-12-17 20:15:15.754837", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004112", "end": "2025-12-17 20:15:15.847996", "msg": "", "rc": 0, "start": "2025-12-17 20:15:15.843884", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004191", "end": "2025-12-17 20:15:15.851567", "msg": "", "rc": 0, "start": "2025-12-17 20:15:15.847376", "stderr": "", "stderr_lines": [], "stdout": "78.0%", "stdout_lines": ["78.0%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004805", "end": "2025-12-17 20:15:15.865246", "msg": "", "rc": 0, "start": "2025-12-17 20:15:15.860441", "stderr": "", "stderr_lines": [], "stdout": "49.2%", "stdout_lines": ["49.2%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005046", "end": "2025-12-17 20:15:15.892680", "msg": "", "rc": 0, "start": "2025-12-17 20:15:15.887634", "stderr": "", "stderr_lines": [], "stdout": "9.1%", "stdout_lines": ["9.1%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005840", "end": "2025-12-17 20:15:15.901501", "msg": "", "rc": 0, "start": "2025-12-17 20:15:15.895661", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003741", "end": "2025-12-17 20:14:49.631482", "msg": "", "rc": 0, "start": "2025-12-17 20:14:49.627741", "stderr": "", "stderr_lines": [], "stdout": "70.4%", "stdout_lines": ["70.4%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005385", "end": "2025-12-17 20:14:43.075753", "msg": "", "rc": 0, "start": "2025-12-17 20:14:43.070368", "stderr": "", "stderr_lines": [], "stdout": "68.1%", "stdout_lines": ["68.1%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010877", "end": "2025-12-17 20:15:16.546778", "msg": "", "rc": 0, "start": "2025-12-17 20:15:16.535901", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011785", "end": "2025-12-17 20:15:16.587032", "msg": "", "rc": 0, "start": "2025-12-17 20:15:16.575247", "stderr": "", "stderr_lines": [], "stdout": "12.9%", "stdout_lines": ["12.9%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006002", "end": "2025-12-17 20:15:16.845577", "msg": "", "rc": 0, "start": "2025-12-17 20:15:16.839575", "stderr": "", "stderr_lines": [], "stdout": "35.6%", "stdout_lines": ["35.6%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004157", "end": "2025-12-17 20:14:46.257323", "msg": "", "rc": 0, "start": "2025-12-17 20:14:46.253166", "stderr": "", "stderr_lines": [], "stdout": "27.1%", "stdout_lines": ["27.1%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004098", "end": "2025-12-17 20:14:52.904537", "msg": "", "rc": 0, "start": "2025-12-17 20:14:52.900439", "stderr": "", "stderr_lines": [], "stdout": "58.5%", "stdout_lines": ["58.5%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005043", "end": "2025-12-17 17:15:17.048773", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 17:15:17.043730", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005413", "end": "2025-12-17 20:15:17.285309", "msg": "", "rc": 0, "start": "2025-12-17 20:15:17.279896", "stderr": "", "stderr_lines": [], "stdout": "13.9%", "stdout_lines": ["13.9%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025807", "end": "2025-12-17 20:15:17.253930", "msg": "", "rc": 0, "start": "2025-12-17 20:15:17.228123", "stderr": "", "stderr_lines": [], "stdout": "19.6%", "stdout_lines": ["19.6%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.007639", "end": "2025-12-17 20:15:17.757504", "msg": "", "rc": 0, "start": "2025-12-17 20:15:17.749865", "stderr": "", "stderr_lines": [], "stdout": "11.7%", "stdout_lines": ["11.7%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005575", "end": "2025-12-17 20:15:17.810111", "msg": "", "rc": 0, "start": "2025-12-17 20:15:17.804536", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004998", "end": "2025-12-17 20:15:17.817682", "msg": "", "rc": 0, "start": "2025-12-17 20:15:17.812684", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006328", "end": "2025-12-17 20:15:17.833084", "msg": "", "rc": 0, "start": "2025-12-17 20:15:17.826756", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002783", "end": "2025-12-17 20:15:17.850946", "msg": "", "rc": 0, "start": "2025-12-17 20:15:17.848163", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006864", "end": "2025-12-17 20:15:17.874416", "msg": "", "rc": 0, "start": "2025-12-17 20:15:17.867552", "stderr": "", "stderr_lines": [], "stdout": "53.0°C", "stdout_lines": ["53.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002484", "end": "2025-12-17 20:14:51.594334", "msg": "", "rc": 0, "start": "2025-12-17 20:14:51.591850", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002945", "end": "2025-12-17 20:14:45.042437", "msg": "", "rc": 0, "start": "2025-12-17 20:14:45.039492", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011809", "end": "2025-12-17 20:15:18.509965", "msg": "", "rc": 0, "start": "2025-12-17 20:15:18.498156", "stderr": "", "stderr_lines": [], "stdout": "31.6°C", "stdout_lines": ["31.6°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012915", "end": "2025-12-17 20:15:18.541559", "msg": "", "rc": 0, "start": "2025-12-17 20:15:18.528644", "stderr": "", "stderr_lines": [], "stdout": "37.0°C", "stdout_lines": ["37.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003302", "end": "2025-12-17 20:15:18.812007", "msg": "", "rc": 0, "start": "2025-12-17 20:15:18.808705", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002824", "end": "2025-12-17 20:14:48.226004", "msg": "", "rc": 0, "start": "2025-12-17 20:14:48.223180", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003936", "end": "2025-12-17 17:15:19.004770", "msg": "", "rc": 0, "start": "2025-12-17 17:15:19.000834", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002528", "end": "2025-12-17 20:14:54.923115", "msg": "", "rc": 0, "start": "2025-12-17 20:14:54.920587", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003061", "end": "2025-12-17 20:15:19.231025", "msg": "", "rc": 0, "start": "2025-12-17 20:15:19.227964", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004794", "end": "2025-12-17 20:15:19.705162", "msg": "", "rc": 0, "start": "2025-12-17 20:15:19.700368", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028623", "end": "2025-12-17 20:15:19.209146", "msg": "", "rc": 0, "start": "2025-12-17 20:15:19.180523", "stderr": "", "stderr_lines": [], "stdout": "36.0°C", "stdout_lines": ["36.0°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004152", "end": "2025-12-17 20:15:19.718398", "msg": "", "rc": 0, "start": "2025-12-17 20:15:19.714246", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.003979", "end": "2025-12-17 20:15:19.747490", "msg": "", "rc": 0, "start": "2025-12-17 20:15:19.743511", "stderr": "", "stderr_lines": [], "stdout": "0.07", "stdout_lines": ["0.07"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004707", "end": "2025-12-17 20:15:19.758194", "msg": "", "rc": 0, "start": "2025-12-17 20:15:19.753487", "stderr": "", "stderr_lines": [], "stdout": "0.78", "stdout_lines": ["0.78"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004906", "end": "2025-12-17 20:15:19.783715", "msg": "", "rc": 0, "start": "2025-12-17 20:15:19.778809", "stderr": "", "stderr_lines": [], "stdout": "0.03", "stdout_lines": ["0.03"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005439", "end": "2025-12-17 20:15:19.804008", "msg": "", "rc": 0, "start": "2025-12-17 20:15:19.798569", "stderr": "", "stderr_lines": [], "stdout": "0.58", "stdout_lines": ["0.58"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004033", "end": "2025-12-17 20:14:53.505688", "msg": "", "rc": 0, "start": "2025-12-17 20:14:53.501655", "stderr": "", "stderr_lines": [], "stdout": "0.12", "stdout_lines": ["0.12"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004917", "end": "2025-12-17 20:14:46.971470", "msg": "", "rc": 0, "start": "2025-12-17 20:14:46.966553", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010170", "end": "2025-12-17 20:15:20.520139", "msg": "", "rc": 0, "start": "2025-12-17 20:15:20.509969", "stderr": "", "stderr_lines": [], "stdout": "0.13", "stdout_lines": ["0.13"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011006", "end": "2025-12-17 20:15:20.549099", "msg": "", "rc": 0, "start": "2025-12-17 20:15:20.538093", "stderr": "", "stderr_lines": [], "stdout": "0.28", "stdout_lines": ["0.28"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005573", "end": "2025-12-17 20:15:20.729493", "msg": "", "rc": 0, "start": "2025-12-17 20:15:20.723920", "stderr": "", "stderr_lines": [], "stdout": "0.20", "stdout_lines": ["0.20"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005523", "end": "2025-12-17 20:14:50.142299", "msg": "", "rc": 0, "start": "2025-12-17 20:14:50.136776", "stderr": "", "stderr_lines": [], "stdout": "0.30", "stdout_lines": ["0.30"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005842", "end": "2025-12-17 17:15:21.013799", "msg": "", "rc": 0, "start": "2025-12-17 17:15:21.007957", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004163", "end": "2025-12-17 20:14:56.897672", "msg": "", "rc": 0, "start": "2025-12-17 20:14:56.893509", "stderr": "", "stderr_lines": [], "stdout": "0.44", "stdout_lines": ["0.44"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005205", "end": "2025-12-17 20:15:21.150564", "msg": "", "rc": 0, "start": "2025-12-17 20:15:21.145359", "stderr": "", "stderr_lines": [], "stdout": "0.11", "stdout_lines": ["0.11"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.007326", "end": "2025-12-17 20:15:21.613821", "msg": "", "rc": 0, "start": "2025-12-17 20:15:21.606495", "stderr": "", "stderr_lines": [], "stdout": "1.27", "stdout_lines": ["1.27"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024299", "end": "2025-12-17 20:15:21.110198", "msg": "", "rc": 0, "start": "2025-12-17 20:15:21.085899", "stderr": "", "stderr_lines": [], "stdout": "0.30", "stdout_lines": ["0.30"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:15:11 up 3 days, 9:47, 1 user, load average: 0.09, 0.12, 0.11\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.07\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:15:11 up 22 days, 7:06, 1 user, load average: 0.09, 0.06, 0.07\nDisk Usage: 23%\nMemory Usage: 78.0%\nCPU Load: 0.08\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:15:11 up 22 days, 7:26, 1 user, load average: 0.92, 0.73, 0.64\nDisk Usage: 14%\nMemory Usage: 49.2%\nCPU Load: 0.78\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:15:11 up 22 days, 8:39, 1 user, load average: 0.69, 0.63, 0.64\nDisk Usage: 14%\nMemory Usage: 59.7%\nCPU Load: 0.58\nCPU Temp: 53.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:15:11 up 22 days, 9:25, 1 user, load average: 0.04, 0.05, 0.07\nDisk Usage: 9%\nMemory Usage: 9.1%\nCPU Load: 0.03\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:15:13 up 15 days, 9:41, 1 user, load average: 0.24, 0.13, 0.06\nDisk Usage: 21%\nMemory Usage: 19.6%\nCPU Load: 0.30\nCPU Temp: 36.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:15:12 up 194 days, 11:48, 1 user, load average: 0.30, 0.30, 0.23\nDisk Usage: 6%\nMemory Usage: 12.9%\nCPU Load: 0.28\nCPU Temp: 37.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:15:12 up 194 days, 11:48, 1 user, load average: 0.15, 0.16, 0.11\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.13\nCPU Temp: 31.6°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:14:45 up 11 days, 8:04, 0 user, load average: 0.14, 0.17, 0.13\nDisk Usage: 48%\nMemory Usage: 70.4%\nCPU Load: 0.12\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:14:39 up 18 days, 4:16, 0 user, load average: 0.09, 0.05, 0.01\nDisk Usage: 25%\nMemory Usage: 68.1%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:15:12 up 3 days, 9:46, 1 user, load average: 0.05, 0.05, 0.02\nDisk Usage: 1%\nMemory Usage: 35.6%\nCPU Load: 0.20\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:14:42 up 20 days, 23:09, 0 user, load average: 0.35, 0.46, 0.52\nDisk Usage: 28%\nMemory Usage: 27.1%\nCPU Load: 0.30\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:14:49 up 17 days, 9:30, 0 user, load average: 0.15, 0.29, 0.22\nDisk Usage: 76%\nMemory Usage: 58.5%\nCPU Load: 0.44\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 5:15PM up 22 days, 7:05, 1 user, load averages: 0.24, 0.25, 0.20\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:15:13 up 3 days, 9:46, 1 user, load average: 0.12, 0.11, 0.02\nDisk Usage: 79%\nMemory Usage: 13.9%\nCPU Load: 0.11\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:15:13 up 21 min, 1 user, load average: 1.22, 1.18, 0.92\nDisk Usage: 1%\nMemory Usage: 11.7%\nCPU Load: 1.27\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T01:15:22.272224+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_012022_ac50e3_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_012022_ac50e3_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..755183d --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_012022_ac50e3_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `e9913495a3ad4391a9e5cba80d835ce7` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T01:20:00.001093+00:00 | +| **Fin** | 2025-12-18T01:20:22.708642+00:00 | +| **Durée** | 22.7s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003280", "end": "2025-12-17 20:20:12.301589", "msg": "", "rc": 0, "start": "2025-12-17 20:20:12.298309", "stderr": "", "stderr_lines": [], "stdout": " 20:20:12 up 22 days, 7:11, 1 user, load average: 0.02, 0.04, 0.05", "stdout_lines": [" 20:20:12 up 22 days, 7:11, 1 user, load average: 0.02, 0.04, 0.05"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003804", "end": "2025-12-17 20:20:12.317656", "msg": "", "rc": 0, "start": "2025-12-17 20:20:12.313852", "stderr": "", "stderr_lines": [], "stdout": " 20:20:12 up 22 days, 9:30, 1 user, load average: 0.11, 0.07, 0.08", "stdout_lines": [" 20:20:12 up 22 days, 9:30, 1 user, load average: 0.11, 0.07, 0.08"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003410", "end": "2025-12-17 20:20:12.318684", "msg": "", "rc": 0, "start": "2025-12-17 20:20:12.315274", "stderr": "", "stderr_lines": [], "stdout": " 20:20:12 up 22 days, 7:31, 1 user, load average: 1.04, 0.74, 0.66", "stdout_lines": [" 20:20:12 up 22 days, 7:31, 1 user, load average: 1.04, 0.74, 0.66"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002877", "end": "2025-12-17 20:20:12.345810", "msg": "", "rc": 0, "start": "2025-12-17 20:20:12.342933", "stderr": "", "stderr_lines": [], "stdout": " 20:20:12 up 3 days, 9:52, 1 user, load average: 0.16, 0.12, 0.10", "stdout_lines": [" 20:20:12 up 3 days, 9:52, 1 user, load average: 0.16, 0.12, 0.10"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002826", "end": "2025-12-17 20:19:46.042623", "msg": "", "rc": 0, "start": "2025-12-17 20:19:46.039797", "stderr": "", "stderr_lines": [], "stdout": " 20:19:46 up 11 days, 8:09, 0 user, load average: 0.04, 0.11, 0.11", "stdout_lines": [" 20:19:46 up 11 days, 8:09, 0 user, load average: 0.04, 0.11, 0.11"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008462", "end": "2025-12-17 20:20:12.973285", "msg": "", "rc": 0, "start": "2025-12-17 20:20:12.964823", "stderr": "", "stderr_lines": [], "stdout": " 20:20:12 up 194 days, 11:53, 1 user, load average: 0.19, 0.13, 0.10", "stdout_lines": [" 20:20:12 up 194 days, 11:53, 1 user, load average: 0.19, 0.13, 0.10"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009230", "end": "2025-12-17 20:20:13.016938", "msg": "", "rc": 0, "start": "2025-12-17 20:20:13.007708", "stderr": "", "stderr_lines": [], "stdout": " 20:20:13 up 194 days, 11:53, 1 user, load average: 0.30, 0.30, 0.24", "stdout_lines": [" 20:20:13 up 194 days, 11:53, 1 user, load average: 0.30, 0.30, 0.24"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003435", "end": "2025-12-17 20:19:39.948901", "msg": "", "rc": 0, "start": "2025-12-17 20:19:39.945466", "stderr": "", "stderr_lines": [], "stdout": " 20:19:39 up 18 days, 4:21, 0 user, load average: 0.13, 0.04, 0.01", "stdout_lines": [" 20:19:39 up 18 days, 4:21, 0 user, load average: 0.13, 0.04, 0.01"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004647", "end": "2025-12-17 20:20:13.343392", "msg": "", "rc": 0, "start": "2025-12-17 20:20:12.338745", "stderr": "", "stderr_lines": [], "stdout": " 20:20:12 up 22 days, 8:44, 1 user, load average: 0.99, 0.80, 0.70", "stdout_lines": [" 20:20:12 up 22 days, 8:44, 1 user, load average: 0.99, 0.80, 0.70"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004772", "end": "2025-12-17 20:20:13.481181", "msg": "", "rc": 0, "start": "2025-12-17 20:20:13.476409", "stderr": "", "stderr_lines": [], "stdout": " 20:20:13 up 3 days, 9:51, 1 user, load average: 0.00, 0.02, 0.00", "stdout_lines": [" 20:20:13 up 3 days, 9:51, 1 user, load average: 0.00, 0.02, 0.00"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003424", "end": "2025-12-17 20:19:42.853121", "msg": "", "rc": 0, "start": "2025-12-17 20:19:42.849697", "stderr": "", "stderr_lines": [], "stdout": " 20:19:42 up 20 days, 23:14, 0 user, load average: 0.66, 0.45, 0.49", "stdout_lines": [" 20:19:42 up 20 days, 23:14, 0 user, load average: 0.66, 0.45, 0.49"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004115", "end": "2025-12-17 17:20:13.769026", "msg": "", "rc": 0, "start": "2025-12-17 17:20:13.764911", "stderr": "", "stderr_lines": [], "stdout": " 5:20PM up 22 days, 7:10, 1 user, load averages: 0.32, 0.26, 0.20", "stdout_lines": [" 5:20PM up 22 days, 7:10, 1 user, load averages: 0.32, 0.26, 0.20"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019155", "end": "2025-12-17 20:20:13.670033", "msg": "", "rc": 0, "start": "2025-12-17 20:20:13.650878", "stderr": "", "stderr_lines": [], "stdout": " 20:20:13 up 15 days, 9:46, 1 user, load average: 0.15, 0.12, 0.07", "stdout_lines": [" 20:20:13 up 15 days, 9:46, 1 user, load average: 0.15, 0.12, 0.07"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.006443", "end": "2025-12-17 20:19:49.672114", "msg": "", "rc": 0, "start": "2025-12-17 20:19:49.665671", "stderr": "", "stderr_lines": [], "stdout": " 20:19:49 up 17 days, 9:35, 0 user, load average: 0.07, 0.21, 0.20", "stdout_lines": [" 20:19:49 up 17 days, 9:35, 0 user, load average: 0.07, 0.21, 0.20"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008203", "end": "2025-12-17 20:20:13.990114", "msg": "", "rc": 0, "start": "2025-12-17 20:20:13.981911", "stderr": "", "stderr_lines": [], "stdout": " 20:20:13 up 26 min, 1 user, load average: 1.13, 1.12, 0.98", "stdout_lines": [" 20:20:13 up 26 min, 1 user, load average: 1.13, 1.12, 0.98"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003815", "end": "2025-12-17 20:20:13.918948", "msg": "", "rc": 0, "start": "2025-12-17 20:20:13.915133", "stderr": "", "stderr_lines": [], "stdout": " 20:20:13 up 3 days, 9:51, 1 user, load average: 0.00, 0.03, 0.00", "stdout_lines": [" 20:20:13 up 3 days, 9:51, 1 user, load average: 0.00, 0.03, 0.00"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004310", "end": "2025-12-17 20:20:14.380670", "msg": "", "rc": 0, "start": "2025-12-17 20:20:14.376360", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004100", "end": "2025-12-17 20:20:14.402456", "msg": "", "rc": 0, "start": "2025-12-17 20:20:14.398356", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004486", "end": "2025-12-17 20:20:14.424195", "msg": "", "rc": 0, "start": "2025-12-17 20:20:14.419709", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004818", "end": "2025-12-17 20:20:14.458692", "msg": "", "rc": 0, "start": "2025-12-17 20:20:14.453874", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005541", "end": "2025-12-17 20:20:14.472692", "msg": "", "rc": 0, "start": "2025-12-17 20:20:14.467151", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006224", "end": "2025-12-17 20:19:48.241967", "msg": "", "rc": 0, "start": "2025-12-17 20:19:48.235743", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005456", "end": "2025-12-17 20:19:41.639095", "msg": "", "rc": 0, "start": "2025-12-17 20:19:41.633639", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010542", "end": "2025-12-17 20:20:15.126691", "msg": "", "rc": 0, "start": "2025-12-17 20:20:15.116149", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011644", "end": "2025-12-17 20:20:15.157461", "msg": "", "rc": 0, "start": "2025-12-17 20:20:15.145817", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005701", "end": "2025-12-17 20:20:15.460874", "msg": "", "rc": 0, "start": "2025-12-17 20:20:15.455173", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005341", "end": "2025-12-17 20:19:44.812038", "msg": "", "rc": 0, "start": "2025-12-17 20:19:44.806697", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005358", "end": "2025-12-17 17:20:15.609899", "msg": "", "rc": 0, "start": "2025-12-17 17:20:15.604541", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005211", "end": "2025-12-17 20:19:51.501472", "msg": "", "rc": 0, "start": "2025-12-17 20:19:51.496261", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005494", "end": "2025-12-17 20:20:15.883063", "msg": "", "rc": 0, "start": "2025-12-17 20:20:15.877569", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.019683", "end": "2025-12-17 20:20:15.993181", "msg": "", "rc": 0, "start": "2025-12-17 20:20:15.973498", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025416", "end": "2025-12-17 20:20:15.770767", "msg": "", "rc": 0, "start": "2025-12-17 20:20:15.745351", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004436", "end": "2025-12-17 20:20:16.286035", "msg": "", "rc": 0, "start": "2025-12-17 20:20:16.281599", "stderr": "", "stderr_lines": [], "stdout": "77.8%", "stdout_lines": ["77.8%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004351", "end": "2025-12-17 20:20:16.298529", "msg": "", "rc": 0, "start": "2025-12-17 20:20:16.294178", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004542", "end": "2025-12-17 20:20:16.318468", "msg": "", "rc": 0, "start": "2025-12-17 20:20:16.313926", "stderr": "", "stderr_lines": [], "stdout": "49.2%", "stdout_lines": ["49.2%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005062", "end": "2025-12-17 20:20:16.337395", "msg": "", "rc": 0, "start": "2025-12-17 20:20:16.332333", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005520", "end": "2025-12-17 20:20:16.345173", "msg": "", "rc": 0, "start": "2025-12-17 20:20:16.339653", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003874", "end": "2025-12-17 20:19:50.054240", "msg": "", "rc": 0, "start": "2025-12-17 20:19:50.050366", "stderr": "", "stderr_lines": [], "stdout": "70.7%", "stdout_lines": ["70.7%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004324", "end": "2025-12-17 20:19:43.509984", "msg": "", "rc": 0, "start": "2025-12-17 20:19:43.505660", "stderr": "", "stderr_lines": [], "stdout": "68.2%", "stdout_lines": ["68.2%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010880", "end": "2025-12-17 20:20:16.973924", "msg": "", "rc": 0, "start": "2025-12-17 20:20:16.963044", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011937", "end": "2025-12-17 20:20:17.008191", "msg": "", "rc": 0, "start": "2025-12-17 20:20:16.996254", "stderr": "", "stderr_lines": [], "stdout": "13.0%", "stdout_lines": ["13.0%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005822", "end": "2025-12-17 20:20:17.274786", "msg": "", "rc": 0, "start": "2025-12-17 20:20:17.268964", "stderr": "", "stderr_lines": [], "stdout": "35.6%", "stdout_lines": ["35.6%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004731", "end": "2025-12-17 20:19:46.699002", "msg": "", "rc": 0, "start": "2025-12-17 20:19:46.694271", "stderr": "", "stderr_lines": [], "stdout": "27.2%", "stdout_lines": ["27.2%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005315", "end": "2025-12-17 17:20:17.484817", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 17:20:17.479502", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003485", "end": "2025-12-17 20:19:53.367234", "msg": "", "rc": 0, "start": "2025-12-17 20:19:53.363749", "stderr": "", "stderr_lines": [], "stdout": "58.4%", "stdout_lines": ["58.4%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005374", "end": "2025-12-17 20:20:17.709500", "msg": "", "rc": 0, "start": "2025-12-17 20:20:17.704126", "stderr": "", "stderr_lines": [], "stdout": "14.0%", "stdout_lines": ["14.0%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.026154", "end": "2025-12-17 20:20:17.684187", "msg": "", "rc": 0, "start": "2025-12-17 20:20:17.658033", "stderr": "", "stderr_lines": [], "stdout": "20.0%", "stdout_lines": ["20.0%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010958", "end": "2025-12-17 20:20:17.945579", "msg": "", "rc": 0, "start": "2025-12-17 20:20:17.934621", "stderr": "", "stderr_lines": [], "stdout": "12.2%", "stdout_lines": ["12.2%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005269", "end": "2025-12-17 20:20:18.214007", "msg": "", "rc": 0, "start": "2025-12-17 20:20:18.208738", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004796", "end": "2025-12-17 20:20:18.234594", "msg": "", "rc": 0, "start": "2025-12-17 20:20:18.229798", "stderr": "", "stderr_lines": [], "stdout": "47.0°C", "stdout_lines": ["47.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003128", "end": "2025-12-17 20:20:18.268469", "msg": "", "rc": 0, "start": "2025-12-17 20:20:18.265341", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006303", "end": "2025-12-17 20:20:18.286233", "msg": "", "rc": 0, "start": "2025-12-17 20:20:18.279930", "stderr": "", "stderr_lines": [], "stdout": "52.5°C", "stdout_lines": ["52.5°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006213", "end": "2025-12-17 20:20:18.316219", "msg": "", "rc": 0, "start": "2025-12-17 20:20:18.310006", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002445", "end": "2025-12-17 20:19:52.015470", "msg": "", "rc": 0, "start": "2025-12-17 20:19:52.013025", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003050", "end": "2025-12-17 20:19:45.488248", "msg": "", "rc": 0, "start": "2025-12-17 20:19:45.485198", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011844", "end": "2025-12-17 20:20:18.943556", "msg": "", "rc": 0, "start": "2025-12-17 20:20:18.931712", "stderr": "", "stderr_lines": [], "stdout": "32.1°C", "stdout_lines": ["32.1°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013037", "end": "2025-12-17 20:20:18.960188", "msg": "", "rc": 0, "start": "2025-12-17 20:20:18.947151", "stderr": "", "stderr_lines": [], "stdout": "36.0°C", "stdout_lines": ["36.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003447", "end": "2025-12-17 20:20:19.243073", "msg": "", "rc": 0, "start": "2025-12-17 20:20:19.239626", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002975", "end": "2025-12-17 20:19:48.675998", "msg": "", "rc": 0, "start": "2025-12-17 20:19:48.673023", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002926", "end": "2025-12-17 20:19:55.312417", "msg": "", "rc": 0, "start": "2025-12-17 20:19:55.309491", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003987", "end": "2025-12-17 17:20:19.431028", "msg": "", "rc": 0, "start": "2025-12-17 17:20:19.427041", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003106", "end": "2025-12-17 20:20:19.711097", "msg": "", "rc": 0, "start": "2025-12-17 20:20:19.707991", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028620", "end": "2025-12-17 20:20:19.621919", "msg": "", "rc": 0, "start": "2025-12-17 20:20:19.593299", "stderr": "", "stderr_lines": [], "stdout": "36.0°C", "stdout_lines": ["36.0°C"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003688", "end": "2025-12-17 20:20:19.920262", "msg": "", "rc": 0, "start": "2025-12-17 20:20:19.916574", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004147", "end": "2025-12-17 20:20:20.153349", "msg": "", "rc": 0, "start": "2025-12-17 20:20:20.149202", "stderr": "", "stderr_lines": [], "stdout": "0.10", "stdout_lines": ["0.10"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004100", "end": "2025-12-17 20:20:20.167155", "msg": "", "rc": 0, "start": "2025-12-17 20:20:20.163055", "stderr": "", "stderr_lines": [], "stdout": "0.21", "stdout_lines": ["0.21"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005064", "end": "2025-12-17 20:20:20.198873", "msg": "", "rc": 0, "start": "2025-12-17 20:20:20.193809", "stderr": "", "stderr_lines": [], "stdout": "1.03", "stdout_lines": ["1.03"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005758", "end": "2025-12-17 20:20:20.210843", "msg": "", "rc": 0, "start": "2025-12-17 20:20:20.205085", "stderr": "", "stderr_lines": [], "stdout": "0.17", "stdout_lines": ["0.17"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005555", "end": "2025-12-17 20:20:20.207230", "msg": "", "rc": 0, "start": "2025-12-17 20:20:20.201675", "stderr": "", "stderr_lines": [], "stdout": "1.07", "stdout_lines": ["1.07"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004151", "end": "2025-12-17 20:19:53.922423", "msg": "", "rc": 0, "start": "2025-12-17 20:19:53.918272", "stderr": "", "stderr_lines": [], "stdout": "0.03", "stdout_lines": ["0.03"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005087", "end": "2025-12-17 20:19:47.376248", "msg": "", "rc": 0, "start": "2025-12-17 20:19:47.371161", "stderr": "", "stderr_lines": [], "stdout": "0.18", "stdout_lines": ["0.18"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011029", "end": "2025-12-17 20:20:20.954254", "msg": "", "rc": 0, "start": "2025-12-17 20:20:20.943225", "stderr": "", "stderr_lines": [], "stdout": "0.35", "stdout_lines": ["0.35"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010221", "end": "2025-12-17 20:20:20.970173", "msg": "", "rc": 0, "start": "2025-12-17 20:20:20.959952", "stderr": "", "stderr_lines": [], "stdout": "0.18", "stdout_lines": ["0.18"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005692", "end": "2025-12-17 20:20:21.145610", "msg": "", "rc": 0, "start": "2025-12-17 20:20:21.139918", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005149", "end": "2025-12-17 20:19:50.549195", "msg": "", "rc": 0, "start": "2025-12-17 20:19:50.544046", "stderr": "", "stderr_lines": [], "stdout": "0.71", "stdout_lines": ["0.71"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006125", "end": "2025-12-17 17:20:21.431584", "msg": "", "rc": 0, "start": "2025-12-17 17:20:21.425459", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004621", "end": "2025-12-17 20:19:57.338272", "msg": "", "rc": 0, "start": "2025-12-17 20:19:57.333651", "stderr": "", "stderr_lines": [], "stdout": "0.22", "stdout_lines": ["0.22"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005275", "end": "2025-12-17 20:20:21.586152", "msg": "", "rc": 0, "start": "2025-12-17 20:20:21.580877", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.007818", "end": "2025-12-17 20:20:21.784290", "msg": "", "rc": 0, "start": "2025-12-17 20:20:21.776472", "stderr": "", "stderr_lines": [], "stdout": "1.34", "stdout_lines": ["1.34"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024166", "end": "2025-12-17 20:20:21.540040", "msg": "", "rc": 0, "start": "2025-12-17 20:20:21.515874", "stderr": "", "stderr_lines": [], "stdout": "0.22", "stdout_lines": ["0.22"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:20:12 up 3 days, 9:52, 1 user, load average: 0.16, 0.12, 0.10\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.21\nCPU Temp: 47.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:20:12 up 22 days, 7:11, 1 user, load average: 0.02, 0.04, 0.05\nDisk Usage: 23%\nMemory Usage: 77.8%\nCPU Load: 0.10\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:20:12 up 22 days, 7:31, 1 user, load average: 1.04, 0.74, 0.66\nDisk Usage: 14%\nMemory Usage: 49.2%\nCPU Load: 1.03\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:20:12 up 22 days, 8:44, 1 user, load average: 0.99, 0.80, 0.70\nDisk Usage: 14%\nMemory Usage: 59.7%\nCPU Load: 1.07\nCPU Temp: 52.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:20:12 up 22 days, 9:30, 1 user, load average: 0.11, 0.07, 0.08\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.17\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:20:13 up 15 days, 9:46, 1 user, load average: 0.15, 0.12, 0.07\nDisk Usage: 21%\nMemory Usage: 20.0%\nCPU Load: 0.22\nCPU Temp: 36.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:20:13 up 194 days, 11:53, 1 user, load average: 0.30, 0.30, 0.24\nDisk Usage: 6%\nMemory Usage: 13.0%\nCPU Load: 0.35\nCPU Temp: 36.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:20:12 up 194 days, 11:53, 1 user, load average: 0.19, 0.13, 0.10\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.18\nCPU Temp: 32.1°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:19:46 up 11 days, 8:09, 0 user, load average: 0.04, 0.11, 0.11\nDisk Usage: 48%\nMemory Usage: 70.7%\nCPU Load: 0.03\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:19:39 up 18 days, 4:21, 0 user, load average: 0.13, 0.04, 0.01\nDisk Usage: 25%\nMemory Usage: 68.2%\nCPU Load: 0.18\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:20:13 up 3 days, 9:51, 1 user, load average: 0.00, 0.02, 0.00\nDisk Usage: 1%\nMemory Usage: 35.6%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:19:42 up 20 days, 23:14, 0 user, load average: 0.66, 0.45, 0.49\nDisk Usage: 28%\nMemory Usage: 27.2%\nCPU Load: 0.71\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:19:49 up 17 days, 9:35, 0 user, load average: 0.07, 0.21, 0.20\nDisk Usage: 76%\nMemory Usage: 58.4%\nCPU Load: 0.22\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 5:20PM up 22 days, 7:10, 1 user, load averages: 0.32, 0.26, 0.20\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:20:13 up 3 days, 9:51, 1 user, load average: 0.00, 0.03, 0.00\nDisk Usage: 79%\nMemory Usage: 14.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:20:13 up 26 min, 1 user, load average: 1.13, 1.12, 0.98\nDisk Usage: 1%\nMemory Usage: 12.2%\nCPU Load: 1.34\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T01:20:22.767944+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_012528_6ad0b1_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_012528_6ad0b1_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..d01ab23 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_012528_6ad0b1_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `3c1485d73dff446396cbbcdcf055e46c` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T01:25:00.000865+00:00 | +| **Fin** | 2025-12-18T01:25:28.787614+00:00 | +| **Durée** | 28.8s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [ali2v.xeon.home] +ok: [hp2.i7.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003588", "end": "2025-12-17 20:25:16.414278", "msg": "", "rc": 0, "start": "2025-12-17 20:25:16.410690", "stderr": "", "stderr_lines": [], "stdout": " 20:25:16 up 22 days, 9:35, 1 user, load average: 0.00, 0.03, 0.06", "stdout_lines": [" 20:25:16 up 22 days, 9:35, 1 user, load average: 0.00, 0.03, 0.06"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004054", "end": "2025-12-17 20:25:16.437225", "msg": "", "rc": 0, "start": "2025-12-17 20:25:16.433171", "stderr": "", "stderr_lines": [], "stdout": " 20:25:16 up 22 days, 8:49, 1 user, load average: 0.55, 0.65, 0.67", "stdout_lines": [" 20:25:16 up 22 days, 8:49, 1 user, load average: 0.55, 0.65, 0.67"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002908", "end": "2025-12-17 20:25:16.440854", "msg": "", "rc": 0, "start": "2025-12-17 20:25:16.437946", "stderr": "", "stderr_lines": [], "stdout": " 20:25:16 up 3 days, 9:57, 1 user, load average: 0.47, 0.22, 0.13", "stdout_lines": [" 20:25:16 up 3 days, 9:57, 1 user, load average: 0.47, 0.22, 0.13"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.003747", "end": "2025-12-17 20:25:17.409110", "msg": "", "rc": 0, "start": "2025-12-17 20:25:16.405363", "stderr": "", "stderr_lines": [], "stdout": " 20:25:16 up 22 days, 7:16, 1 user, load average: 0.10, 0.09, 0.08", "stdout_lines": [" 20:25:16 up 22 days, 7:16, 1 user, load average: 0.10, 0.09, 0.08"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.003496", "end": "2025-12-17 20:25:17.419507", "msg": "", "rc": 0, "start": "2025-12-17 20:25:16.416011", "stderr": "", "stderr_lines": [], "stdout": " 20:25:16 up 22 days, 7:36, 1 user, load average: 0.82, 0.78, 0.70", "stdout_lines": [" 20:25:16 up 22 days, 7:36, 1 user, load average: 0.82, 0.78, 0.70"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008369", "end": "2025-12-17 20:25:17.504181", "msg": "", "rc": 0, "start": "2025-12-17 20:25:17.495812", "stderr": "", "stderr_lines": [], "stdout": " 20:25:17 up 194 days, 11:58, 1 user, load average: 0.19, 0.15, 0.10", "stdout_lines": [" 20:25:17 up 194 days, 11:58, 1 user, load average: 0.19, 0.15, 0.10"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009337", "end": "2025-12-17 20:25:17.530386", "msg": "", "rc": 0, "start": "2025-12-17 20:25:17.521049", "stderr": "", "stderr_lines": [], "stdout": " 20:25:17 up 194 days, 11:58, 1 user, load average: 0.60, 0.35, 0.26", "stdout_lines": [" 20:25:17 up 194 days, 11:58, 1 user, load average: 0.60, 0.35, 0.26"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003364", "end": "2025-12-17 20:24:51.347306", "msg": "", "rc": 0, "start": "2025-12-17 20:24:51.343942", "stderr": "", "stderr_lines": [], "stdout": " 20:24:51 up 11 days, 8:14, 0 user, load average: 0.16, 0.17, 0.12", "stdout_lines": [" 20:24:51 up 11 days, 8:14, 0 user, load average: 0.16, 0.17, 0.12"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003465", "end": "2025-12-17 20:24:44.795050", "msg": "", "rc": 0, "start": "2025-12-17 20:24:44.791585", "stderr": "", "stderr_lines": [], "stdout": " 20:24:44 up 18 days, 4:26, 0 user, load average: 0.09, 0.07, 0.01", "stdout_lines": [" 20:24:44 up 18 days, 4:26, 0 user, load average: 0.09, 0.07, 0.01"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019485", "end": "2025-12-17 20:25:18.145020", "msg": "", "rc": 0, "start": "2025-12-17 20:25:18.125535", "stderr": "", "stderr_lines": [], "stdout": " 20:25:18 up 15 days, 9:51, 1 user, load average: 0.19, 0.12, 0.08", "stdout_lines": [" 20:25:18 up 15 days, 9:51, 1 user, load average: 0.19, 0.12, 0.08"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004718", "end": "2025-12-17 20:25:18.261202", "msg": "", "rc": 0, "start": "2025-12-17 20:25:18.256484", "stderr": "", "stderr_lines": [], "stdout": " 20:25:18 up 3 days, 9:56, 1 user, load average: 0.17, 0.06, 0.01", "stdout_lines": [" 20:25:18 up 3 days, 9:56, 1 user, load average: 0.17, 0.06, 0.01"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003383", "end": "2025-12-17 20:24:47.619248", "msg": "", "rc": 0, "start": "2025-12-17 20:24:47.615865", "stderr": "", "stderr_lines": [], "stdout": " 20:24:47 up 20 days, 23:19, 0 user, load average: 0.68, 0.51, 0.49", "stdout_lines": [" 20:24:47 up 20 days, 23:19, 0 user, load average: 0.68, 0.51, 0.49"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004241", "end": "2025-12-17 17:25:18.851116", "msg": "", "rc": 0, "start": "2025-12-17 17:25:18.846875", "stderr": "", "stderr_lines": [], "stdout": " 5:25PM up 22 days, 7:15, 1 user, load averages: 0.45, 0.32, 0.23", "stdout_lines": [" 5:25PM up 22 days, 7:15, 1 user, load averages: 0.45, 0.32, 0.23"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004913", "end": "2025-12-17 20:24:54.718862", "msg": "", "rc": 0, "start": "2025-12-17 20:24:54.713949", "stderr": "", "stderr_lines": [], "stdout": " 20:24:54 up 17 days, 9:40, 0 user, load average: 0.22, 0.19, 0.18", "stdout_lines": [" 20:24:54 up 17 days, 9:40, 0 user, load average: 0.22, 0.19, 0.18"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003744", "end": "2025-12-17 20:25:18.972294", "msg": "", "rc": 0, "start": "2025-12-17 20:25:18.968550", "stderr": "", "stderr_lines": [], "stdout": " 20:25:18 up 3 days, 9:56, 1 user, load average: 0.35, 0.15, 0.05", "stdout_lines": [" 20:25:18 up 3 days, 9:56, 1 user, load average: 0.35, 0.15, 0.05"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.018819", "end": "2025-12-17 20:25:19.508440", "msg": "", "rc": 0, "start": "2025-12-17 20:25:19.489621", "stderr": "", "stderr_lines": [], "stdout": " 20:25:19 up 31 min, 1 user, load average: 1.74, 1.27, 1.07", "stdout_lines": [" 20:25:19 up 31 min, 1 user, load average: 1.74, 1.27, 1.07"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004318", "end": "2025-12-17 20:25:19.899582", "msg": "", "rc": 0, "start": "2025-12-17 20:25:19.895264", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004044", "end": "2025-12-17 20:25:19.892634", "msg": "", "rc": 0, "start": "2025-12-17 20:25:19.888590", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004744", "end": "2025-12-17 20:25:19.955492", "msg": "", "rc": 0, "start": "2025-12-17 20:25:19.950748", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005876", "end": "2025-12-17 20:25:20.058336", "msg": "", "rc": 0, "start": "2025-12-17 20:25:20.052460", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004383", "end": "2025-12-17 20:25:20.087809", "msg": "", "rc": 0, "start": "2025-12-17 20:25:20.083426", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004829", "end": "2025-12-17 20:24:54.020469", "msg": "", "rc": 0, "start": "2025-12-17 20:24:54.015640", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005431", "end": "2025-12-17 20:24:47.510800", "msg": "", "rc": 0, "start": "2025-12-17 20:24:47.505369", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011195", "end": "2025-12-17 20:25:20.996584", "msg": "", "rc": 0, "start": "2025-12-17 20:25:20.985389", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011848", "end": "2025-12-17 20:25:21.047655", "msg": "", "rc": 0, "start": "2025-12-17 20:25:21.035807", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005666", "end": "2025-12-17 20:25:21.394182", "msg": "", "rc": 0, "start": "2025-12-17 20:25:21.388516", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005321", "end": "2025-12-17 20:24:50.873361", "msg": "", "rc": 0, "start": "2025-12-17 20:24:50.868040", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025508", "end": "2025-12-17 20:25:21.516002", "msg": "", "rc": 0, "start": "2025-12-17 20:25:21.490494", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005304", "end": "2025-12-17 17:25:21.691953", "msg": "", "rc": 0, "start": "2025-12-17 17:25:21.686649", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005088", "end": "2025-12-17 20:24:57.600607", "msg": "", "rc": 0, "start": "2025-12-17 20:24:57.595519", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005258", "end": "2025-12-17 20:25:21.944790", "msg": "", "rc": 0, "start": "2025-12-17 20:25:21.939532", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.022071", "end": "2025-12-17 20:25:22.616613", "msg": "", "rc": 0, "start": "2025-12-17 20:25:22.594542", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004261", "end": "2025-12-17 20:25:22.622537", "msg": "", "rc": 0, "start": "2025-12-17 20:25:22.618276", "stderr": "", "stderr_lines": [], "stdout": "78.0%", "stdout_lines": ["78.0%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004108", "end": "2025-12-17 20:25:22.666148", "msg": "", "rc": 0, "start": "2025-12-17 20:25:22.662040", "stderr": "", "stderr_lines": [], "stdout": "22.5%", "stdout_lines": ["22.5%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004784", "end": "2025-12-17 20:25:22.676360", "msg": "", "rc": 0, "start": "2025-12-17 20:25:22.671576", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005852", "end": "2025-12-17 20:25:22.684005", "msg": "", "rc": 0, "start": "2025-12-17 20:25:22.678153", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005386", "end": "2025-12-17 20:25:22.711919", "msg": "", "rc": 0, "start": "2025-12-17 20:25:22.706533", "stderr": "", "stderr_lines": [], "stdout": "49.3%", "stdout_lines": ["49.3%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004085", "end": "2025-12-17 20:24:56.406813", "msg": "", "rc": 0, "start": "2025-12-17 20:24:56.402728", "stderr": "", "stderr_lines": [], "stdout": "70.6%", "stdout_lines": ["70.6%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004301", "end": "2025-12-17 20:24:49.869809", "msg": "", "rc": 0, "start": "2025-12-17 20:24:49.865508", "stderr": "", "stderr_lines": [], "stdout": "68.1%", "stdout_lines": ["68.1%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011001", "end": "2025-12-17 20:25:23.330107", "msg": "", "rc": 0, "start": "2025-12-17 20:25:23.319106", "stderr": "", "stderr_lines": [], "stdout": "6.9%", "stdout_lines": ["6.9%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011881", "end": "2025-12-17 20:25:23.364822", "msg": "", "rc": 0, "start": "2025-12-17 20:25:23.352941", "stderr": "", "stderr_lines": [], "stdout": "13.3%", "stdout_lines": ["13.3%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005738", "end": "2025-12-17 20:25:23.612101", "msg": "", "rc": 0, "start": "2025-12-17 20:25:23.606363", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.007203", "end": "2025-12-17 20:24:53.057069", "msg": "", "rc": 0, "start": "2025-12-17 20:24:53.049866", "stderr": "", "stderr_lines": [], "stdout": "27.8%", "stdout_lines": ["27.8%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005113", "end": "2025-12-17 17:25:23.817593", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 17:25:23.812480", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004561", "end": "2025-12-17 20:24:59.732722", "msg": "", "rc": 0, "start": "2025-12-17 20:24:59.728161", "stderr": "", "stderr_lines": [], "stdout": "59.2%", "stdout_lines": ["59.2%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006319", "end": "2025-12-17 20:25:24.032101", "msg": "", "rc": 0, "start": "2025-12-17 20:25:24.025782", "stderr": "", "stderr_lines": [], "stdout": "13.9%", "stdout_lines": ["13.9%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.007623", "end": "2025-12-17 20:25:24.559219", "msg": "", "rc": 0, "start": "2025-12-17 20:25:24.551596", "stderr": "", "stderr_lines": [], "stdout": "12.4%", "stdout_lines": ["12.4%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025878", "end": "2025-12-17 20:25:24.003910", "msg": "", "rc": 0, "start": "2025-12-17 20:25:23.978032", "stderr": "", "stderr_lines": [], "stdout": "19.6%", "stdout_lines": ["19.6%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005365", "end": "2025-12-17 20:25:24.524547", "msg": "", "rc": 0, "start": "2025-12-17 20:25:24.519182", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004779", "end": "2025-12-17 20:25:24.545982", "msg": "", "rc": 0, "start": "2025-12-17 20:25:24.541203", "stderr": "", "stderr_lines": [], "stdout": "47.0°C", "stdout_lines": ["47.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003252", "end": "2025-12-17 20:25:24.564881", "msg": "", "rc": 0, "start": "2025-12-17 20:25:24.561629", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005955", "end": "2025-12-17 20:25:24.575436", "msg": "", "rc": 0, "start": "2025-12-17 20:25:24.569481", "stderr": "", "stderr_lines": [], "stdout": "52.0°C", "stdout_lines": ["52.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005726", "end": "2025-12-17 20:25:24.590225", "msg": "", "rc": 0, "start": "2025-12-17 20:25:24.584499", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002687", "end": "2025-12-17 20:24:58.289557", "msg": "", "rc": 0, "start": "2025-12-17 20:24:58.286870", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003097", "end": "2025-12-17 20:24:51.741032", "msg": "", "rc": 0, "start": "2025-12-17 20:24:51.737935", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011892", "end": "2025-12-17 20:25:25.224573", "msg": "", "rc": 0, "start": "2025-12-17 20:25:25.212681", "stderr": "", "stderr_lines": [], "stdout": "31.6°C", "stdout_lines": ["31.6°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013273", "end": "2025-12-17 20:25:25.253292", "msg": "", "rc": 0, "start": "2025-12-17 20:25:25.240019", "stderr": "", "stderr_lines": [], "stdout": "35.0°C", "stdout_lines": ["35.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003114", "end": "2025-12-17 20:25:25.491488", "msg": "", "rc": 0, "start": "2025-12-17 20:25:25.488374", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002918", "end": "2025-12-17 20:24:54.887039", "msg": "", "rc": 0, "start": "2025-12-17 20:24:54.884121", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003950", "end": "2025-12-17 17:25:25.720799", "msg": "", "rc": 0, "start": "2025-12-17 17:25:25.716849", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002802", "end": "2025-12-17 20:25:01.595030", "msg": "", "rc": 0, "start": "2025-12-17 20:25:01.592228", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003976", "end": "2025-12-17 20:25:26.404927", "msg": "", "rc": 0, "start": "2025-12-17 20:25:26.400951", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002953", "end": "2025-12-17 20:25:25.920212", "msg": "", "rc": 0, "start": "2025-12-17 20:25:25.917259", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028379", "end": "2025-12-17 20:25:25.916096", "msg": "", "rc": 0, "start": "2025-12-17 20:25:25.887717", "stderr": "", "stderr_lines": [], "stdout": "35.6°C", "stdout_lines": ["35.6°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004183", "end": "2025-12-17 20:25:26.454756", "msg": "", "rc": 0, "start": "2025-12-17 20:25:26.450573", "stderr": "", "stderr_lines": [], "stdout": "0.24", "stdout_lines": ["0.24"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005080", "end": "2025-12-17 20:25:26.483728", "msg": "", "rc": 0, "start": "2025-12-17 20:25:26.478648", "stderr": "", "stderr_lines": [], "stdout": "0.69", "stdout_lines": ["0.69"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004024", "end": "2025-12-17 20:25:26.483066", "msg": "", "rc": 0, "start": "2025-12-17 20:25:26.479042", "stderr": "", "stderr_lines": [], "stdout": "0.47", "stdout_lines": ["0.47"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005087", "end": "2025-12-17 20:25:26.508908", "msg": "", "rc": 0, "start": "2025-12-17 20:25:26.503821", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005752", "end": "2025-12-17 20:25:26.523705", "msg": "", "rc": 0, "start": "2025-12-17 20:25:26.517953", "stderr": "", "stderr_lines": [], "stdout": "0.63", "stdout_lines": ["0.63"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004880", "end": "2025-12-17 20:25:00.228678", "msg": "", "rc": 0, "start": "2025-12-17 20:25:00.223798", "stderr": "", "stderr_lines": [], "stdout": "0.28", "stdout_lines": ["0.28"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005479", "end": "2025-12-17 20:24:53.706351", "msg": "", "rc": 0, "start": "2025-12-17 20:24:53.700872", "stderr": "", "stderr_lines": [], "stdout": "0.16", "stdout_lines": ["0.16"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010245", "end": "2025-12-17 20:25:27.272532", "msg": "", "rc": 0, "start": "2025-12-17 20:25:27.262287", "stderr": "", "stderr_lines": [], "stdout": "0.24", "stdout_lines": ["0.24"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011292", "end": "2025-12-17 20:25:27.285287", "msg": "", "rc": 0, "start": "2025-12-17 20:25:27.273995", "stderr": "", "stderr_lines": [], "stdout": "0.55", "stdout_lines": ["0.55"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005656", "end": "2025-12-17 20:25:27.448766", "msg": "", "rc": 0, "start": "2025-12-17 20:25:27.443110", "stderr": "", "stderr_lines": [], "stdout": "0.14", "stdout_lines": ["0.14"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006791", "end": "2025-12-17 20:24:56.912293", "msg": "", "rc": 0, "start": "2025-12-17 20:24:56.905502", "stderr": "", "stderr_lines": [], "stdout": "0.57", "stdout_lines": ["0.57"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005890", "end": "2025-12-17 17:25:27.764328", "msg": "", "rc": 0, "start": "2025-12-17 17:25:27.758438", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005523", "end": "2025-12-17 20:25:03.660642", "msg": "", "rc": 0, "start": "2025-12-17 20:25:03.655119", "stderr": "", "stderr_lines": [], "stdout": "0.19", "stdout_lines": ["0.19"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005293", "end": "2025-12-17 20:25:27.863508", "msg": "", "rc": 0, "start": "2025-12-17 20:25:27.858215", "stderr": "", "stderr_lines": [], "stdout": "0.30", "stdout_lines": ["0.30"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.008071", "end": "2025-12-17 20:25:27.988958", "msg": "", "rc": 0, "start": "2025-12-17 20:25:27.980887", "stderr": "", "stderr_lines": [], "stdout": "2.34", "stdout_lines": ["2.34"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024413", "end": "2025-12-17 20:25:27.841004", "msg": "", "rc": 0, "start": "2025-12-17 20:25:27.816591", "stderr": "", "stderr_lines": [], "stdout": "0.24", "stdout_lines": ["0.24"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:25:16 up 3 days, 9:57, 1 user, load average: 0.47, 0.22, 0.13\nDisk Usage: 22%\nMemory Usage: 22.5%\nCPU Load: 0.47\nCPU Temp: 47.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:25:16 up 22 days, 7:16, 1 user, load average: 0.10, 0.09, 0.08\nDisk Usage: 23%\nMemory Usage: 78.0%\nCPU Load: 0.24\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:25:16 up 22 days, 7:36, 1 user, load average: 0.82, 0.78, 0.70\nDisk Usage: 14%\nMemory Usage: 49.3%\nCPU Load: 0.69\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:25:16 up 22 days, 8:49, 1 user, load average: 0.55, 0.65, 0.67\nDisk Usage: 14%\nMemory Usage: 59.7%\nCPU Load: 0.63\nCPU Temp: 52.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:25:16 up 22 days, 9:35, 1 user, load average: 0.00, 0.03, 0.06\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:25:18 up 15 days, 9:51, 1 user, load average: 0.19, 0.12, 0.08\nDisk Usage: 21%\nMemory Usage: 19.6%\nCPU Load: 0.24\nCPU Temp: 35.6°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:25:17 up 194 days, 11:58, 1 user, load average: 0.60, 0.35, 0.26\nDisk Usage: 6%\nMemory Usage: 13.3%\nCPU Load: 0.55\nCPU Temp: 35.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:25:17 up 194 days, 11:58, 1 user, load average: 0.19, 0.15, 0.10\nDisk Usage: 3%\nMemory Usage: 6.9%\nCPU Load: 0.24\nCPU Temp: 31.6°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:24:51 up 11 days, 8:14, 0 user, load average: 0.16, 0.17, 0.12\nDisk Usage: 48%\nMemory Usage: 70.6%\nCPU Load: 0.28\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:24:44 up 18 days, 4:26, 0 user, load average: 0.09, 0.07, 0.01\nDisk Usage: 25%\nMemory Usage: 68.1%\nCPU Load: 0.16\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:25:18 up 3 days, 9:56, 1 user, load average: 0.17, 0.06, 0.01\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.14\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:24:47 up 20 days, 23:19, 0 user, load average: 0.68, 0.51, 0.49\nDisk Usage: 28%\nMemory Usage: 27.8%\nCPU Load: 0.57\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:24:54 up 17 days, 9:40, 0 user, load average: 0.22, 0.19, 0.18\nDisk Usage: 76%\nMemory Usage: 59.2%\nCPU Load: 0.19\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 5:25PM up 22 days, 7:15, 1 user, load averages: 0.45, 0.32, 0.23\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:25:18 up 3 days, 9:56, 1 user, load average: 0.35, 0.15, 0.05\nDisk Usage: 79%\nMemory Usage: 13.9%\nCPU Load: 0.30\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:25:19 up 31 min, 1 user, load average: 1.74, 1.27, 1.07\nDisk Usage: 1%\nMemory Usage: 12.4%\nCPU Load: 2.34\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T01:25:28.839785+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_013021_7b5a06_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_013021_7b5a06_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..f7cfeaf --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_013021_7b5a06_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `60824c80fb274495961b8913ccc92330` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T01:30:00.001083+00:00 | +| **Fin** | 2025-12-18T01:30:21.461596+00:00 | +| **Durée** | 21.5s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003238", "end": "2025-12-17 20:30:10.991544", "msg": "", "rc": 0, "start": "2025-12-17 20:30:10.988306", "stderr": "", "stderr_lines": [], "stdout": " 20:30:10 up 22 days, 7:21, 1 user, load average: 0.28, 0.15, 0.10", "stdout_lines": [" 20:30:10 up 22 days, 7:21, 1 user, load average: 0.28, 0.15, 0.10"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003373", "end": "2025-12-17 20:30:11.006079", "msg": "", "rc": 0, "start": "2025-12-17 20:30:11.002706", "stderr": "", "stderr_lines": [], "stdout": " 20:30:11 up 22 days, 9:40, 1 user, load average: 0.01, 0.02, 0.04", "stdout_lines": [" 20:30:11 up 22 days, 9:40, 1 user, load average: 0.01, 0.02, 0.04"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003538", "end": "2025-12-17 20:30:11.017659", "msg": "", "rc": 0, "start": "2025-12-17 20:30:11.014121", "stderr": "", "stderr_lines": [], "stdout": " 20:30:11 up 22 days, 7:41, 1 user, load average: 0.88, 0.80, 0.72", "stdout_lines": [" 20:30:11 up 22 days, 7:41, 1 user, load average: 0.88, 0.80, 0.72"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003169", "end": "2025-12-17 20:30:11.034214", "msg": "", "rc": 0, "start": "2025-12-17 20:30:11.031045", "stderr": "", "stderr_lines": [], "stdout": " 20:30:11 up 3 days, 10:02, 1 user, load average: 0.32, 0.23, 0.15", "stdout_lines": [" 20:30:11 up 3 days, 10:02, 1 user, load average: 0.32, 0.23, 0.15"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004107", "end": "2025-12-17 20:30:11.039030", "msg": "", "rc": 0, "start": "2025-12-17 20:30:11.034923", "stderr": "", "stderr_lines": [], "stdout": " 20:30:11 up 22 days, 8:54, 1 user, load average: 0.54, 0.58, 0.63", "stdout_lines": [" 20:30:11 up 22 days, 8:54, 1 user, load average: 0.54, 0.58, 0.63"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003411", "end": "2025-12-17 20:29:44.745802", "msg": "", "rc": 0, "start": "2025-12-17 20:29:44.742391", "stderr": "", "stderr_lines": [], "stdout": " 20:29:44 up 11 days, 8:19, 0 user, load average: 0.13, 0.14, 0.11", "stdout_lines": [" 20:29:44 up 11 days, 8:19, 0 user, load average: 0.13, 0.14, 0.11"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004613", "end": "2025-12-17 20:29:38.211440", "msg": "", "rc": 0, "start": "2025-12-17 20:29:38.206827", "stderr": "", "stderr_lines": [], "stdout": " 20:29:38 up 18 days, 4:31, 0 user, load average: 0.01, 0.04, 0.00", "stdout_lines": [" 20:29:38 up 18 days, 4:31, 0 user, load average: 0.01, 0.04, 0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008466", "end": "2025-12-17 20:30:11.679260", "msg": "", "rc": 0, "start": "2025-12-17 20:30:11.670794", "stderr": "", "stderr_lines": [], "stdout": " 20:30:11 up 194 days, 12:03, 1 user, load average: 0.32, 0.25, 0.15", "stdout_lines": [" 20:30:11 up 194 days, 12:03, 1 user, load average: 0.32, 0.25, 0.15"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009435", "end": "2025-12-17 20:30:11.710869", "msg": "", "rc": 0, "start": "2025-12-17 20:30:11.701434", "stderr": "", "stderr_lines": [], "stdout": " 20:30:11 up 194 days, 12:03, 1 user, load average: 0.33, 0.27, 0.25", "stdout_lines": [" 20:30:11 up 194 days, 12:03, 1 user, load average: 0.33, 0.27, 0.25"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.005927", "end": "2025-12-17 20:30:11.960684", "msg": "", "rc": 0, "start": "2025-12-17 20:30:11.954757", "stderr": "", "stderr_lines": [], "stdout": " 20:30:11 up 3 days, 10:01, 1 user, load average: 0.05, 0.06, 0.01", "stdout_lines": [" 20:30:11 up 3 days, 10:01, 1 user, load average: 0.05, 0.06, 0.01"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004084", "end": "2025-12-17 17:30:12.159912", "msg": "", "rc": 0, "start": "2025-12-17 17:30:12.155828", "stderr": "", "stderr_lines": [], "stdout": " 5:30PM up 22 days, 7:19, 1 user, load averages: 0.35, 0.32, 0.25", "stdout_lines": [" 5:30PM up 22 days, 7:19, 1 user, load averages: 0.35, 0.32, 0.25"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003441", "end": "2025-12-17 20:29:41.450475", "msg": "", "rc": 0, "start": "2025-12-17 20:29:41.447034", "stderr": "", "stderr_lines": [], "stdout": " 20:29:41 up 20 days, 23:23, 0 user, load average: 0.22, 0.38, 0.44", "stdout_lines": [" 20:29:41 up 20 days, 23:23, 0 user, load average: 0.22, 0.38, 0.44"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002754", "end": "2025-12-17 20:29:48.086581", "msg": "", "rc": 0, "start": "2025-12-17 20:29:48.083827", "stderr": "", "stderr_lines": [], "stdout": " 20:29:48 up 17 days, 9:45, 0 user, load average: 0.74, 0.45, 0.27", "stdout_lines": [" 20:29:48 up 17 days, 9:45, 0 user, load average: 0.74, 0.45, 0.27"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003819", "end": "2025-12-17 20:30:12.382942", "msg": "", "rc": 0, "start": "2025-12-17 20:30:12.379123", "stderr": "", "stderr_lines": [], "stdout": " 20:30:12 up 3 days, 10:01, 1 user, load average: 0.14, 0.12, 0.05", "stdout_lines": [" 20:30:12 up 3 days, 10:01, 1 user, load average: 0.14, 0.12, 0.05"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004877", "end": "2025-12-17 20:30:12.934149", "msg": "", "rc": 0, "start": "2025-12-17 20:30:12.929272", "stderr": "", "stderr_lines": [], "stdout": " 20:30:12 up 36 min, 1 user, load average: 1.37, 1.28, 1.12", "stdout_lines": [" 20:30:12 up 36 min, 1 user, load average: 1.37, 1.28, 1.12"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.020717", "end": "2025-12-17 20:30:12.381171", "msg": "", "rc": 0, "start": "2025-12-17 20:30:12.360454", "stderr": "", "stderr_lines": [], "stdout": " 20:30:12 up 15 days, 9:56, 1 user, load average: 0.12, 0.10, 0.08", "stdout_lines": [" 20:30:12 up 15 days, 9:56, 1 user, load average: 0.12, 0.10, 0.08"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004312", "end": "2025-12-17 20:30:12.927164", "msg": "", "rc": 0, "start": "2025-12-17 20:30:12.922852", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004093", "end": "2025-12-17 20:30:12.955537", "msg": "", "rc": 0, "start": "2025-12-17 20:30:12.951444", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004868", "end": "2025-12-17 20:30:12.961594", "msg": "", "rc": 0, "start": "2025-12-17 20:30:12.956726", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005099", "end": "2025-12-17 20:30:12.975597", "msg": "", "rc": 0, "start": "2025-12-17 20:30:12.970498", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006206", "end": "2025-12-17 20:30:13.013821", "msg": "", "rc": 0, "start": "2025-12-17 20:30:13.007615", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004976", "end": "2025-12-17 20:29:46.721360", "msg": "", "rc": 0, "start": "2025-12-17 20:29:46.716384", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.008938", "end": "2025-12-17 20:29:40.192387", "msg": "", "rc": 0, "start": "2025-12-17 20:29:40.183449", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010600", "end": "2025-12-17 20:30:13.661298", "msg": "", "rc": 0, "start": "2025-12-17 20:30:13.650698", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011547", "end": "2025-12-17 20:30:13.708110", "msg": "", "rc": 0, "start": "2025-12-17 20:30:13.696563", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005810", "end": "2025-12-17 20:30:13.940230", "msg": "", "rc": 0, "start": "2025-12-17 20:30:13.934420", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005342", "end": "2025-12-17 20:29:43.393361", "msg": "", "rc": 0, "start": "2025-12-17 20:29:43.388019", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004793", "end": "2025-12-17 20:29:50.032627", "msg": "", "rc": 0, "start": "2025-12-17 20:29:50.027834", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005539", "end": "2025-12-17 17:30:14.166266", "msg": "", "rc": 0, "start": "2025-12-17 17:30:14.160727", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005424", "end": "2025-12-17 20:30:14.353905", "msg": "", "rc": 0, "start": "2025-12-17 20:30:14.348481", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006678", "end": "2025-12-17 20:30:14.465941", "msg": "", "rc": 0, "start": "2025-12-17 20:30:14.459263", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.028106", "end": "2025-12-17 20:30:14.553484", "msg": "", "rc": 0, "start": "2025-12-17 20:30:14.525378", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004213", "end": "2025-12-17 20:30:15.107465", "msg": "", "rc": 0, "start": "2025-12-17 20:30:15.103252", "stderr": "", "stderr_lines": [], "stdout": "78.1%", "stdout_lines": ["78.1%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004963", "end": "2025-12-17 20:30:15.129456", "msg": "", "rc": 0, "start": "2025-12-17 20:30:15.124493", "stderr": "", "stderr_lines": [], "stdout": "49.3%", "stdout_lines": ["49.3%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004149", "end": "2025-12-17 20:30:15.135020", "msg": "", "rc": 0, "start": "2025-12-17 20:30:15.130871", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005144", "end": "2025-12-17 20:30:15.154349", "msg": "", "rc": 0, "start": "2025-12-17 20:30:15.149205", "stderr": "", "stderr_lines": [], "stdout": "9.1%", "stdout_lines": ["9.1%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005354", "end": "2025-12-17 20:30:15.173901", "msg": "", "rc": 0, "start": "2025-12-17 20:30:15.168547", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004189", "end": "2025-12-17 20:29:48.873521", "msg": "", "rc": 0, "start": "2025-12-17 20:29:48.869332", "stderr": "", "stderr_lines": [], "stdout": "70.7%", "stdout_lines": ["70.7%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004471", "end": "2025-12-17 20:29:42.336828", "msg": "", "rc": 0, "start": "2025-12-17 20:29:42.332357", "stderr": "", "stderr_lines": [], "stdout": "68.3%", "stdout_lines": ["68.3%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010978", "end": "2025-12-17 20:30:15.822714", "msg": "", "rc": 0, "start": "2025-12-17 20:30:15.811736", "stderr": "", "stderr_lines": [], "stdout": "6.7%", "stdout_lines": ["6.7%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011928", "end": "2025-12-17 20:30:15.862915", "msg": "", "rc": 0, "start": "2025-12-17 20:30:15.850987", "stderr": "", "stderr_lines": [], "stdout": "12.8%", "stdout_lines": ["12.8%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005896", "end": "2025-12-17 20:30:16.079106", "msg": "", "rc": 0, "start": "2025-12-17 20:30:16.073210", "stderr": "", "stderr_lines": [], "stdout": "35.6%", "stdout_lines": ["35.6%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004429", "end": "2025-12-17 20:29:45.513006", "msg": "", "rc": 0, "start": "2025-12-17 20:29:45.508577", "stderr": "", "stderr_lines": [], "stdout": "27.2%", "stdout_lines": ["27.2%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003616", "end": "2025-12-17 20:29:52.172900", "msg": "", "rc": 0, "start": "2025-12-17 20:29:52.169284", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005112", "end": "2025-12-17 17:30:16.322720", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 17:30:16.317608", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005481", "end": "2025-12-17 20:30:16.506033", "msg": "", "rc": 0, "start": "2025-12-17 20:30:16.500552", "stderr": "", "stderr_lines": [], "stdout": "13.8%", "stdout_lines": ["13.8%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006766", "end": "2025-12-17 20:30:16.627043", "msg": "", "rc": 0, "start": "2025-12-17 20:30:16.620277", "stderr": "", "stderr_lines": [], "stdout": "12.3%", "stdout_lines": ["12.3%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025823", "end": "2025-12-17 20:30:16.601769", "msg": "", "rc": 0, "start": "2025-12-17 20:30:16.575946", "stderr": "", "stderr_lines": [], "stdout": "20.4%", "stdout_lines": ["20.4%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005196", "end": "2025-12-17 20:30:17.129177", "msg": "", "rc": 0, "start": "2025-12-17 20:30:17.123981", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004939", "end": "2025-12-17 20:30:17.156496", "msg": "", "rc": 0, "start": "2025-12-17 20:30:17.151557", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002912", "end": "2025-12-17 20:30:17.175079", "msg": "", "rc": 0, "start": "2025-12-17 20:30:17.172167", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005871", "end": "2025-12-17 20:30:17.183743", "msg": "", "rc": 0, "start": "2025-12-17 20:30:17.177872", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006610", "end": "2025-12-17 20:30:17.186272", "msg": "", "rc": 0, "start": "2025-12-17 20:30:17.179662", "stderr": "", "stderr_lines": [], "stdout": "52.5°C", "stdout_lines": ["52.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002604", "end": "2025-12-17 20:29:50.893327", "msg": "", "rc": 0, "start": "2025-12-17 20:29:50.890723", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003169", "end": "2025-12-17 20:29:44.348606", "msg": "", "rc": 0, "start": "2025-12-17 20:29:44.345437", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012402", "end": "2025-12-17 20:30:17.850452", "msg": "", "rc": 0, "start": "2025-12-17 20:30:17.838050", "stderr": "", "stderr_lines": [], "stdout": "30.7°C", "stdout_lines": ["30.7°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013006", "end": "2025-12-17 20:30:17.883048", "msg": "", "rc": 0, "start": "2025-12-17 20:30:17.870042", "stderr": "", "stderr_lines": [], "stdout": "35.0°C", "stdout_lines": ["35.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003243", "end": "2025-12-17 20:30:18.101747", "msg": "", "rc": 0, "start": "2025-12-17 20:30:18.098504", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002854", "end": "2025-12-17 20:29:47.518396", "msg": "", "rc": 0, "start": "2025-12-17 20:29:47.515542", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003908", "end": "2025-12-17 17:30:18.336400", "msg": "", "rc": 0, "start": "2025-12-17 17:30:18.332492", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002718", "end": "2025-12-17 20:29:54.239300", "msg": "", "rc": 0, "start": "2025-12-17 20:29:54.236582", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003111", "end": "2025-12-17 20:30:18.516506", "msg": "", "rc": 0, "start": "2025-12-17 20:30:18.513395", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003685", "end": "2025-12-17 20:30:18.646829", "msg": "", "rc": 0, "start": "2025-12-17 20:30:18.643144", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028771", "end": "2025-12-17 20:30:18.530644", "msg": "", "rc": 0, "start": "2025-12-17 20:30:18.501873", "stderr": "", "stderr_lines": [], "stdout": "36.0°C", "stdout_lines": ["36.0°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004157", "end": "2025-12-17 20:30:19.057212", "msg": "", "rc": 0, "start": "2025-12-17 20:30:19.053055", "stderr": "", "stderr_lines": [], "stdout": "0.24", "stdout_lines": ["0.24"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005354", "end": "2025-12-17 20:30:19.080092", "msg": "", "rc": 0, "start": "2025-12-17 20:30:19.074738", "stderr": "", "stderr_lines": [], "stdout": "0.81", "stdout_lines": ["0.81"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004048", "end": "2025-12-17 20:30:19.084021", "msg": "", "rc": 0, "start": "2025-12-17 20:30:19.079973", "stderr": "", "stderr_lines": [], "stdout": "0.46", "stdout_lines": ["0.46"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005986", "end": "2025-12-17 20:30:19.100602", "msg": "", "rc": 0, "start": "2025-12-17 20:30:19.094616", "stderr": "", "stderr_lines": [], "stdout": "0.01", "stdout_lines": ["0.01"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005434", "end": "2025-12-17 20:30:19.106446", "msg": "", "rc": 0, "start": "2025-12-17 20:30:19.101012", "stderr": "", "stderr_lines": [], "stdout": "0.61", "stdout_lines": ["0.61"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004214", "end": "2025-12-17 20:29:52.821609", "msg": "", "rc": 0, "start": "2025-12-17 20:29:52.817395", "stderr": "", "stderr_lines": [], "stdout": "0.20", "stdout_lines": ["0.20"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005242", "end": "2025-12-17 20:29:46.276229", "msg": "", "rc": 0, "start": "2025-12-17 20:29:46.270987", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011235", "end": "2025-12-17 20:30:19.857775", "msg": "", "rc": 0, "start": "2025-12-17 20:30:19.846540", "stderr": "", "stderr_lines": [], "stdout": "0.73", "stdout_lines": ["0.73"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010212", "end": "2025-12-17 20:30:19.871852", "msg": "", "rc": 0, "start": "2025-12-17 20:30:19.861640", "stderr": "", "stderr_lines": [], "stdout": "0.42", "stdout_lines": ["0.42"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005981", "end": "2025-12-17 20:30:20.047123", "msg": "", "rc": 0, "start": "2025-12-17 20:30:20.041142", "stderr": "", "stderr_lines": [], "stdout": "0.04", "stdout_lines": ["0.04"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005154", "end": "2025-12-17 20:29:49.441079", "msg": "", "rc": 0, "start": "2025-12-17 20:29:49.435925", "stderr": "", "stderr_lines": [], "stdout": "0.27", "stdout_lines": ["0.27"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005876", "end": "2025-12-17 17:30:20.333051", "msg": "", "rc": 0, "start": "2025-12-17 17:30:20.327175", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004315", "end": "2025-12-17 20:29:56.236005", "msg": "", "rc": 0, "start": "2025-12-17 20:29:56.231690", "stderr": "", "stderr_lines": [], "stdout": "0.62", "stdout_lines": ["0.62"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006408", "end": "2025-12-17 20:30:20.605511", "msg": "", "rc": 0, "start": "2025-12-17 20:30:20.599103", "stderr": "", "stderr_lines": [], "stdout": "1.71", "stdout_lines": ["1.71"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005357", "end": "2025-12-17 20:30:20.474081", "msg": "", "rc": 0, "start": "2025-12-17 20:30:20.468724", "stderr": "", "stderr_lines": [], "stdout": "0.13", "stdout_lines": ["0.13"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.023955", "end": "2025-12-17 20:30:20.450477", "msg": "", "rc": 0, "start": "2025-12-17 20:30:20.426522", "stderr": "", "stderr_lines": [], "stdout": "0.26", "stdout_lines": ["0.26"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:30:11 up 3 days, 10:02, 1 user, load average: 0.32, 0.23, 0.15\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.46\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:30:10 up 22 days, 7:21, 1 user, load average: 0.28, 0.15, 0.10\nDisk Usage: 23%\nMemory Usage: 78.1%\nCPU Load: 0.24\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:30:11 up 22 days, 7:41, 1 user, load average: 0.88, 0.80, 0.72\nDisk Usage: 14%\nMemory Usage: 49.3%\nCPU Load: 0.81\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:30:11 up 22 days, 8:54, 1 user, load average: 0.54, 0.58, 0.63\nDisk Usage: 14%\nMemory Usage: 59.7%\nCPU Load: 0.61\nCPU Temp: 52.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:30:11 up 22 days, 9:40, 1 user, load average: 0.01, 0.02, 0.04\nDisk Usage: 9%\nMemory Usage: 9.1%\nCPU Load: 0.01\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:30:12 up 15 days, 9:56, 1 user, load average: 0.12, 0.10, 0.08\nDisk Usage: 21%\nMemory Usage: 20.4%\nCPU Load: 0.26\nCPU Temp: 36.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:30:11 up 194 days, 12:03, 1 user, load average: 0.33, 0.27, 0.25\nDisk Usage: 6%\nMemory Usage: 12.8%\nCPU Load: 0.73\nCPU Temp: 35.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:30:11 up 194 days, 12:03, 1 user, load average: 0.32, 0.25, 0.15\nDisk Usage: 3%\nMemory Usage: 6.7%\nCPU Load: 0.42\nCPU Temp: 30.7°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:29:44 up 11 days, 8:19, 0 user, load average: 0.13, 0.14, 0.11\nDisk Usage: 48%\nMemory Usage: 70.7%\nCPU Load: 0.20\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:29:38 up 18 days, 4:31, 0 user, load average: 0.01, 0.04, 0.00\nDisk Usage: 25%\nMemory Usage: 68.3%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:30:11 up 3 days, 10:01, 1 user, load average: 0.05, 0.06, 0.01\nDisk Usage: 1%\nMemory Usage: 35.6%\nCPU Load: 0.04\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:29:41 up 20 days, 23:23, 0 user, load average: 0.22, 0.38, 0.44\nDisk Usage: 28%\nMemory Usage: 27.2%\nCPU Load: 0.27\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:29:48 up 17 days, 9:45, 0 user, load average: 0.74, 0.45, 0.27\nDisk Usage: 76%\nMemory Usage: 59.7%\nCPU Load: 0.62\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 5:30PM up 22 days, 7:19, 1 user, load averages: 0.35, 0.32, 0.25\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:30:12 up 3 days, 10:01, 1 user, load average: 0.14, 0.12, 0.05\nDisk Usage: 79%\nMemory Usage: 13.8%\nCPU Load: 0.13\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:30:12 up 36 min, 1 user, load average: 1.37, 1.28, 1.12\nDisk Usage: 1%\nMemory Usage: 12.3%\nCPU Load: 1.71\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T01:30:21.506010+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_013522_94bf2d_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_013522_94bf2d_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..a6b7dd7 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_013522_94bf2d_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `be15c0024fed476b8fe244d6bdfcd9fc` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T01:35:00.001361+00:00 | +| **Fin** | 2025-12-18T01:35:22.130515+00:00 | +| **Durée** | 22.1s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003312", "end": "2025-12-17 20:35:11.684829", "msg": "", "rc": 0, "start": "2025-12-17 20:35:11.681517", "stderr": "", "stderr_lines": [], "stdout": " 20:35:11 up 22 days, 7:26, 1 user, load average: 0.03, 0.09, 0.08", "stdout_lines": [" 20:35:11 up 22 days, 7:26, 1 user, load average: 0.03, 0.09, 0.08"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004029", "end": "2025-12-17 20:35:11.700686", "msg": "", "rc": 0, "start": "2025-12-17 20:35:11.696657", "stderr": "", "stderr_lines": [], "stdout": " 20:35:11 up 22 days, 9:45, 1 user, load average: 0.21, 0.08, 0.05", "stdout_lines": [" 20:35:11 up 22 days, 9:45, 1 user, load average: 0.21, 0.08, 0.05"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003490", "end": "2025-12-17 20:35:11.705782", "msg": "", "rc": 0, "start": "2025-12-17 20:35:11.702292", "stderr": "", "stderr_lines": [], "stdout": " 20:35:11 up 22 days, 7:46, 1 user, load average: 1.22, 0.90, 0.76", "stdout_lines": [" 20:35:11 up 22 days, 7:46, 1 user, load average: 1.22, 0.90, 0.76"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003877", "end": "2025-12-17 20:35:11.713487", "msg": "", "rc": 0, "start": "2025-12-17 20:35:11.709610", "stderr": "", "stderr_lines": [], "stdout": " 20:35:11 up 22 days, 8:59, 1 user, load average: 0.47, 0.54, 0.61", "stdout_lines": [" 20:35:11 up 22 days, 8:59, 1 user, load average: 0.47, 0.54, 0.61"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003100", "end": "2025-12-17 20:35:11.724553", "msg": "", "rc": 0, "start": "2025-12-17 20:35:11.721453", "stderr": "", "stderr_lines": [], "stdout": " 20:35:11 up 3 days, 10:07, 1 user, load average: 0.30, 0.26, 0.19", "stdout_lines": [" 20:35:11 up 3 days, 10:07, 1 user, load average: 0.30, 0.26, 0.19"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002792", "end": "2025-12-17 20:34:45.435395", "msg": "", "rc": 0, "start": "2025-12-17 20:34:45.432603", "stderr": "", "stderr_lines": [], "stdout": " 20:34:45 up 11 days, 8:24, 0 user, load average: 0.04, 0.09, 0.09", "stdout_lines": [" 20:34:45 up 11 days, 8:24, 0 user, load average: 0.04, 0.09, 0.09"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003269", "end": "2025-12-17 20:34:38.894037", "msg": "", "rc": 0, "start": "2025-12-17 20:34:38.890768", "stderr": "", "stderr_lines": [], "stdout": " 20:34:38 up 18 days, 4:36, 0 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 20:34:38 up 18 days, 4:36, 0 user, load average: 0.00, 0.00, 0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008455", "end": "2025-12-17 20:35:12.370873", "msg": "", "rc": 0, "start": "2025-12-17 20:35:12.362418", "stderr": "", "stderr_lines": [], "stdout": " 20:35:12 up 194 days, 12:08, 1 user, load average: 0.19, 0.19, 0.15", "stdout_lines": [" 20:35:12 up 194 days, 12:08, 1 user, load average: 0.19, 0.19, 0.15"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009493", "end": "2025-12-17 20:35:12.414279", "msg": "", "rc": 0, "start": "2025-12-17 20:35:12.404786", "stderr": "", "stderr_lines": [], "stdout": " 20:35:12 up 194 days, 12:08, 1 user, load average: 0.23, 0.26, 0.26", "stdout_lines": [" 20:35:12 up 194 days, 12:08, 1 user, load average: 0.23, 0.26, 0.26"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004748", "end": "2025-12-17 20:35:12.665868", "msg": "", "rc": 0, "start": "2025-12-17 20:35:12.661120", "stderr": "", "stderr_lines": [], "stdout": " 20:35:12 up 3 days, 10:06, 1 user, load average: 0.11, 0.05, 0.01", "stdout_lines": [" 20:35:12 up 3 days, 10:06, 1 user, load average: 0.11, 0.05, 0.01"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003260", "end": "2025-12-17 20:34:42.099683", "msg": "", "rc": 0, "start": "2025-12-17 20:34:42.096423", "stderr": "", "stderr_lines": [], "stdout": " 20:34:42 up 20 days, 23:28, 0 user, load average: 0.30, 0.35, 0.41", "stdout_lines": [" 20:34:42 up 20 days, 23:28, 0 user, load average: 0.30, 0.35, 0.41"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004200", "end": "2025-12-17 17:35:12.877537", "msg": "", "rc": 0, "start": "2025-12-17 17:35:12.873337", "stderr": "", "stderr_lines": [], "stdout": " 5:35PM up 22 days, 7:25, 1 user, load averages: 0.15, 0.24, 0.23", "stdout_lines": [" 5:35PM up 22 days, 7:25, 1 user, load averages: 0.15, 0.24, 0.23"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.005581", "end": "2025-12-17 20:34:48.744548", "msg": "", "rc": 0, "start": "2025-12-17 20:34:48.738967", "stderr": "", "stderr_lines": [], "stdout": " 20:34:48 up 17 days, 9:50, 0 user, load average: 0.60, 0.64, 0.41", "stdout_lines": [" 20:34:48 up 17 days, 9:50, 0 user, load average: 0.60, 0.64, 0.41"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003681", "end": "2025-12-17 20:35:13.091367", "msg": "", "rc": 0, "start": "2025-12-17 20:35:13.087686", "stderr": "", "stderr_lines": [], "stdout": " 20:35:13 up 3 days, 10:06, 1 user, load average: 0.00, 0.05, 0.04", "stdout_lines": [" 20:35:13 up 3 days, 10:06, 1 user, load average: 0.00, 0.05, 0.04"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.005826", "end": "2025-12-17 20:35:13.407389", "msg": "", "rc": 0, "start": "2025-12-17 20:35:13.401563", "stderr": "", "stderr_lines": [], "stdout": " 20:35:13 up 41 min, 1 user, load average: 1.22, 1.25, 1.15", "stdout_lines": [" 20:35:13 up 41 min, 1 user, load average: 1.22, 1.25, 1.15"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019596", "end": "2025-12-17 20:35:13.089602", "msg": "", "rc": 0, "start": "2025-12-17 20:35:13.070006", "stderr": "", "stderr_lines": [], "stdout": " 20:35:13 up 15 days, 10:01, 1 user, load average: 0.20, 0.14, 0.10", "stdout_lines": [" 20:35:13 up 15 days, 10:01, 1 user, load average: 0.20, 0.14, 0.10"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004320", "end": "2025-12-17 20:35:13.619507", "msg": "", "rc": 0, "start": "2025-12-17 20:35:13.615187", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004347", "end": "2025-12-17 20:35:13.634309", "msg": "", "rc": 0, "start": "2025-12-17 20:35:13.629962", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004558", "end": "2025-12-17 20:35:13.646322", "msg": "", "rc": 0, "start": "2025-12-17 20:35:13.641764", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004798", "end": "2025-12-17 20:35:13.678185", "msg": "", "rc": 0, "start": "2025-12-17 20:35:13.673387", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006258", "end": "2025-12-17 20:35:13.709113", "msg": "", "rc": 0, "start": "2025-12-17 20:35:13.702855", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004943", "end": "2025-12-17 20:34:47.406697", "msg": "", "rc": 0, "start": "2025-12-17 20:34:47.401754", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.008086", "end": "2025-12-17 20:34:40.892728", "msg": "", "rc": 0, "start": "2025-12-17 20:34:40.884642", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010794", "end": "2025-12-17 20:35:14.359359", "msg": "", "rc": 0, "start": "2025-12-17 20:35:14.348565", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011590", "end": "2025-12-17 20:35:14.397967", "msg": "", "rc": 0, "start": "2025-12-17 20:35:14.386377", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005593", "end": "2025-12-17 20:35:14.618163", "msg": "", "rc": 0, "start": "2025-12-17 20:35:14.612570", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004671", "end": "2025-12-17 20:34:50.706979", "msg": "", "rc": 0, "start": "2025-12-17 20:34:50.702308", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.008599", "end": "2025-12-17 20:34:44.091068", "msg": "", "rc": 0, "start": "2025-12-17 20:34:44.082469", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005494", "end": "2025-12-17 17:35:14.865732", "msg": "", "rc": 0, "start": "2025-12-17 17:35:14.860238", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005307", "end": "2025-12-17 20:35:15.045263", "msg": "", "rc": 0, "start": "2025-12-17 20:35:15.039956", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025447", "end": "2025-12-17 20:35:15.003947", "msg": "", "rc": 0, "start": "2025-12-17 20:35:14.978500", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.007223", "end": "2025-12-17 20:35:15.411077", "msg": "", "rc": 0, "start": "2025-12-17 20:35:15.403854", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004227", "end": "2025-12-17 20:35:15.557847", "msg": "", "rc": 0, "start": "2025-12-17 20:35:15.553620", "stderr": "", "stderr_lines": [], "stdout": "78.1%", "stdout_lines": ["78.1%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004284", "end": "2025-12-17 20:35:15.560281", "msg": "", "rc": 0, "start": "2025-12-17 20:35:15.555997", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004713", "end": "2025-12-17 20:35:15.584678", "msg": "", "rc": 0, "start": "2025-12-17 20:35:15.579965", "stderr": "", "stderr_lines": [], "stdout": "49.3%", "stdout_lines": ["49.3%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005429", "end": "2025-12-17 20:35:15.608393", "msg": "", "rc": 0, "start": "2025-12-17 20:35:15.602964", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005884", "end": "2025-12-17 20:35:15.634028", "msg": "", "rc": 0, "start": "2025-12-17 20:35:15.628144", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003583", "end": "2025-12-17 20:34:49.328984", "msg": "", "rc": 0, "start": "2025-12-17 20:34:49.325401", "stderr": "", "stderr_lines": [], "stdout": "70.8%", "stdout_lines": ["70.8%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005831", "end": "2025-12-17 20:34:42.814039", "msg": "", "rc": 0, "start": "2025-12-17 20:34:42.808208", "stderr": "", "stderr_lines": [], "stdout": "68.1%", "stdout_lines": ["68.1%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011006", "end": "2025-12-17 20:35:16.244638", "msg": "", "rc": 0, "start": "2025-12-17 20:35:16.233632", "stderr": "", "stderr_lines": [], "stdout": "6.7%", "stdout_lines": ["6.7%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011893", "end": "2025-12-17 20:35:16.282546", "msg": "", "rc": 0, "start": "2025-12-17 20:35:16.270653", "stderr": "", "stderr_lines": [], "stdout": "12.8%", "stdout_lines": ["12.8%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006788", "end": "2025-12-17 20:35:16.555465", "msg": "", "rc": 0, "start": "2025-12-17 20:35:16.548677", "stderr": "", "stderr_lines": [], "stdout": "35.7%", "stdout_lines": ["35.7%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004289", "end": "2025-12-17 20:34:52.593647", "msg": "", "rc": 0, "start": "2025-12-17 20:34:52.589358", "stderr": "", "stderr_lines": [], "stdout": "60.9%", "stdout_lines": ["60.9%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003980", "end": "2025-12-17 20:34:45.980749", "msg": "", "rc": 0, "start": "2025-12-17 20:34:45.976769", "stderr": "", "stderr_lines": [], "stdout": "27.2%", "stdout_lines": ["27.2%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005133", "end": "2025-12-17 17:35:16.741876", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 17:35:16.736743", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005547", "end": "2025-12-17 20:35:16.984070", "msg": "", "rc": 0, "start": "2025-12-17 20:35:16.978523", "stderr": "", "stderr_lines": [], "stdout": "13.8%", "stdout_lines": ["13.8%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.007165", "end": "2025-12-17 20:35:17.334769", "msg": "", "rc": 0, "start": "2025-12-17 20:35:17.327604", "stderr": "", "stderr_lines": [], "stdout": "12.4%", "stdout_lines": ["12.4%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.026206", "end": "2025-12-17 20:35:16.961277", "msg": "", "rc": 0, "start": "2025-12-17 20:35:16.935071", "stderr": "", "stderr_lines": [], "stdout": "20.3%", "stdout_lines": ["20.3%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005219", "end": "2025-12-17 20:35:17.478628", "msg": "", "rc": 0, "start": "2025-12-17 20:35:17.473409", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005035", "end": "2025-12-17 20:35:17.490012", "msg": "", "rc": 0, "start": "2025-12-17 20:35:17.484977", "stderr": "", "stderr_lines": [], "stdout": "47.0°C", "stdout_lines": ["47.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003052", "end": "2025-12-17 20:35:17.521383", "msg": "", "rc": 0, "start": "2025-12-17 20:35:17.518331", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005550", "end": "2025-12-17 20:35:17.530813", "msg": "", "rc": 0, "start": "2025-12-17 20:35:17.525263", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006153", "end": "2025-12-17 20:35:17.559027", "msg": "", "rc": 0, "start": "2025-12-17 20:35:17.552874", "stderr": "", "stderr_lines": [], "stdout": "52.5°C", "stdout_lines": ["52.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003298", "end": "2025-12-17 20:34:51.255310", "msg": "", "rc": 0, "start": "2025-12-17 20:34:51.252012", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003056", "end": "2025-12-17 20:34:44.715238", "msg": "", "rc": 0, "start": "2025-12-17 20:34:44.712182", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011850", "end": "2025-12-17 20:35:18.188696", "msg": "", "rc": 0, "start": "2025-12-17 20:35:18.176846", "stderr": "", "stderr_lines": [], "stdout": "31.2°C", "stdout_lines": ["31.2°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013021", "end": "2025-12-17 20:35:18.195289", "msg": "", "rc": 0, "start": "2025-12-17 20:35:18.182268", "stderr": "", "stderr_lines": [], "stdout": "37.0°C", "stdout_lines": ["37.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003195", "end": "2025-12-17 20:35:18.493907", "msg": "", "rc": 0, "start": "2025-12-17 20:35:18.490712", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002998", "end": "2025-12-17 20:34:47.890502", "msg": "", "rc": 0, "start": "2025-12-17 20:34:47.887504", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003824", "end": "2025-12-17 17:35:18.660155", "msg": "", "rc": 0, "start": "2025-12-17 17:35:18.656331", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002458", "end": "2025-12-17 20:34:54.547217", "msg": "", "rc": 0, "start": "2025-12-17 20:34:54.544759", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002920", "end": "2025-12-17 20:35:18.929819", "msg": "", "rc": 0, "start": "2025-12-17 20:35:18.926899", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004399", "end": "2025-12-17 20:35:19.263215", "msg": "", "rc": 0, "start": "2025-12-17 20:35:19.258816", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028358", "end": "2025-12-17 20:35:18.867896", "msg": "", "rc": 0, "start": "2025-12-17 20:35:18.839538", "stderr": "", "stderr_lines": [], "stdout": "35.4°C", "stdout_lines": ["35.4°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004072", "end": "2025-12-17 20:35:19.395658", "msg": "", "rc": 0, "start": "2025-12-17 20:35:19.391586", "stderr": "", "stderr_lines": [], "stdout": "0.11", "stdout_lines": ["0.11"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004212", "end": "2025-12-17 20:35:19.403786", "msg": "", "rc": 0, "start": "2025-12-17 20:35:19.399574", "stderr": "", "stderr_lines": [], "stdout": "0.40", "stdout_lines": ["0.40"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004817", "end": "2025-12-17 20:35:19.410264", "msg": "", "rc": 0, "start": "2025-12-17 20:35:19.405447", "stderr": "", "stderr_lines": [], "stdout": "1.20", "stdout_lines": ["1.20"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005305", "end": "2025-12-17 20:35:19.443915", "msg": "", "rc": 0, "start": "2025-12-17 20:35:19.438610", "stderr": "", "stderr_lines": [], "stdout": "0.17", "stdout_lines": ["0.17"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005700", "end": "2025-12-17 20:35:19.457072", "msg": "", "rc": 0, "start": "2025-12-17 20:35:19.451372", "stderr": "", "stderr_lines": [], "stdout": "0.84", "stdout_lines": ["0.84"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004558", "end": "2025-12-17 20:34:53.151063", "msg": "", "rc": 0, "start": "2025-12-17 20:34:53.146505", "stderr": "", "stderr_lines": [], "stdout": "0.12", "stdout_lines": ["0.12"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005088", "end": "2025-12-17 20:34:46.613571", "msg": "", "rc": 0, "start": "2025-12-17 20:34:46.608483", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010369", "end": "2025-12-17 20:35:20.210809", "msg": "", "rc": 0, "start": "2025-12-17 20:35:20.200440", "stderr": "", "stderr_lines": [], "stdout": "0.16", "stdout_lines": ["0.16"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011191", "end": "2025-12-17 20:35:20.227269", "msg": "", "rc": 0, "start": "2025-12-17 20:35:20.216078", "stderr": "", "stderr_lines": [], "stdout": "0.27", "stdout_lines": ["0.27"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005694", "end": "2025-12-17 20:35:20.375681", "msg": "", "rc": 0, "start": "2025-12-17 20:35:20.369987", "stderr": "", "stderr_lines": [], "stdout": "0.09", "stdout_lines": ["0.09"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004825", "end": "2025-12-17 20:34:49.785646", "msg": "", "rc": 0, "start": "2025-12-17 20:34:49.780821", "stderr": "", "stderr_lines": [], "stdout": "0.41", "stdout_lines": ["0.41"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005750", "end": "2025-12-17 17:35:20.687057", "msg": "", "rc": 0, "start": "2025-12-17 17:35:20.681307", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004270", "end": "2025-12-17 20:34:56.551310", "msg": "", "rc": 0, "start": "2025-12-17 20:34:56.547040", "stderr": "", "stderr_lines": [], "stdout": "0.51", "stdout_lines": ["0.51"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005605", "end": "2025-12-17 20:35:20.804074", "msg": "", "rc": 0, "start": "2025-12-17 20:35:20.798469", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.007127", "end": "2025-12-17 20:35:21.244837", "msg": "", "rc": 0, "start": "2025-12-17 20:35:21.237710", "stderr": "", "stderr_lines": [], "stdout": "1.26", "stdout_lines": ["1.26"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.023927", "end": "2025-12-17 20:35:20.796781", "msg": "", "rc": 0, "start": "2025-12-17 20:35:20.772854", "stderr": "", "stderr_lines": [], "stdout": "0.40", "stdout_lines": ["0.40"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:35:11 up 3 days, 10:07, 1 user, load average: 0.30, 0.26, 0.19\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.40\nCPU Temp: 47.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:35:11 up 22 days, 7:26, 1 user, load average: 0.03, 0.09, 0.08\nDisk Usage: 23%\nMemory Usage: 78.1%\nCPU Load: 0.11\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:35:11 up 22 days, 7:46, 1 user, load average: 1.22, 0.90, 0.76\nDisk Usage: 14%\nMemory Usage: 49.3%\nCPU Load: 1.20\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:35:11 up 22 days, 8:59, 1 user, load average: 0.47, 0.54, 0.61\nDisk Usage: 14%\nMemory Usage: 59.7%\nCPU Load: 0.84\nCPU Temp: 52.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:35:11 up 22 days, 9:45, 1 user, load average: 0.21, 0.08, 0.05\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.17\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:35:13 up 15 days, 10:01, 1 user, load average: 0.20, 0.14, 0.10\nDisk Usage: 21%\nMemory Usage: 20.3%\nCPU Load: 0.40\nCPU Temp: 35.4°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:35:12 up 194 days, 12:08, 1 user, load average: 0.23, 0.26, 0.26\nDisk Usage: 6%\nMemory Usage: 12.8%\nCPU Load: 0.27\nCPU Temp: 37.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:35:12 up 194 days, 12:08, 1 user, load average: 0.19, 0.19, 0.15\nDisk Usage: 3%\nMemory Usage: 6.7%\nCPU Load: 0.16\nCPU Temp: 31.2°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:34:45 up 11 days, 8:24, 0 user, load average: 0.04, 0.09, 0.09\nDisk Usage: 48%\nMemory Usage: 70.8%\nCPU Load: 0.12\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:34:38 up 18 days, 4:36, 0 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 25%\nMemory Usage: 68.1%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:34:42 up 20 days, 23:28, 0 user, load average: 0.30, 0.35, 0.41\nDisk Usage: 28%\nMemory Usage: 27.2%\nCPU Load: 0.41\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:34:48 up 17 days, 9:50, 0 user, load average: 0.60, 0.64, 0.41\nDisk Usage: 76%\nMemory Usage: 60.9%\nCPU Load: 0.51\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:35:12 up 3 days, 10:06, 1 user, load average: 0.11, 0.05, 0.01\nDisk Usage: 1%\nMemory Usage: 35.7%\nCPU Load: 0.09\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 5:35PM up 22 days, 7:25, 1 user, load averages: 0.15, 0.24, 0.23\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:35:13 up 3 days, 10:06, 1 user, load average: 0.00, 0.05, 0.04\nDisk Usage: 79%\nMemory Usage: 13.8%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:35:13 up 41 min, 1 user, load average: 1.22, 1.25, 1.15\nDisk Usage: 1%\nMemory Usage: 12.4%\nCPU Load: 1.26\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T01:35:22.191225+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_014022_e81b20_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_014022_e81b20_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..0c09528 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_014022_e81b20_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `3ad1096e7748415da65ea78365e664a7` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T01:40:00.003489+00:00 | +| **Fin** | 2025-12-18T01:40:22.881942+00:00 | +| **Durée** | 22.9s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [dev.prod.home] +ok: [hp.truenas.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003737", "end": "2025-12-17 20:40:12.022401", "msg": "", "rc": 0, "start": "2025-12-17 20:40:12.018664", "stderr": "", "stderr_lines": [], "stdout": " 20:40:12 up 22 days, 9:50, 1 user, load average: 0.00, 0.02, 0.02", "stdout_lines": [" 20:40:12 up 22 days, 9:50, 1 user, load average: 0.00, 0.02, 0.02"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003055", "end": "2025-12-17 20:40:12.049843", "msg": "", "rc": 0, "start": "2025-12-17 20:40:12.046788", "stderr": "", "stderr_lines": [], "stdout": " 20:40:12 up 3 days, 10:12, 1 user, load average: 0.79, 0.59, 0.35", "stdout_lines": [" 20:40:12 up 3 days, 10:12, 1 user, load average: 0.79, 0.59, 0.35"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003393", "end": "2025-12-17 20:40:12.074556", "msg": "", "rc": 0, "start": "2025-12-17 20:40:12.071163", "stderr": "", "stderr_lines": [], "stdout": " 20:40:12 up 22 days, 7:51, 1 user, load average: 0.80, 0.85, 0.79", "stdout_lines": [" 20:40:12 up 22 days, 7:51, 1 user, load average: 0.80, 0.85, 0.79"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008450", "end": "2025-12-17 20:40:12.715426", "msg": "", "rc": 0, "start": "2025-12-17 20:40:12.706976", "stderr": "", "stderr_lines": [], "stdout": " 20:40:12 up 194 days, 12:13, 1 user, load average: 0.24, 0.17, 0.15", "stdout_lines": [" 20:40:12 up 194 days, 12:13, 1 user, load average: 0.24, 0.17, 0.15"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009195", "end": "2025-12-17 20:40:12.753332", "msg": "", "rc": 0, "start": "2025-12-17 20:40:12.744137", "stderr": "", "stderr_lines": [], "stdout": " 20:40:12 up 194 days, 12:13, 1 user, load average: 0.26, 0.21, 0.23", "stdout_lines": [" 20:40:12 up 194 days, 12:13, 1 user, load average: 0.26, 0.21, 0.23"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004387", "end": "2025-12-17 20:40:13.006405", "msg": "", "rc": 0, "start": "2025-12-17 20:40:12.002018", "stderr": "", "stderr_lines": [], "stdout": " 20:40:12 up 22 days, 7:31, 1 user, load average: 0.00, 0.05, 0.07", "stdout_lines": [" 20:40:12 up 22 days, 7:31, 1 user, load average: 0.00, 0.05, 0.07"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.005148", "end": "2025-12-17 20:40:13.039476", "msg": "", "rc": 0, "start": "2025-12-17 20:40:12.034328", "stderr": "", "stderr_lines": [], "stdout": " 20:40:12 up 22 days, 9:04, 1 user, load average: 0.82, 0.65, 0.64", "stdout_lines": [" 20:40:12 up 22 days, 9:04, 1 user, load average: 0.82, 0.65, 0.64"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003636", "end": "2025-12-17 20:39:46.436651", "msg": "", "rc": 0, "start": "2025-12-17 20:39:46.433015", "stderr": "", "stderr_lines": [], "stdout": " 20:39:46 up 11 days, 8:29, 0 user, load average: 0.09, 0.13, 0.10", "stdout_lines": [" 20:39:46 up 11 days, 8:29, 0 user, load average: 0.09, 0.13, 0.10"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003506", "end": "2025-12-17 20:39:39.949489", "msg": "", "rc": 0, "start": "2025-12-17 20:39:39.945983", "stderr": "", "stderr_lines": [], "stdout": " 20:39:39 up 18 days, 4:41, 0 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 20:39:39 up 18 days, 4:41, 0 user, load average: 0.00, 0.00, 0.00"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004833", "end": "2025-12-17 20:40:13.464927", "msg": "", "rc": 0, "start": "2025-12-17 20:40:13.460094", "stderr": "", "stderr_lines": [], "stdout": " 20:40:13 up 3 days, 10:11, 1 user, load average: 0.01, 0.03, 0.00", "stdout_lines": [" 20:40:13 up 3 days, 10:11, 1 user, load average: 0.01, 0.03, 0.00"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019496", "end": "2025-12-17 20:40:13.394454", "msg": "", "rc": 0, "start": "2025-12-17 20:40:13.374958", "stderr": "", "stderr_lines": [], "stdout": " 20:40:13 up 15 days, 10:06, 1 user, load average: 0.08, 0.08, 0.08", "stdout_lines": [" 20:40:13 up 15 days, 10:06, 1 user, load average: 0.08, 0.08, 0.08"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003085", "end": "2025-12-17 20:39:42.813339", "msg": "", "rc": 0, "start": "2025-12-17 20:39:42.810254", "stderr": "", "stderr_lines": [], "stdout": " 20:39:42 up 20 days, 23:34, 0 user, load average: 0.39, 0.36, 0.39", "stdout_lines": [" 20:39:42 up 20 days, 23:34, 0 user, load average: 0.39, 0.36, 0.39"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002819", "end": "2025-12-17 20:39:49.503594", "msg": "", "rc": 0, "start": "2025-12-17 20:39:49.500775", "stderr": "", "stderr_lines": [], "stdout": " 20:39:49 up 17 days, 9:55, 0 user, load average: 0.80, 0.55, 0.42", "stdout_lines": [" 20:39:49 up 17 days, 9:55, 0 user, load average: 0.80, 0.55, 0.42"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004179", "end": "2025-12-17 17:40:13.761710", "msg": "", "rc": 0, "start": "2025-12-17 17:40:13.757531", "stderr": "", "stderr_lines": [], "stdout": " 5:40PM up 22 days, 7:30, 1 user, load averages: 0.38, 0.25, 0.23", "stdout_lines": [" 5:40PM up 22 days, 7:30, 1 user, load averages: 0.38, 0.25, 0.23"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.007579", "end": "2025-12-17 20:40:14.304233", "msg": "", "rc": 0, "start": "2025-12-17 20:40:14.296654", "stderr": "", "stderr_lines": [], "stdout": " 20:40:14 up 46 min, 1 user, load average: 1.62, 1.16, 1.13", "stdout_lines": [" 20:40:14 up 46 min, 1 user, load average: 1.62, 1.16, 1.13"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003829", "end": "2025-12-17 20:40:13.893133", "msg": "", "rc": 0, "start": "2025-12-17 20:40:13.889304", "stderr": "", "stderr_lines": [], "stdout": " 20:40:13 up 3 days, 10:11, 1 user, load average: 0.00, 0.03, 0.02", "stdout_lines": [" 20:40:13 up 3 days, 10:11, 1 user, load average: 0.00, 0.03, 0.02"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004292", "end": "2025-12-17 20:40:14.288353", "msg": "", "rc": 0, "start": "2025-12-17 20:40:14.284061", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004065", "end": "2025-12-17 20:40:14.307537", "msg": "", "rc": 0, "start": "2025-12-17 20:40:14.303472", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004530", "end": "2025-12-17 20:40:14.313097", "msg": "", "rc": 0, "start": "2025-12-17 20:40:14.308567", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005075", "end": "2025-12-17 20:40:14.349472", "msg": "", "rc": 0, "start": "2025-12-17 20:40:14.344397", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.008303", "end": "2025-12-17 20:40:14.363481", "msg": "", "rc": 0, "start": "2025-12-17 20:40:14.355178", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005965", "end": "2025-12-17 20:39:48.048805", "msg": "", "rc": 0, "start": "2025-12-17 20:39:48.042840", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.012380", "end": "2025-12-17 20:39:41.550295", "msg": "", "rc": 0, "start": "2025-12-17 20:39:41.537915", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010597", "end": "2025-12-17 20:40:15.040560", "msg": "", "rc": 0, "start": "2025-12-17 20:40:15.029963", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011553", "end": "2025-12-17 20:40:15.093633", "msg": "", "rc": 0, "start": "2025-12-17 20:40:15.082080", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005803", "end": "2025-12-17 20:40:15.270159", "msg": "", "rc": 0, "start": "2025-12-17 20:40:15.264356", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005140", "end": "2025-12-17 20:39:51.387624", "msg": "", "rc": 0, "start": "2025-12-17 20:39:51.382484", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.007235", "end": "2025-12-17 20:39:44.766792", "msg": "", "rc": 0, "start": "2025-12-17 20:39:44.759557", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006233", "end": "2025-12-17 17:40:15.552906", "msg": "", "rc": 0, "start": "2025-12-17 17:40:15.546673", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005778", "end": "2025-12-17 20:40:15.695616", "msg": "", "rc": 0, "start": "2025-12-17 20:40:15.689838", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.020075", "end": "2025-12-17 20:40:16.369722", "msg": "", "rc": 0, "start": "2025-12-17 20:40:16.349647", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.026763", "end": "2025-12-17 20:40:15.866080", "msg": "", "rc": 0, "start": "2025-12-17 20:40:15.839317", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004227", "end": "2025-12-17 20:40:16.391038", "msg": "", "rc": 0, "start": "2025-12-17 20:40:16.386811", "stderr": "", "stderr_lines": [], "stdout": "78.1%", "stdout_lines": ["78.1%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004321", "end": "2025-12-17 20:40:16.407657", "msg": "", "rc": 0, "start": "2025-12-17 20:40:16.403336", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004676", "end": "2025-12-17 20:40:16.430526", "msg": "", "rc": 0, "start": "2025-12-17 20:40:16.425850", "stderr": "", "stderr_lines": [], "stdout": "49.4%", "stdout_lines": ["49.4%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004660", "end": "2025-12-17 20:40:16.445438", "msg": "", "rc": 0, "start": "2025-12-17 20:40:16.440778", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006071", "end": "2025-12-17 20:40:16.465688", "msg": "", "rc": 0, "start": "2025-12-17 20:40:16.459617", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003971", "end": "2025-12-17 20:39:50.143176", "msg": "", "rc": 0, "start": "2025-12-17 20:39:50.139205", "stderr": "", "stderr_lines": [], "stdout": "70.6%", "stdout_lines": ["70.6%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005314", "end": "2025-12-17 20:39:43.637826", "msg": "", "rc": 0, "start": "2025-12-17 20:39:43.632512", "stderr": "", "stderr_lines": [], "stdout": "68.1%", "stdout_lines": ["68.1%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010754", "end": "2025-12-17 20:40:17.086830", "msg": "", "rc": 0, "start": "2025-12-17 20:40:17.076076", "stderr": "", "stderr_lines": [], "stdout": "6.9%", "stdout_lines": ["6.9%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011788", "end": "2025-12-17 20:40:17.115660", "msg": "", "rc": 0, "start": "2025-12-17 20:40:17.103872", "stderr": "", "stderr_lines": [], "stdout": "12.9%", "stdout_lines": ["12.9%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005964", "end": "2025-12-17 20:40:17.362997", "msg": "", "rc": 0, "start": "2025-12-17 20:40:17.357033", "stderr": "", "stderr_lines": [], "stdout": "35.8%", "stdout_lines": ["35.8%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004071", "end": "2025-12-17 20:39:53.444907", "msg": "", "rc": 0, "start": "2025-12-17 20:39:53.440836", "stderr": "", "stderr_lines": [], "stdout": "58.8%", "stdout_lines": ["58.8%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006003", "end": "2025-12-17 17:40:17.593146", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 17:40:17.587143", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.009045", "end": "2025-12-17 20:39:46.850385", "msg": "", "rc": 0, "start": "2025-12-17 20:39:46.841340", "stderr": "", "stderr_lines": [], "stdout": "27.1%", "stdout_lines": ["27.1%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005478", "end": "2025-12-17 20:40:17.777756", "msg": "", "rc": 0, "start": "2025-12-17 20:40:17.772278", "stderr": "", "stderr_lines": [], "stdout": "13.7%", "stdout_lines": ["13.7%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.009190", "end": "2025-12-17 20:40:17.913627", "msg": "", "rc": 0, "start": "2025-12-17 20:40:17.904437", "stderr": "", "stderr_lines": [], "stdout": "12.1%", "stdout_lines": ["12.1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.027142", "end": "2025-12-17 20:40:18.065055", "msg": "", "rc": 0, "start": "2025-12-17 20:40:18.037913", "stderr": "", "stderr_lines": [], "stdout": "20.6%", "stdout_lines": ["20.6%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005555", "end": "2025-12-17 20:40:18.598348", "msg": "", "rc": 0, "start": "2025-12-17 20:40:18.592793", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005750", "end": "2025-12-17 20:40:18.627225", "msg": "", "rc": 0, "start": "2025-12-17 20:40:18.621475", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005030", "end": "2025-12-17 20:40:18.650618", "msg": "", "rc": 0, "start": "2025-12-17 20:40:18.645588", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003232", "end": "2025-12-17 20:40:18.657446", "msg": "", "rc": 0, "start": "2025-12-17 20:40:18.654214", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006757", "end": "2025-12-17 20:40:18.669389", "msg": "", "rc": 0, "start": "2025-12-17 20:40:18.662632", "stderr": "", "stderr_lines": [], "stdout": "52.5°C", "stdout_lines": ["52.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003192", "end": "2025-12-17 20:39:52.389975", "msg": "", "rc": 0, "start": "2025-12-17 20:39:52.386783", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003386", "end": "2025-12-17 20:39:45.829188", "msg": "", "rc": 0, "start": "2025-12-17 20:39:45.825802", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011727", "end": "2025-12-17 20:40:19.312295", "msg": "", "rc": 0, "start": "2025-12-17 20:40:19.300568", "stderr": "", "stderr_lines": [], "stdout": "31.6°C", "stdout_lines": ["31.6°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012816", "end": "2025-12-17 20:40:19.347005", "msg": "", "rc": 0, "start": "2025-12-17 20:40:19.334189", "stderr": "", "stderr_lines": [], "stdout": "35.0°C", "stdout_lines": ["35.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003307", "end": "2025-12-17 20:40:19.595443", "msg": "", "rc": 0, "start": "2025-12-17 20:40:19.592136", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002781", "end": "2025-12-17 20:39:48.999515", "msg": "", "rc": 0, "start": "2025-12-17 20:39:48.996734", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003747", "end": "2025-12-17 17:40:19.808762", "msg": "", "rc": 0, "start": "2025-12-17 17:40:19.805015", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002729", "end": "2025-12-17 20:39:55.683347", "msg": "", "rc": 0, "start": "2025-12-17 20:39:55.680618", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002971", "end": "2025-12-17 20:40:19.998954", "msg": "", "rc": 0, "start": "2025-12-17 20:40:19.995983", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003818", "end": "2025-12-17 20:40:20.104528", "msg": "", "rc": 0, "start": "2025-12-17 20:40:20.100710", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028883", "end": "2025-12-17 20:40:20.011310", "msg": "", "rc": 0, "start": "2025-12-17 20:40:19.982427", "stderr": "", "stderr_lines": [], "stdout": "35.4°C", "stdout_lines": ["35.4°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004119", "end": "2025-12-17 20:40:20.550650", "msg": "", "rc": 0, "start": "2025-12-17 20:40:20.546531", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.003983", "end": "2025-12-17 20:40:20.560565", "msg": "", "rc": 0, "start": "2025-12-17 20:40:20.556582", "stderr": "", "stderr_lines": [], "stdout": "1.06", "stdout_lines": ["1.06"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004967", "end": "2025-12-17 20:40:20.556659", "msg": "", "rc": 0, "start": "2025-12-17 20:40:20.551692", "stderr": "", "stderr_lines": [], "stdout": "0.97", "stdout_lines": ["0.97"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004749", "end": "2025-12-17 20:40:20.582558", "msg": "", "rc": 0, "start": "2025-12-17 20:40:20.577809", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005571", "end": "2025-12-17 20:40:20.600629", "msg": "", "rc": 0, "start": "2025-12-17 20:40:20.595058", "stderr": "", "stderr_lines": [], "stdout": "0.77", "stdout_lines": ["0.77"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004633", "end": "2025-12-17 20:39:54.307442", "msg": "", "rc": 0, "start": "2025-12-17 20:39:54.302809", "stderr": "", "stderr_lines": [], "stdout": "0.16", "stdout_lines": ["0.16"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005411", "end": "2025-12-17 20:39:47.746227", "msg": "", "rc": 0, "start": "2025-12-17 20:39:47.740816", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.009994", "end": "2025-12-17 20:40:21.351060", "msg": "", "rc": 0, "start": "2025-12-17 20:40:21.341066", "stderr": "", "stderr_lines": [], "stdout": "0.20", "stdout_lines": ["0.20"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011063", "end": "2025-12-17 20:40:21.381478", "msg": "", "rc": 0, "start": "2025-12-17 20:40:21.370415", "stderr": "", "stderr_lines": [], "stdout": "0.29", "stdout_lines": ["0.29"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005559", "end": "2025-12-17 20:40:21.531752", "msg": "", "rc": 0, "start": "2025-12-17 20:40:21.526193", "stderr": "", "stderr_lines": [], "stdout": "0.01", "stdout_lines": ["0.01"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004832", "end": "2025-12-17 20:39:50.924572", "msg": "", "rc": 0, "start": "2025-12-17 20:39:50.919740", "stderr": "", "stderr_lines": [], "stdout": "0.48", "stdout_lines": ["0.48"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006054", "end": "2025-12-17 17:40:21.835853", "msg": "", "rc": 0, "start": "2025-12-17 17:40:21.829799", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004236", "end": "2025-12-17 20:39:57.694017", "msg": "", "rc": 0, "start": "2025-12-17 20:39:57.689781", "stderr": "", "stderr_lines": [], "stdout": "0.68", "stdout_lines": ["0.68"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005300", "end": "2025-12-17 20:40:21.944965", "msg": "", "rc": 0, "start": "2025-12-17 20:40:21.939665", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.007284", "end": "2025-12-17 20:40:22.120214", "msg": "", "rc": 0, "start": "2025-12-17 20:40:22.112930", "stderr": "", "stderr_lines": [], "stdout": "1.68", "stdout_lines": ["1.68"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024360", "end": "2025-12-17 20:40:21.951752", "msg": "", "rc": 0, "start": "2025-12-17 20:40:21.927392", "stderr": "", "stderr_lines": [], "stdout": "0.16", "stdout_lines": ["0.16"]} + +TASK [Display health status] *************************************************** +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:40:12 up 22 days, 7:31, 1 user, load average: 0.00, 0.05, 0.07\nDisk Usage: 23%\nMemory Usage: 78.1%\nCPU Load: 0.00\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:40:12 up 3 days, 10:12, 1 user, load average: 0.79, 0.59, 0.35\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 1.06\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:40:12 up 22 days, 7:51, 1 user, load average: 0.80, 0.85, 0.79\nDisk Usage: 14%\nMemory Usage: 49.4%\nCPU Load: 0.97\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:40:12 up 22 days, 9:04, 1 user, load average: 0.82, 0.65, 0.64\nDisk Usage: 14%\nMemory Usage: 59.7%\nCPU Load: 0.77\nCPU Temp: 52.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:40:12 up 22 days, 9:50, 1 user, load average: 0.00, 0.02, 0.02\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:40:13 up 15 days, 10:06, 1 user, load average: 0.08, 0.08, 0.08\nDisk Usage: 21%\nMemory Usage: 20.6%\nCPU Load: 0.16\nCPU Temp: 35.4°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:40:12 up 194 days, 12:13, 1 user, load average: 0.26, 0.21, 0.23\nDisk Usage: 6%\nMemory Usage: 12.9%\nCPU Load: 0.29\nCPU Temp: 35.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:40:12 up 194 days, 12:13, 1 user, load average: 0.24, 0.17, 0.15\nDisk Usage: 3%\nMemory Usage: 6.9%\nCPU Load: 0.20\nCPU Temp: 31.6°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:39:46 up 11 days, 8:29, 0 user, load average: 0.09, 0.13, 0.10\nDisk Usage: 48%\nMemory Usage: 70.6%\nCPU Load: 0.16\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:39:39 up 18 days, 4:41, 0 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 25%\nMemory Usage: 68.1%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:40:13 up 3 days, 10:11, 1 user, load average: 0.01, 0.03, 0.00\nDisk Usage: 1%\nMemory Usage: 35.8%\nCPU Load: 0.01\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:39:42 up 20 days, 23:34, 0 user, load average: 0.39, 0.36, 0.39\nDisk Usage: 28%\nMemory Usage: 27.1%\nCPU Load: 0.48\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:39:49 up 17 days, 9:55, 0 user, load average: 0.80, 0.55, 0.42\nDisk Usage: 76%\nMemory Usage: 58.8%\nCPU Load: 0.68\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 5:40PM up 22 days, 7:30, 1 user, load averages: 0.38, 0.25, 0.23\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:40:13 up 3 days, 10:11, 1 user, load average: 0.00, 0.03, 0.02\nDisk Usage: 79%\nMemory Usage: 13.7%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:40:14 up 46 min, 1 user, load average: 1.62, 1.16, 1.13\nDisk Usage: 1%\nMemory Usage: 12.1%\nCPU Load: 1.68\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T01:40:22.941371+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_014524_0f3032_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_014524_0f3032_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..d753056 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_014524_0f3032_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `ccbf99ddb18944d18fbe97d95c425a3e` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T01:45:00.000619+00:00 | +| **Fin** | 2025-12-18T01:45:24.496993+00:00 | +| **Durée** | 24.5s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [orangepi.pc.home] +ok: [localhost] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003689", "end": "2025-12-17 20:45:13.027357", "msg": "", "rc": 0, "start": "2025-12-17 20:45:13.023668", "stderr": "", "stderr_lines": [], "stdout": " 20:45:13 up 22 days, 7:36, 1 user, load average: 0.25, 0.11, 0.09", "stdout_lines": [" 20:45:13 up 22 days, 7:36, 1 user, load average: 0.25, 0.11, 0.09"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003317", "end": "2025-12-17 20:45:13.033755", "msg": "", "rc": 0, "start": "2025-12-17 20:45:13.030438", "stderr": "", "stderr_lines": [], "stdout": " 20:45:13 up 22 days, 7:56, 1 user, load average: 0.91, 0.81, 0.79", "stdout_lines": [" 20:45:13 up 22 days, 7:56, 1 user, load average: 0.91, 0.81, 0.79"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003873", "end": "2025-12-17 20:45:13.040598", "msg": "", "rc": 0, "start": "2025-12-17 20:45:13.036725", "stderr": "", "stderr_lines": [], "stdout": " 20:45:13 up 22 days, 9:55, 1 user, load average: 0.00, 0.01, 0.00", "stdout_lines": [" 20:45:13 up 22 days, 9:55, 1 user, load average: 0.00, 0.01, 0.00"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002842", "end": "2025-12-17 20:45:13.071614", "msg": "", "rc": 0, "start": "2025-12-17 20:45:13.068772", "stderr": "", "stderr_lines": [], "stdout": " 20:45:13 up 3 days, 10:17, 1 user, load average: 0.87, 0.79, 0.50", "stdout_lines": [" 20:45:13 up 3 days, 10:17, 1 user, load average: 0.87, 0.79, 0.50"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002909", "end": "2025-12-17 20:44:46.764996", "msg": "", "rc": 0, "start": "2025-12-17 20:44:46.762087", "stderr": "", "stderr_lines": [], "stdout": " 20:44:46 up 11 days, 8:34, 0 user, load average: 0.16, 0.12, 0.09", "stdout_lines": [" 20:44:46 up 11 days, 8:34, 0 user, load average: 0.16, 0.12, 0.09"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008413", "end": "2025-12-17 20:45:13.697230", "msg": "", "rc": 0, "start": "2025-12-17 20:45:13.688817", "stderr": "", "stderr_lines": [], "stdout": " 20:45:13 up 194 days, 12:18, 1 user, load average: 0.28, 0.17, 0.14", "stdout_lines": [" 20:45:13 up 194 days, 12:18, 1 user, load average: 0.28, 0.17, 0.14"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009465", "end": "2025-12-17 20:45:13.736723", "msg": "", "rc": 0, "start": "2025-12-17 20:45:13.727258", "stderr": "", "stderr_lines": [], "stdout": " 20:45:13 up 194 days, 12:18, 1 user, load average: 0.08, 0.15, 0.20", "stdout_lines": [" 20:45:13 up 194 days, 12:18, 1 user, load average: 0.08, 0.15, 0.20"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004993", "end": "2025-12-17 20:45:14.062572", "msg": "", "rc": 0, "start": "2025-12-17 20:45:13.057579", "stderr": "", "stderr_lines": [], "stdout": " 20:45:13 up 22 days, 9:09, 1 user, load average: 0.61, 0.65, 0.64", "stdout_lines": [" 20:45:13 up 22 days, 9:09, 1 user, load average: 0.61, 0.65, 0.64"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.005519", "end": "2025-12-17 20:44:40.677042", "msg": "", "rc": 0, "start": "2025-12-17 20:44:40.671523", "stderr": "", "stderr_lines": [], "stdout": " 20:44:40 up 18 days, 4:46, 0 user, load average: 0.12, 0.04, 0.01", "stdout_lines": [" 20:44:40 up 18 days, 4:46, 0 user, load average: 0.12, 0.04, 0.01"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004870", "end": "2025-12-17 20:45:14.207514", "msg": "", "rc": 0, "start": "2025-12-17 20:45:14.202644", "stderr": "", "stderr_lines": [], "stdout": " 20:45:14 up 3 days, 10:16, 1 user, load average: 0.07, 0.02, 0.00", "stdout_lines": [" 20:45:14 up 3 days, 10:16, 1 user, load average: 0.07, 0.02, 0.00"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003201", "end": "2025-12-17 20:44:43.567282", "msg": "", "rc": 0, "start": "2025-12-17 20:44:43.564081", "stderr": "", "stderr_lines": [], "stdout": " 20:44:43 up 20 days, 23:39, 0 user, load average: 0.76, 0.46, 0.41", "stdout_lines": [" 20:44:43 up 20 days, 23:39, 0 user, load average: 0.76, 0.46, 0.41"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004176", "end": "2025-12-17 17:45:14.498500", "msg": "", "rc": 0, "start": "2025-12-17 17:45:14.494324", "stderr": "", "stderr_lines": [], "stdout": " 5:45PM up 22 days, 7:35, 1 user, load averages: 0.10, 0.19, 0.21", "stdout_lines": [" 5:45PM up 22 days, 7:35, 1 user, load averages: 0.10, 0.19, 0.21"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019556", "end": "2025-12-17 20:45:14.394743", "msg": "", "rc": 0, "start": "2025-12-17 20:45:14.375187", "stderr": "", "stderr_lines": [], "stdout": " 20:45:14 up 15 days, 10:11, 1 user, load average: 0.16, 0.08, 0.08", "stdout_lines": [" 20:45:14 up 15 days, 10:11, 1 user, load average: 0.16, 0.08, 0.08"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003937", "end": "2025-12-17 20:44:50.383556", "msg": "", "rc": 0, "start": "2025-12-17 20:44:50.379619", "stderr": "", "stderr_lines": [], "stdout": " 20:44:50 up 17 days, 10:00, 0 user, load average: 0.15, 0.49, 0.45", "stdout_lines": [" 20:44:50 up 17 days, 10:00, 0 user, load average: 0.15, 0.49, 0.45"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.007233", "end": "2025-12-17 20:45:14.824876", "msg": "", "rc": 0, "start": "2025-12-17 20:45:14.817643", "stderr": "", "stderr_lines": [], "stdout": " 20:45:14 up 51 min, 1 user, load average: 1.50, 1.25, 1.16", "stdout_lines": [" 20:45:14 up 51 min, 1 user, load average: 1.50, 1.25, 1.16"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003707", "end": "2025-12-17 20:45:14.615310", "msg": "", "rc": 0, "start": "2025-12-17 20:45:14.611603", "stderr": "", "stderr_lines": [], "stdout": " 20:45:14 up 3 days, 10:16, 1 user, load average: 0.00, 0.01, 0.00", "stdout_lines": [" 20:45:14 up 3 days, 10:16, 1 user, load average: 0.00, 0.01, 0.00"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004462", "end": "2025-12-17 20:45:15.014410", "msg": "", "rc": 0, "start": "2025-12-17 20:45:15.009948", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004091", "end": "2025-12-17 20:45:15.032764", "msg": "", "rc": 0, "start": "2025-12-17 20:45:15.028673", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004881", "end": "2025-12-17 20:45:15.046998", "msg": "", "rc": 0, "start": "2025-12-17 20:45:15.042117", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004762", "end": "2025-12-17 20:45:15.068842", "msg": "", "rc": 0, "start": "2025-12-17 20:45:15.064080", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.007380", "end": "2025-12-17 20:45:15.083348", "msg": "", "rc": 0, "start": "2025-12-17 20:45:15.075968", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004910", "end": "2025-12-17 20:44:48.875853", "msg": "", "rc": 0, "start": "2025-12-17 20:44:48.870943", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005452", "end": "2025-12-17 20:44:42.360635", "msg": "", "rc": 0, "start": "2025-12-17 20:44:42.355183", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010514", "end": "2025-12-17 20:45:15.871158", "msg": "", "rc": 0, "start": "2025-12-17 20:45:15.860644", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011834", "end": "2025-12-17 20:45:15.915775", "msg": "", "rc": 0, "start": "2025-12-17 20:45:15.903941", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005842", "end": "2025-12-17 20:45:16.100990", "msg": "", "rc": 0, "start": "2025-12-17 20:45:16.095148", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005303", "end": "2025-12-17 20:44:45.572507", "msg": "", "rc": 0, "start": "2025-12-17 20:44:45.567204", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005338", "end": "2025-12-17 17:45:16.370117", "msg": "", "rc": 0, "start": "2025-12-17 17:45:16.364779", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004667", "end": "2025-12-17 20:44:52.222529", "msg": "", "rc": 0, "start": "2025-12-17 20:44:52.217862", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005273", "end": "2025-12-17 20:45:16.570268", "msg": "", "rc": 0, "start": "2025-12-17 20:45:16.564995", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025660", "end": "2025-12-17 20:45:16.527420", "msg": "", "rc": 0, "start": "2025-12-17 20:45:16.501760", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.021463", "end": "2025-12-17 20:45:16.903559", "msg": "", "rc": 0, "start": "2025-12-17 20:45:16.882096", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004381", "end": "2025-12-17 20:45:17.079336", "msg": "", "rc": 0, "start": "2025-12-17 20:45:17.074955", "stderr": "", "stderr_lines": [], "stdout": "78.0%", "stdout_lines": ["78.0%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004218", "end": "2025-12-17 20:45:17.096362", "msg": "", "rc": 0, "start": "2025-12-17 20:45:17.092144", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004983", "end": "2025-12-17 20:45:17.123682", "msg": "", "rc": 0, "start": "2025-12-17 20:45:17.118699", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005421", "end": "2025-12-17 20:45:17.144022", "msg": "", "rc": 0, "start": "2025-12-17 20:45:17.138601", "stderr": "", "stderr_lines": [], "stdout": "49.4%", "stdout_lines": ["49.4%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006054", "end": "2025-12-17 20:45:17.155892", "msg": "", "rc": 0, "start": "2025-12-17 20:45:17.149838", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003651", "end": "2025-12-17 20:44:50.867238", "msg": "", "rc": 0, "start": "2025-12-17 20:44:50.863587", "stderr": "", "stderr_lines": [], "stdout": "70.8%", "stdout_lines": ["70.8%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.008464", "end": "2025-12-17 20:44:44.345629", "msg": "", "rc": 0, "start": "2025-12-17 20:44:44.337165", "stderr": "", "stderr_lines": [], "stdout": "68.2%", "stdout_lines": ["68.2%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010810", "end": "2025-12-17 20:45:17.816356", "msg": "", "rc": 0, "start": "2025-12-17 20:45:17.805546", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012048", "end": "2025-12-17 20:45:17.855507", "msg": "", "rc": 0, "start": "2025-12-17 20:45:17.843459", "stderr": "", "stderr_lines": [], "stdout": "13.3%", "stdout_lines": ["13.3%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006123", "end": "2025-12-17 20:45:18.095631", "msg": "", "rc": 0, "start": "2025-12-17 20:45:18.089508", "stderr": "", "stderr_lines": [], "stdout": "35.6%", "stdout_lines": ["35.6%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004293", "end": "2025-12-17 20:44:47.569028", "msg": "", "rc": 0, "start": "2025-12-17 20:44:47.564735", "stderr": "", "stderr_lines": [], "stdout": "27.0%", "stdout_lines": ["27.0%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004441", "end": "2025-12-17 20:44:54.223984", "msg": "", "rc": 0, "start": "2025-12-17 20:44:54.219543", "stderr": "", "stderr_lines": [], "stdout": "58.7%", "stdout_lines": ["58.7%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005118", "end": "2025-12-17 17:45:18.372025", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 17:45:18.366907", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005939", "end": "2025-12-17 20:45:18.528463", "msg": "", "rc": 0, "start": "2025-12-17 20:45:18.522524", "stderr": "", "stderr_lines": [], "stdout": "13.9%", "stdout_lines": ["13.9%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025978", "end": "2025-12-17 20:45:18.512452", "msg": "", "rc": 0, "start": "2025-12-17 20:45:18.486474", "stderr": "", "stderr_lines": [], "stdout": "20.1%", "stdout_lines": ["20.1%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.022092", "end": "2025-12-17 20:45:19.198644", "msg": "", "rc": 0, "start": "2025-12-17 20:45:19.176552", "stderr": "", "stderr_lines": [], "stdout": "12.2%", "stdout_lines": ["12.2%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005274", "end": "2025-12-17 20:45:19.496782", "msg": "", "rc": 0, "start": "2025-12-17 20:45:19.491508", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004814", "end": "2025-12-17 20:45:19.504655", "msg": "", "rc": 0, "start": "2025-12-17 20:45:19.499841", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005568", "end": "2025-12-17 20:45:19.516495", "msg": "", "rc": 0, "start": "2025-12-17 20:45:19.510927", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003282", "end": "2025-12-17 20:45:19.573280", "msg": "", "rc": 0, "start": "2025-12-17 20:45:19.569998", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.007005", "end": "2025-12-17 20:45:19.567913", "msg": "", "rc": 0, "start": "2025-12-17 20:45:19.560908", "stderr": "", "stderr_lines": [], "stdout": "52.5°C", "stdout_lines": ["52.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002647", "end": "2025-12-17 20:44:53.307038", "msg": "", "rc": 0, "start": "2025-12-17 20:44:53.304391", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003206", "end": "2025-12-17 20:44:46.785812", "msg": "", "rc": 0, "start": "2025-12-17 20:44:46.782606", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011818", "end": "2025-12-17 20:45:20.273413", "msg": "", "rc": 0, "start": "2025-12-17 20:45:20.261595", "stderr": "", "stderr_lines": [], "stdout": "32.1°C", "stdout_lines": ["32.1°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013358", "end": "2025-12-17 20:45:20.298598", "msg": "", "rc": 0, "start": "2025-12-17 20:45:20.285240", "stderr": "", "stderr_lines": [], "stdout": "35.0°C", "stdout_lines": ["35.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003120", "end": "2025-12-17 20:45:20.525595", "msg": "", "rc": 0, "start": "2025-12-17 20:45:20.522475", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003084", "end": "2025-12-17 20:44:49.941867", "msg": "", "rc": 0, "start": "2025-12-17 20:44:49.938783", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002563", "end": "2025-12-17 20:44:56.608621", "msg": "", "rc": 0, "start": "2025-12-17 20:44:56.606058", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003843", "end": "2025-12-17 17:45:20.763748", "msg": "", "rc": 0, "start": "2025-12-17 17:45:20.759905", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002920", "end": "2025-12-17 20:45:20.951246", "msg": "", "rc": 0, "start": "2025-12-17 20:45:20.948326", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004104", "end": "2025-12-17 20:45:21.354925", "msg": "", "rc": 0, "start": "2025-12-17 20:45:21.350821", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028887", "end": "2025-12-17 20:45:20.974054", "msg": "", "rc": 0, "start": "2025-12-17 20:45:20.945167", "stderr": "", "stderr_lines": [], "stdout": "35.0°C", "stdout_lines": ["35.0°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004078", "end": "2025-12-17 20:45:21.490144", "msg": "", "rc": 0, "start": "2025-12-17 20:45:21.486066", "stderr": "", "stderr_lines": [], "stdout": "0.23", "stdout_lines": ["0.23"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004453", "end": "2025-12-17 20:45:21.496100", "msg": "", "rc": 0, "start": "2025-12-17 20:45:21.491647", "stderr": "", "stderr_lines": [], "stdout": "0.92", "stdout_lines": ["0.92"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.003925", "end": "2025-12-17 20:45:21.513781", "msg": "", "rc": 0, "start": "2025-12-17 20:45:21.509856", "stderr": "", "stderr_lines": [], "stdout": "1.05", "stdout_lines": ["1.05"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005226", "end": "2025-12-17 20:45:21.534871", "msg": "", "rc": 0, "start": "2025-12-17 20:45:21.529645", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005426", "end": "2025-12-17 20:45:21.546625", "msg": "", "rc": 0, "start": "2025-12-17 20:45:21.541199", "stderr": "", "stderr_lines": [], "stdout": "0.67", "stdout_lines": ["0.67"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004166", "end": "2025-12-17 20:44:55.297515", "msg": "", "rc": 0, "start": "2025-12-17 20:44:55.293349", "stderr": "", "stderr_lines": [], "stdout": "0.13", "stdout_lines": ["0.13"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005196", "end": "2025-12-17 20:44:48.779647", "msg": "", "rc": 0, "start": "2025-12-17 20:44:48.774451", "stderr": "", "stderr_lines": [], "stdout": "0.25", "stdout_lines": ["0.25"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.009962", "end": "2025-12-17 20:45:22.338574", "msg": "", "rc": 0, "start": "2025-12-17 20:45:22.328612", "stderr": "", "stderr_lines": [], "stdout": "0.24", "stdout_lines": ["0.24"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010992", "end": "2025-12-17 20:45:22.383671", "msg": "", "rc": 0, "start": "2025-12-17 20:45:22.372679", "stderr": "", "stderr_lines": [], "stdout": "0.07", "stdout_lines": ["0.07"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006081", "end": "2025-12-17 20:45:22.711878", "msg": "", "rc": 0, "start": "2025-12-17 20:45:22.705797", "stderr": "", "stderr_lines": [], "stdout": "0.14", "stdout_lines": ["0.14"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005198", "end": "2025-12-17 20:44:52.070097", "msg": "", "rc": 0, "start": "2025-12-17 20:44:52.064899", "stderr": "", "stderr_lines": [], "stdout": "0.72", "stdout_lines": ["0.72"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005900", "end": "2025-12-17 17:45:22.910738", "msg": "", "rc": 0, "start": "2025-12-17 17:45:22.904838", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004059", "end": "2025-12-17 20:44:58.795004", "msg": "", "rc": 0, "start": "2025-12-17 20:44:58.790945", "stderr": "", "stderr_lines": [], "stdout": "0.12", "stdout_lines": ["0.12"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024130", "end": "2025-12-17 20:45:22.935820", "msg": "", "rc": 0, "start": "2025-12-17 20:45:22.911690", "stderr": "", "stderr_lines": [], "stdout": "0.23", "stdout_lines": ["0.23"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006607", "end": "2025-12-17 20:45:23.530529", "msg": "", "rc": 0, "start": "2025-12-17 20:45:23.523922", "stderr": "", "stderr_lines": [], "stdout": "1.50", "stdout_lines": ["1.50"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005180", "end": "2025-12-17 20:45:23.268769", "msg": "", "rc": 0, "start": "2025-12-17 20:45:23.263589", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} + +TASK [Display health status] *************************************************** +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:45:13 up 22 days, 7:36, 1 user, load average: 0.25, 0.11, 0.09\nDisk Usage: 23%\nMemory Usage: 78.0%\nCPU Load: 0.23\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:45:13 up 3 days, 10:17, 1 user, load average: 0.87, 0.79, 0.50\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 1.05\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:45:13 up 22 days, 7:56, 1 user, load average: 0.91, 0.81, 0.79\nDisk Usage: 14%\nMemory Usage: 49.4%\nCPU Load: 0.92\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:45:13 up 22 days, 9:09, 1 user, load average: 0.61, 0.65, 0.64\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.67\nCPU Temp: 52.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:45:13 up 22 days, 9:55, 1 user, load average: 0.00, 0.01, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:45:14 up 15 days, 10:11, 1 user, load average: 0.16, 0.08, 0.08\nDisk Usage: 21%\nMemory Usage: 20.1%\nCPU Load: 0.23\nCPU Temp: 35.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:45:13 up 194 days, 12:18, 1 user, load average: 0.08, 0.15, 0.20\nDisk Usage: 6%\nMemory Usage: 13.3%\nCPU Load: 0.07\nCPU Temp: 35.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:45:13 up 194 days, 12:18, 1 user, load average: 0.28, 0.17, 0.14\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.24\nCPU Temp: 32.1°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:44:46 up 11 days, 8:34, 0 user, load average: 0.16, 0.12, 0.09\nDisk Usage: 48%\nMemory Usage: 70.8%\nCPU Load: 0.13\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:44:40 up 18 days, 4:46, 0 user, load average: 0.12, 0.04, 0.01\nDisk Usage: 25%\nMemory Usage: 68.2%\nCPU Load: 0.25\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:45:14 up 3 days, 10:16, 1 user, load average: 0.07, 0.02, 0.00\nDisk Usage: 1%\nMemory Usage: 35.6%\nCPU Load: 0.14\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:44:43 up 20 days, 23:39, 0 user, load average: 0.76, 0.46, 0.41\nDisk Usage: 28%\nMemory Usage: 27.0%\nCPU Load: 0.72\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:44:50 up 17 days, 10:00, 0 user, load average: 0.15, 0.49, 0.45\nDisk Usage: 76%\nMemory Usage: 58.7%\nCPU Load: 0.12\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 5:45PM up 22 days, 7:35, 1 user, load averages: 0.10, 0.19, 0.21\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:45:14 up 3 days, 10:16, 1 user, load average: 0.00, 0.01, 0.00\nDisk Usage: 79%\nMemory Usage: 13.9%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:45:14 up 51 min, 1 user, load average: 1.50, 1.25, 1.16\nDisk Usage: 1%\nMemory Usage: 12.2%\nCPU Load: 1.50\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T01:45:24.551573+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_015021_290c80_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_015021_290c80_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..5693bc9 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_015021_290c80_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `9a0dfd5431e64836b94f01d0194a369c` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T01:50:00.000641+00:00 | +| **Fin** | 2025-12-18T01:50:21.658000+00:00 | +| **Durée** | 21.7s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp2.i7.home] +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003617", "end": "2025-12-17 20:50:11.393566", "msg": "", "rc": 0, "start": "2025-12-17 20:50:11.389949", "stderr": "", "stderr_lines": [], "stdout": " 20:50:11 up 22 days, 10:00, 1 user, load average: 0.03, 0.01, 0.00", "stdout_lines": [" 20:50:11 up 22 days, 10:00, 1 user, load average: 0.03, 0.01, 0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003885", "end": "2025-12-17 20:50:11.411493", "msg": "", "rc": 0, "start": "2025-12-17 20:50:11.407608", "stderr": "", "stderr_lines": [], "stdout": " 20:50:11 up 22 days, 9:14, 1 user, load average: 0.60, 0.59, 0.61", "stdout_lines": [" 20:50:11 up 22 days, 9:14, 1 user, load average: 0.60, 0.59, 0.61"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002888", "end": "2025-12-17 20:50:11.421316", "msg": "", "rc": 0, "start": "2025-12-17 20:50:11.418428", "stderr": "", "stderr_lines": [], "stdout": " 20:50:11 up 3 days, 10:22, 1 user, load average: 1.22, 1.05, 0.69", "stdout_lines": [" 20:50:11 up 3 days, 10:22, 1 user, load average: 1.22, 1.05, 0.69"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008451", "end": "2025-12-17 20:50:12.085114", "msg": "", "rc": 0, "start": "2025-12-17 20:50:12.076663", "stderr": "", "stderr_lines": [], "stdout": " 20:50:12 up 194 days, 12:23, 1 user, load average: 0.18, 0.17, 0.15", "stdout_lines": [" 20:50:12 up 194 days, 12:23, 1 user, load average: 0.18, 0.17, 0.15"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009294", "end": "2025-12-17 20:50:12.108842", "msg": "", "rc": 0, "start": "2025-12-17 20:50:12.099548", "stderr": "", "stderr_lines": [], "stdout": " 20:50:12 up 194 days, 12:23, 1 user, load average: 0.31, 0.22, 0.20", "stdout_lines": [" 20:50:12 up 194 days, 12:23, 1 user, load average: 0.31, 0.22, 0.20"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004620", "end": "2025-12-17 20:50:12.389701", "msg": "", "rc": 0, "start": "2025-12-17 20:50:11.385081", "stderr": "", "stderr_lines": [], "stdout": " 20:50:11 up 22 days, 7:41, 1 user, load average: 0.09, 0.09, 0.08", "stdout_lines": [" 20:50:11 up 22 days, 7:41, 1 user, load average: 0.09, 0.09, 0.08"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004615", "end": "2025-12-17 20:50:12.393669", "msg": "", "rc": 0, "start": "2025-12-17 20:50:11.389054", "stderr": "", "stderr_lines": [], "stdout": " 20:50:11 up 22 days, 8:01, 1 user, load average: 0.65, 0.70, 0.75", "stdout_lines": [" 20:50:11 up 22 days, 8:01, 1 user, load average: 0.65, 0.70, 0.75"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002972", "end": "2025-12-17 20:49:45.804600", "msg": "", "rc": 0, "start": "2025-12-17 20:49:45.801628", "stderr": "", "stderr_lines": [], "stdout": " 20:49:45 up 11 days, 8:39, 0 user, load average: 0.17, 0.14, 0.10", "stdout_lines": [" 20:49:45 up 11 days, 8:39, 0 user, load average: 0.17, 0.14, 0.10"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003635", "end": "2025-12-17 20:49:39.285363", "msg": "", "rc": 0, "start": "2025-12-17 20:49:39.281728", "stderr": "", "stderr_lines": [], "stdout": " 20:49:39 up 18 days, 4:51, 0 user, load average: 0.03, 0.05, 0.01", "stdout_lines": [" 20:49:39 up 18 days, 4:51, 0 user, load average: 0.03, 0.05, 0.01"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004967", "end": "2025-12-17 20:50:12.840127", "msg": "", "rc": 0, "start": "2025-12-17 20:50:12.835160", "stderr": "", "stderr_lines": [], "stdout": " 20:50:12 up 3 days, 10:21, 1 user, load average: 0.22, 0.12, 0.04", "stdout_lines": [" 20:50:12 up 3 days, 10:21, 1 user, load average: 0.22, 0.12, 0.04"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019607", "end": "2025-12-17 20:50:12.781895", "msg": "", "rc": 0, "start": "2025-12-17 20:50:12.762288", "stderr": "", "stderr_lines": [], "stdout": " 20:50:12 up 15 days, 10:16, 1 user, load average: 0.24, 0.12, 0.10", "stdout_lines": [" 20:50:12 up 15 days, 10:16, 1 user, load average: 0.24, 0.12, 0.10"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003370", "end": "2025-12-17 20:49:42.153033", "msg": "", "rc": 0, "start": "2025-12-17 20:49:42.149663", "stderr": "", "stderr_lines": [], "stdout": " 20:49:42 up 20 days, 23:44, 0 user, load average: 0.58, 0.44, 0.41", "stdout_lines": [" 20:49:42 up 20 days, 23:44, 0 user, load average: 0.58, 0.44, 0.41"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002617", "end": "2025-12-17 20:49:48.877566", "msg": "", "rc": 0, "start": "2025-12-17 20:49:48.874949", "stderr": "", "stderr_lines": [], "stdout": " 20:49:48 up 17 days, 10:05, 0 user, load average: 0.14, 0.25, 0.35", "stdout_lines": [" 20:49:48 up 17 days, 10:05, 0 user, load average: 0.14, 0.25, 0.35"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004195", "end": "2025-12-17 17:50:13.099057", "msg": "", "rc": 0, "start": "2025-12-17 17:50:13.094862", "stderr": "", "stderr_lines": [], "stdout": " 5:50PM up 22 days, 7:40, 1 user, load averages: 0.27, 0.25, 0.22", "stdout_lines": [" 5:50PM up 22 days, 7:40, 1 user, load averages: 0.27, 0.25, 0.22"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004446", "end": "2025-12-17 20:50:13.609940", "msg": "", "rc": 0, "start": "2025-12-17 20:50:13.605494", "stderr": "", "stderr_lines": [], "stdout": " 20:50:13 up 56 min, 1 user, load average: 1.22, 1.17, 1.15", "stdout_lines": [" 20:50:13 up 56 min, 1 user, load average: 1.22, 1.17, 1.15"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003690", "end": "2025-12-17 20:50:13.250143", "msg": "", "rc": 0, "start": "2025-12-17 20:50:13.246453", "stderr": "", "stderr_lines": [], "stdout": " 20:50:13 up 3 days, 10:21, 1 user, load average: 0.13, 0.05, 0.01", "stdout_lines": [" 20:50:13 up 3 days, 10:21, 1 user, load average: 0.13, 0.05, 0.01"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004223", "end": "2025-12-17 20:50:13.643342", "msg": "", "rc": 0, "start": "2025-12-17 20:50:13.639119", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004125", "end": "2025-12-17 20:50:13.662427", "msg": "", "rc": 0, "start": "2025-12-17 20:50:13.658302", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004602", "end": "2025-12-17 20:50:13.669772", "msg": "", "rc": 0, "start": "2025-12-17 20:50:13.665170", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004687", "end": "2025-12-17 20:50:13.694738", "msg": "", "rc": 0, "start": "2025-12-17 20:50:13.690051", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005423", "end": "2025-12-17 20:50:13.709027", "msg": "", "rc": 0, "start": "2025-12-17 20:50:13.703604", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004962", "end": "2025-12-17 20:49:47.365945", "msg": "", "rc": 0, "start": "2025-12-17 20:49:47.360983", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005778", "end": "2025-12-17 20:49:40.818141", "msg": "", "rc": 0, "start": "2025-12-17 20:49:40.812363", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010648", "end": "2025-12-17 20:50:14.374424", "msg": "", "rc": 0, "start": "2025-12-17 20:50:14.363776", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011547", "end": "2025-12-17 20:50:14.442473", "msg": "", "rc": 0, "start": "2025-12-17 20:50:14.430926", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005685", "end": "2025-12-17 20:50:14.582431", "msg": "", "rc": 0, "start": "2025-12-17 20:50:14.576746", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006976", "end": "2025-12-17 20:49:44.002546", "msg": "", "rc": 0, "start": "2025-12-17 20:49:43.995570", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004455", "end": "2025-12-17 20:49:50.711775", "msg": "", "rc": 0, "start": "2025-12-17 20:49:50.707320", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005671", "end": "2025-12-17 17:50:14.890268", "msg": "", "rc": 0, "start": "2025-12-17 17:50:14.884597", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005231", "end": "2025-12-17 20:50:15.002211", "msg": "", "rc": 0, "start": "2025-12-17 20:50:14.996980", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006836", "end": "2025-12-17 20:50:15.518940", "msg": "", "rc": 0, "start": "2025-12-17 20:50:15.512104", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025295", "end": "2025-12-17 20:50:15.018184", "msg": "", "rc": 0, "start": "2025-12-17 20:50:14.992889", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004271", "end": "2025-12-17 20:50:15.539311", "msg": "", "rc": 0, "start": "2025-12-17 20:50:15.535040", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004266", "end": "2025-12-17 20:50:15.541102", "msg": "", "rc": 0, "start": "2025-12-17 20:50:15.536836", "stderr": "", "stderr_lines": [], "stdout": "78.1%", "stdout_lines": ["78.1%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004849", "end": "2025-12-17 20:50:15.559851", "msg": "", "rc": 0, "start": "2025-12-17 20:50:15.555002", "stderr": "", "stderr_lines": [], "stdout": "49.4%", "stdout_lines": ["49.4%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004775", "end": "2025-12-17 20:50:15.579790", "msg": "", "rc": 0, "start": "2025-12-17 20:50:15.575015", "stderr": "", "stderr_lines": [], "stdout": "9.1%", "stdout_lines": ["9.1%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005791", "end": "2025-12-17 20:50:15.592022", "msg": "", "rc": 0, "start": "2025-12-17 20:50:15.586231", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004050", "end": "2025-12-17 20:49:49.253576", "msg": "", "rc": 0, "start": "2025-12-17 20:49:49.249526", "stderr": "", "stderr_lines": [], "stdout": "70.8%", "stdout_lines": ["70.8%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004617", "end": "2025-12-17 20:49:42.708646", "msg": "", "rc": 0, "start": "2025-12-17 20:49:42.704029", "stderr": "", "stderr_lines": [], "stdout": "68.2%", "stdout_lines": ["68.2%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010794", "end": "2025-12-17 20:50:16.216377", "msg": "", "rc": 0, "start": "2025-12-17 20:50:16.205583", "stderr": "", "stderr_lines": [], "stdout": "6.9%", "stdout_lines": ["6.9%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011794", "end": "2025-12-17 20:50:16.257812", "msg": "", "rc": 0, "start": "2025-12-17 20:50:16.246018", "stderr": "", "stderr_lines": [], "stdout": "12.8%", "stdout_lines": ["12.8%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006424", "end": "2025-12-17 20:50:16.484484", "msg": "", "rc": 0, "start": "2025-12-17 20:50:16.478060", "stderr": "", "stderr_lines": [], "stdout": "35.6%", "stdout_lines": ["35.6%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004321", "end": "2025-12-17 20:49:45.864941", "msg": "", "rc": 0, "start": "2025-12-17 20:49:45.860620", "stderr": "", "stderr_lines": [], "stdout": "27.5%", "stdout_lines": ["27.5%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005249", "end": "2025-12-17 17:50:16.707162", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 17:50:16.701913", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003661", "end": "2025-12-17 20:49:52.574014", "msg": "", "rc": 0, "start": "2025-12-17 20:49:52.570353", "stderr": "", "stderr_lines": [], "stdout": "61.5%", "stdout_lines": ["61.5%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005400", "end": "2025-12-17 20:50:16.896223", "msg": "", "rc": 0, "start": "2025-12-17 20:50:16.890823", "stderr": "", "stderr_lines": [], "stdout": "14.0%", "stdout_lines": ["14.0%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006606", "end": "2025-12-17 20:50:17.420850", "msg": "", "rc": 0, "start": "2025-12-17 20:50:17.414244", "stderr": "", "stderr_lines": [], "stdout": "12.0%", "stdout_lines": ["12.0%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025996", "end": "2025-12-17 20:50:16.923359", "msg": "", "rc": 0, "start": "2025-12-17 20:50:16.897363", "stderr": "", "stderr_lines": [], "stdout": "19.5%", "stdout_lines": ["19.5%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004903", "end": "2025-12-17 20:50:17.456295", "msg": "", "rc": 0, "start": "2025-12-17 20:50:17.451392", "stderr": "", "stderr_lines": [], "stdout": "45.0°C", "stdout_lines": ["45.0°C"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005376", "end": "2025-12-17 20:50:17.462795", "msg": "", "rc": 0, "start": "2025-12-17 20:50:17.457419", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005462", "end": "2025-12-17 20:50:17.481171", "msg": "", "rc": 0, "start": "2025-12-17 20:50:17.475709", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003168", "end": "2025-12-17 20:50:17.491257", "msg": "", "rc": 0, "start": "2025-12-17 20:50:17.488089", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006908", "end": "2025-12-17 20:50:17.529181", "msg": "", "rc": 0, "start": "2025-12-17 20:50:17.522273", "stderr": "", "stderr_lines": [], "stdout": "52.5°C", "stdout_lines": ["52.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002704", "end": "2025-12-17 20:49:51.208170", "msg": "", "rc": 0, "start": "2025-12-17 20:49:51.205466", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003144", "end": "2025-12-17 20:49:44.691234", "msg": "", "rc": 0, "start": "2025-12-17 20:49:44.688090", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011941", "end": "2025-12-17 20:50:18.138071", "msg": "", "rc": 0, "start": "2025-12-17 20:50:18.126130", "stderr": "", "stderr_lines": [], "stdout": "31.2°C", "stdout_lines": ["31.2°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012876", "end": "2025-12-17 20:50:18.180790", "msg": "", "rc": 0, "start": "2025-12-17 20:50:18.167914", "stderr": "", "stderr_lines": [], "stdout": "36.0°C", "stdout_lines": ["36.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003106", "end": "2025-12-17 20:50:18.438743", "msg": "", "rc": 0, "start": "2025-12-17 20:50:18.435637", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002278", "end": "2025-12-17 20:49:54.478114", "msg": "", "rc": 0, "start": "2025-12-17 20:49:54.475836", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003815", "end": "2025-12-17 17:50:18.638247", "msg": "", "rc": 0, "start": "2025-12-17 17:50:18.634432", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003157", "end": "2025-12-17 20:49:47.881895", "msg": "", "rc": 0, "start": "2025-12-17 20:49:47.878738", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002884", "end": "2025-12-17 20:50:18.838143", "msg": "", "rc": 0, "start": "2025-12-17 20:50:18.835259", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004447", "end": "2025-12-17 20:50:19.435866", "msg": "", "rc": 0, "start": "2025-12-17 20:50:19.431419", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028952", "end": "2025-12-17 20:50:18.836390", "msg": "", "rc": 0, "start": "2025-12-17 20:50:18.807438", "stderr": "", "stderr_lines": [], "stdout": "34.6°C", "stdout_lines": ["34.6°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004109", "end": "2025-12-17 20:50:19.358405", "msg": "", "rc": 0, "start": "2025-12-17 20:50:19.354296", "stderr": "", "stderr_lines": [], "stdout": "0.24", "stdout_lines": ["0.24"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004287", "end": "2025-12-17 20:50:19.375761", "msg": "", "rc": 0, "start": "2025-12-17 20:50:19.371474", "stderr": "", "stderr_lines": [], "stdout": "1.12", "stdout_lines": ["1.12"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005245", "end": "2025-12-17 20:50:19.390447", "msg": "", "rc": 0, "start": "2025-12-17 20:50:19.385202", "stderr": "", "stderr_lines": [], "stdout": "0.03", "stdout_lines": ["0.03"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004973", "end": "2025-12-17 20:50:19.395664", "msg": "", "rc": 0, "start": "2025-12-17 20:50:19.390691", "stderr": "", "stderr_lines": [], "stdout": "0.60", "stdout_lines": ["0.60"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005953", "end": "2025-12-17 20:50:19.427195", "msg": "", "rc": 0, "start": "2025-12-17 20:50:19.421242", "stderr": "", "stderr_lines": [], "stdout": "0.74", "stdout_lines": ["0.74"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004401", "end": "2025-12-17 20:49:53.074703", "msg": "", "rc": 0, "start": "2025-12-17 20:49:53.070302", "stderr": "", "stderr_lines": [], "stdout": "0.16", "stdout_lines": ["0.16"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005767", "end": "2025-12-17 20:49:46.568654", "msg": "", "rc": 0, "start": "2025-12-17 20:49:46.562887", "stderr": "", "stderr_lines": [], "stdout": "0.11", "stdout_lines": ["0.11"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010099", "end": "2025-12-17 20:50:20.138315", "msg": "", "rc": 0, "start": "2025-12-17 20:50:20.128216", "stderr": "", "stderr_lines": [], "stdout": "0.23", "stdout_lines": ["0.23"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011140", "end": "2025-12-17 20:50:20.158807", "msg": "", "rc": 0, "start": "2025-12-17 20:50:20.147667", "stderr": "", "stderr_lines": [], "stdout": "0.26", "stdout_lines": ["0.26"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005523", "end": "2025-12-17 20:50:20.293631", "msg": "", "rc": 0, "start": "2025-12-17 20:50:20.288108", "stderr": "", "stderr_lines": [], "stdout": "0.20", "stdout_lines": ["0.20"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005178", "end": "2025-12-17 20:49:49.751225", "msg": "", "rc": 0, "start": "2025-12-17 20:49:49.746047", "stderr": "", "stderr_lines": [], "stdout": "0.54", "stdout_lines": ["0.54"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006061", "end": "2025-12-17 17:50:20.627760", "msg": "", "rc": 0, "start": "2025-12-17 17:50:20.621699", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005050", "end": "2025-12-17 20:49:56.502462", "msg": "", "rc": 0, "start": "2025-12-17 20:49:56.497412", "stderr": "", "stderr_lines": [], "stdout": "0.19", "stdout_lines": ["0.19"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005756", "end": "2025-12-17 20:50:20.719510", "msg": "", "rc": 0, "start": "2025-12-17 20:50:20.713754", "stderr": "", "stderr_lines": [], "stdout": "0.19", "stdout_lines": ["0.19"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006605", "end": "2025-12-17 20:50:20.841272", "msg": "", "rc": 0, "start": "2025-12-17 20:50:20.834667", "stderr": "", "stderr_lines": [], "stdout": "1.44", "stdout_lines": ["1.44"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024269", "end": "2025-12-17 20:50:20.736337", "msg": "", "rc": 0, "start": "2025-12-17 20:50:20.712068", "stderr": "", "stderr_lines": [], "stdout": "0.36", "stdout_lines": ["0.36"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:50:11 up 3 days, 10:22, 1 user, load average: 1.22, 1.05, 0.69\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 1.12\nCPU Temp: 45.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:50:11 up 22 days, 7:41, 1 user, load average: 0.09, 0.09, 0.08\nDisk Usage: 23%\nMemory Usage: 78.1%\nCPU Load: 0.24\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:50:11 up 22 days, 8:01, 1 user, load average: 0.65, 0.70, 0.75\nDisk Usage: 14%\nMemory Usage: 49.4%\nCPU Load: 0.60\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:50:11 up 22 days, 9:14, 1 user, load average: 0.60, 0.59, 0.61\nDisk Usage: 14%\nMemory Usage: 59.7%\nCPU Load: 0.74\nCPU Temp: 52.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:50:11 up 22 days, 10:00, 1 user, load average: 0.03, 0.01, 0.00\nDisk Usage: 9%\nMemory Usage: 9.1%\nCPU Load: 0.03\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:50:12 up 15 days, 10:16, 1 user, load average: 0.24, 0.12, 0.10\nDisk Usage: 21%\nMemory Usage: 19.5%\nCPU Load: 0.36\nCPU Temp: 34.6°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:50:12 up 194 days, 12:23, 1 user, load average: 0.31, 0.22, 0.20\nDisk Usage: 6%\nMemory Usage: 12.8%\nCPU Load: 0.26\nCPU Temp: 36.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:50:12 up 194 days, 12:23, 1 user, load average: 0.18, 0.17, 0.15\nDisk Usage: 3%\nMemory Usage: 6.9%\nCPU Load: 0.23\nCPU Temp: 31.2°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:49:45 up 11 days, 8:39, 0 user, load average: 0.17, 0.14, 0.10\nDisk Usage: 48%\nMemory Usage: 70.8%\nCPU Load: 0.16\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:49:39 up 18 days, 4:51, 0 user, load average: 0.03, 0.05, 0.01\nDisk Usage: 25%\nMemory Usage: 68.2%\nCPU Load: 0.11\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:50:12 up 3 days, 10:21, 1 user, load average: 0.22, 0.12, 0.04\nDisk Usage: 1%\nMemory Usage: 35.6%\nCPU Load: 0.20\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:49:42 up 20 days, 23:44, 0 user, load average: 0.58, 0.44, 0.41\nDisk Usage: 28%\nMemory Usage: 27.5%\nCPU Load: 0.54\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:49:48 up 17 days, 10:05, 0 user, load average: 0.14, 0.25, 0.35\nDisk Usage: 76%\nMemory Usage: 61.5%\nCPU Load: 0.19\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 5:50PM up 22 days, 7:40, 1 user, load averages: 0.27, 0.25, 0.22\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:50:13 up 3 days, 10:21, 1 user, load average: 0.13, 0.05, 0.01\nDisk Usage: 79%\nMemory Usage: 14.0%\nCPU Load: 0.19\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:50:13 up 56 min, 1 user, load average: 1.22, 1.17, 1.15\nDisk Usage: 1%\nMemory Usage: 12.0%\nCPU Load: 1.44\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T01:50:21.720129+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_015521_e7dbcf_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_015521_e7dbcf_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..c53afb1 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_015521_e7dbcf_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `670557fdc16e43d081a44a4e0cb74386` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T01:55:00.000491+00:00 | +| **Fin** | 2025-12-18T01:55:21.607365+00:00 | +| **Durée** | 21.6s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [dev.prod.home] +ok: [hp.truenas.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003235", "end": "2025-12-17 20:55:11.410874", "msg": "", "rc": 0, "start": "2025-12-17 20:55:11.407639", "stderr": "", "stderr_lines": [], "stdout": " 20:55:11 up 22 days, 8:06, 1 user, load average: 0.86, 0.72, 0.74", "stdout_lines": [" 20:55:11 up 22 days, 8:06, 1 user, load average: 0.86, 0.72, 0.74"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003575", "end": "2025-12-17 20:55:11.415368", "msg": "", "rc": 0, "start": "2025-12-17 20:55:11.411793", "stderr": "", "stderr_lines": [], "stdout": " 20:55:11 up 22 days, 10:05, 1 user, load average: 0.01, 0.02, 0.00", "stdout_lines": [" 20:55:11 up 22 days, 10:05, 1 user, load average: 0.01, 0.02, 0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003834", "end": "2025-12-17 20:55:11.435147", "msg": "", "rc": 0, "start": "2025-12-17 20:55:11.431313", "stderr": "", "stderr_lines": [], "stdout": " 20:55:11 up 22 days, 9:19, 1 user, load average: 0.61, 0.59, 0.61", "stdout_lines": [" 20:55:11 up 22 days, 9:19, 1 user, load average: 0.61, 0.59, 0.61"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002876", "end": "2025-12-17 20:55:11.444782", "msg": "", "rc": 0, "start": "2025-12-17 20:55:11.441906", "stderr": "", "stderr_lines": [], "stdout": " 20:55:11 up 3 days, 10:27, 1 user, load average: 0.29, 0.53, 0.56", "stdout_lines": [" 20:55:11 up 3 days, 10:27, 1 user, load average: 0.29, 0.53, 0.56"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002843", "end": "2025-12-17 20:54:45.104918", "msg": "", "rc": 0, "start": "2025-12-17 20:54:45.102075", "stderr": "", "stderr_lines": [], "stdout": " 20:54:45 up 11 days, 8:44, 0 user, load average: 0.09, 0.07, 0.08", "stdout_lines": [" 20:54:45 up 11 days, 8:44, 0 user, load average: 0.09, 0.07, 0.08"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008521", "end": "2025-12-17 20:55:12.076231", "msg": "", "rc": 0, "start": "2025-12-17 20:55:12.067710", "stderr": "", "stderr_lines": [], "stdout": " 20:55:12 up 194 days, 12:28, 1 user, load average: 0.21, 0.18, 0.16", "stdout_lines": [" 20:55:12 up 194 days, 12:28, 1 user, load average: 0.21, 0.18, 0.16"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009274", "end": "2025-12-17 20:55:12.109631", "msg": "", "rc": 0, "start": "2025-12-17 20:55:12.100357", "stderr": "", "stderr_lines": [], "stdout": " 20:55:12 up 194 days, 12:28, 1 user, load average: 0.44, 0.29, 0.22", "stdout_lines": [" 20:55:12 up 194 days, 12:28, 1 user, load average: 0.44, 0.29, 0.22"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003523", "end": "2025-12-17 20:54:38.983398", "msg": "", "rc": 0, "start": "2025-12-17 20:54:38.979875", "stderr": "", "stderr_lines": [], "stdout": " 20:54:38 up 18 days, 4:56, 0 user, load average: 0.02, 0.05, 0.00", "stdout_lines": [" 20:54:38 up 18 days, 4:56, 0 user, load average: 0.02, 0.05, 0.00"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004356", "end": "2025-12-17 20:55:12.407688", "msg": "", "rc": 0, "start": "2025-12-17 20:55:11.403332", "stderr": "", "stderr_lines": [], "stdout": " 20:55:11 up 22 days, 7:46, 1 user, load average: 0.11, 0.08, 0.08", "stdout_lines": [" 20:55:11 up 22 days, 7:46, 1 user, load average: 0.11, 0.08, 0.08"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004672", "end": "2025-12-17 20:55:12.570441", "msg": "", "rc": 0, "start": "2025-12-17 20:55:12.565769", "stderr": "", "stderr_lines": [], "stdout": " 20:55:12 up 3 days, 10:26, 1 user, load average: 0.09, 0.11, 0.06", "stdout_lines": [" 20:55:12 up 3 days, 10:26, 1 user, load average: 0.09, 0.11, 0.06"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003281", "end": "2025-12-17 20:54:41.906835", "msg": "", "rc": 0, "start": "2025-12-17 20:54:41.903554", "stderr": "", "stderr_lines": [], "stdout": " 20:54:41 up 20 days, 23:48, 0 user, load average: 0.37, 0.41, 0.40", "stdout_lines": [" 20:54:41 up 20 days, 23:48, 0 user, load average: 0.37, 0.41, 0.40"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004156", "end": "2025-12-17 17:55:12.813592", "msg": "", "rc": 0, "start": "2025-12-17 17:55:12.809436", "stderr": "", "stderr_lines": [], "stdout": " 5:55PM up 22 days, 7:45, 1 user, load averages: 0.26, 0.25, 0.22", "stdout_lines": [" 5:55PM up 22 days, 7:45, 1 user, load averages: 0.26, 0.25, 0.22"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002784", "end": "2025-12-17 20:54:48.698276", "msg": "", "rc": 0, "start": "2025-12-17 20:54:48.695492", "stderr": "", "stderr_lines": [], "stdout": " 20:54:48 up 17 days, 10:10, 0 user, load average: 0.36, 0.25, 0.31", "stdout_lines": [" 20:54:48 up 17 days, 10:10, 0 user, load average: 0.36, 0.25, 0.31"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019496", "end": "2025-12-17 20:55:12.784491", "msg": "", "rc": 0, "start": "2025-12-17 20:55:12.764995", "stderr": "", "stderr_lines": [], "stdout": " 20:55:12 up 15 days, 10:21, 1 user, load average: 0.25, 0.14, 0.10", "stdout_lines": [" 20:55:12 up 15 days, 10:21, 1 user, load average: 0.25, 0.14, 0.10"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003661", "end": "2025-12-17 20:55:12.983408", "msg": "", "rc": 0, "start": "2025-12-17 20:55:12.979747", "stderr": "", "stderr_lines": [], "stdout": " 20:55:12 up 3 days, 10:26, 1 user, load average: 0.01, 0.05, 0.01", "stdout_lines": [" 20:55:12 up 3 days, 10:26, 1 user, load average: 0.01, 0.05, 0.01"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009111", "end": "2025-12-17 20:55:13.057367", "msg": "", "rc": 0, "start": "2025-12-17 20:55:13.048256", "stderr": "", "stderr_lines": [], "stdout": " 20:55:13 up 1:02, 1 user, load average: 1.26, 1.16, 1.15", "stdout_lines": [" 20:55:13 up 1:02, 1 user, load average: 1.26, 1.16, 1.15"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004283", "end": "2025-12-17 20:55:13.389662", "msg": "", "rc": 0, "start": "2025-12-17 20:55:13.385379", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004987", "end": "2025-12-17 20:55:13.405625", "msg": "", "rc": 0, "start": "2025-12-17 20:55:13.400638", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004131", "end": "2025-12-17 20:55:13.415148", "msg": "", "rc": 0, "start": "2025-12-17 20:55:13.411017", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004734", "end": "2025-12-17 20:55:13.434551", "msg": "", "rc": 0, "start": "2025-12-17 20:55:13.429817", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005538", "end": "2025-12-17 20:55:13.438971", "msg": "", "rc": 0, "start": "2025-12-17 20:55:13.433433", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005354", "end": "2025-12-17 20:54:47.102877", "msg": "", "rc": 0, "start": "2025-12-17 20:54:47.097523", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005394", "end": "2025-12-17 20:54:40.553766", "msg": "", "rc": 0, "start": "2025-12-17 20:54:40.548372", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010613", "end": "2025-12-17 20:55:14.120375", "msg": "", "rc": 0, "start": "2025-12-17 20:55:14.109762", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011565", "end": "2025-12-17 20:55:14.160250", "msg": "", "rc": 0, "start": "2025-12-17 20:55:14.148685", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005662", "end": "2025-12-17 20:55:14.326490", "msg": "", "rc": 0, "start": "2025-12-17 20:55:14.320828", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005326", "end": "2025-12-17 20:54:43.711190", "msg": "", "rc": 0, "start": "2025-12-17 20:54:43.705864", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005138", "end": "2025-12-17 20:54:50.468650", "msg": "", "rc": 0, "start": "2025-12-17 20:54:50.463512", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005511", "end": "2025-12-17 17:55:14.638888", "msg": "", "rc": 0, "start": "2025-12-17 17:55:14.633377", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005419", "end": "2025-12-17 20:55:14.749771", "msg": "", "rc": 0, "start": "2025-12-17 20:55:14.744352", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.018003", "end": "2025-12-17 20:55:14.890001", "msg": "", "rc": 0, "start": "2025-12-17 20:55:14.871998", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025033", "end": "2025-12-17 20:55:14.781203", "msg": "", "rc": 0, "start": "2025-12-17 20:55:14.756170", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004254", "end": "2025-12-17 20:55:15.320741", "msg": "", "rc": 0, "start": "2025-12-17 20:55:15.316487", "stderr": "", "stderr_lines": [], "stdout": "78.1%", "stdout_lines": ["78.1%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005062", "end": "2025-12-17 20:55:15.337751", "msg": "", "rc": 0, "start": "2025-12-17 20:55:15.332689", "stderr": "", "stderr_lines": [], "stdout": "49.3%", "stdout_lines": ["49.3%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004310", "end": "2025-12-17 20:55:15.340783", "msg": "", "rc": 0, "start": "2025-12-17 20:55:15.336473", "stderr": "", "stderr_lines": [], "stdout": "22.5%", "stdout_lines": ["22.5%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004863", "end": "2025-12-17 20:55:15.361437", "msg": "", "rc": 0, "start": "2025-12-17 20:55:15.356574", "stderr": "", "stderr_lines": [], "stdout": "9.1%", "stdout_lines": ["9.1%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005896", "end": "2025-12-17 20:55:15.371150", "msg": "", "rc": 0, "start": "2025-12-17 20:55:15.365254", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003685", "end": "2025-12-17 20:54:49.050269", "msg": "", "rc": 0, "start": "2025-12-17 20:54:49.046584", "stderr": "", "stderr_lines": [], "stdout": "71.3%", "stdout_lines": ["71.3%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004556", "end": "2025-12-17 20:54:42.492923", "msg": "", "rc": 0, "start": "2025-12-17 20:54:42.488367", "stderr": "", "stderr_lines": [], "stdout": "68.2%", "stdout_lines": ["68.2%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010925", "end": "2025-12-17 20:55:16.003315", "msg": "", "rc": 0, "start": "2025-12-17 20:55:15.992390", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011902", "end": "2025-12-17 20:55:16.051175", "msg": "", "rc": 0, "start": "2025-12-17 20:55:16.039273", "stderr": "", "stderr_lines": [], "stdout": "12.7%", "stdout_lines": ["12.7%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005839", "end": "2025-12-17 20:55:16.264947", "msg": "", "rc": 0, "start": "2025-12-17 20:55:16.259108", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004154", "end": "2025-12-17 20:54:45.647102", "msg": "", "rc": 0, "start": "2025-12-17 20:54:45.642948", "stderr": "", "stderr_lines": [], "stdout": "27.4%", "stdout_lines": ["27.4%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003800", "end": "2025-12-17 20:54:52.358225", "msg": "", "rc": 0, "start": "2025-12-17 20:54:52.354425", "stderr": "", "stderr_lines": [], "stdout": "61.8%", "stdout_lines": ["61.8%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005075", "end": "2025-12-17 17:55:16.518286", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 17:55:16.513211", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005444", "end": "2025-12-17 20:55:16.679610", "msg": "", "rc": 0, "start": "2025-12-17 20:55:16.674166", "stderr": "", "stderr_lines": [], "stdout": "13.8%", "stdout_lines": ["13.8%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.009396", "end": "2025-12-17 20:55:16.842453", "msg": "", "rc": 0, "start": "2025-12-17 20:55:16.833057", "stderr": "", "stderr_lines": [], "stdout": "12.3%", "stdout_lines": ["12.3%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025691", "end": "2025-12-17 20:55:16.709390", "msg": "", "rc": 0, "start": "2025-12-17 20:55:16.683699", "stderr": "", "stderr_lines": [], "stdout": "20.6%", "stdout_lines": ["20.6%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005614", "end": "2025-12-17 20:55:17.220555", "msg": "", "rc": 0, "start": "2025-12-17 20:55:17.214941", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004853", "end": "2025-12-17 20:55:17.241112", "msg": "", "rc": 0, "start": "2025-12-17 20:55:17.236259", "stderr": "", "stderr_lines": [], "stdout": "47.0°C", "stdout_lines": ["47.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005751", "end": "2025-12-17 20:55:17.260893", "msg": "", "rc": 0, "start": "2025-12-17 20:55:17.255142", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003394", "end": "2025-12-17 20:55:17.261905", "msg": "", "rc": 0, "start": "2025-12-17 20:55:17.258511", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006630", "end": "2025-12-17 20:55:17.281683", "msg": "", "rc": 0, "start": "2025-12-17 20:55:17.275053", "stderr": "", "stderr_lines": [], "stdout": "52.0°C", "stdout_lines": ["52.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002781", "end": "2025-12-17 20:54:50.942216", "msg": "", "rc": 0, "start": "2025-12-17 20:54:50.939435", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003291", "end": "2025-12-17 20:54:44.410536", "msg": "", "rc": 0, "start": "2025-12-17 20:54:44.407245", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012045", "end": "2025-12-17 20:55:17.906202", "msg": "", "rc": 0, "start": "2025-12-17 20:55:17.894157", "stderr": "", "stderr_lines": [], "stdout": "31.2°C", "stdout_lines": ["31.2°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012911", "end": "2025-12-17 20:55:17.928281", "msg": "", "rc": 0, "start": "2025-12-17 20:55:17.915370", "stderr": "", "stderr_lines": [], "stdout": "35.0°C", "stdout_lines": ["35.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003085", "end": "2025-12-17 20:55:18.169279", "msg": "", "rc": 0, "start": "2025-12-17 20:55:18.166194", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003094", "end": "2025-12-17 20:54:47.593652", "msg": "", "rc": 0, "start": "2025-12-17 20:54:47.590558", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003768", "end": "2025-12-17 17:55:18.396889", "msg": "", "rc": 0, "start": "2025-12-17 17:55:18.393121", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002645", "end": "2025-12-17 20:54:54.268153", "msg": "", "rc": 0, "start": "2025-12-17 20:54:54.265508", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002925", "end": "2025-12-17 20:55:18.579653", "msg": "", "rc": 0, "start": "2025-12-17 20:55:18.576728", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003983", "end": "2025-12-17 20:55:18.815853", "msg": "", "rc": 0, "start": "2025-12-17 20:55:18.811870", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028508", "end": "2025-12-17 20:55:18.606184", "msg": "", "rc": 0, "start": "2025-12-17 20:55:18.577676", "stderr": "", "stderr_lines": [], "stdout": "35.0°C", "stdout_lines": ["35.0°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004095", "end": "2025-12-17 20:55:19.148261", "msg": "", "rc": 0, "start": "2025-12-17 20:55:19.144166", "stderr": "", "stderr_lines": [], "stdout": "0.09", "stdout_lines": ["0.09"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004988", "end": "2025-12-17 20:55:19.170308", "msg": "", "rc": 0, "start": "2025-12-17 20:55:19.165320", "stderr": "", "stderr_lines": [], "stdout": "1.19", "stdout_lines": ["1.19"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004255", "end": "2025-12-17 20:55:19.169780", "msg": "", "rc": 0, "start": "2025-12-17 20:55:19.165525", "stderr": "", "stderr_lines": [], "stdout": "0.26", "stdout_lines": ["0.26"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004658", "end": "2025-12-17 20:55:19.188109", "msg": "", "rc": 0, "start": "2025-12-17 20:55:19.183451", "stderr": "", "stderr_lines": [], "stdout": "0.01", "stdout_lines": ["0.01"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005948", "end": "2025-12-17 20:55:19.186966", "msg": "", "rc": 0, "start": "2025-12-17 20:55:19.181018", "stderr": "", "stderr_lines": [], "stdout": "0.75", "stdout_lines": ["0.75"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004494", "end": "2025-12-17 20:54:52.868244", "msg": "", "rc": 0, "start": "2025-12-17 20:54:52.863750", "stderr": "", "stderr_lines": [], "stdout": "0.09", "stdout_lines": ["0.09"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005566", "end": "2025-12-17 20:54:46.340717", "msg": "", "rc": 0, "start": "2025-12-17 20:54:46.335151", "stderr": "", "stderr_lines": [], "stdout": "0.02", "stdout_lines": ["0.02"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010095", "end": "2025-12-17 20:55:19.934025", "msg": "", "rc": 0, "start": "2025-12-17 20:55:19.923930", "stderr": "", "stderr_lines": [], "stdout": "0.25", "stdout_lines": ["0.25"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010977", "end": "2025-12-17 20:55:19.991607", "msg": "", "rc": 0, "start": "2025-12-17 20:55:19.980630", "stderr": "", "stderr_lines": [], "stdout": "0.44", "stdout_lines": ["0.44"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005703", "end": "2025-12-17 20:55:20.100536", "msg": "", "rc": 0, "start": "2025-12-17 20:55:20.094833", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005848", "end": "2025-12-17 20:54:49.542013", "msg": "", "rc": 0, "start": "2025-12-17 20:54:49.536165", "stderr": "", "stderr_lines": [], "stdout": "0.42", "stdout_lines": ["0.42"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004282", "end": "2025-12-17 20:54:56.263263", "msg": "", "rc": 0, "start": "2025-12-17 20:54:56.258981", "stderr": "", "stderr_lines": [], "stdout": "0.33", "stdout_lines": ["0.33"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005999", "end": "2025-12-17 17:55:20.443803", "msg": "", "rc": 0, "start": "2025-12-17 17:55:20.437804", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005233", "end": "2025-12-17 20:55:20.507935", "msg": "", "rc": 0, "start": "2025-12-17 20:55:20.502702", "stderr": "", "stderr_lines": [], "stdout": "0.09", "stdout_lines": ["0.09"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006760", "end": "2025-12-17 20:55:20.806264", "msg": "", "rc": 0, "start": "2025-12-17 20:55:20.799504", "stderr": "", "stderr_lines": [], "stdout": "1.37", "stdout_lines": ["1.37"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024390", "end": "2025-12-17 20:55:20.528524", "msg": "", "rc": 0, "start": "2025-12-17 20:55:20.504134", "stderr": "", "stderr_lines": [], "stdout": "0.28", "stdout_lines": ["0.28"]} + +TASK [Display health status] *************************************************** +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:55:11 up 22 days, 7:46, 1 user, load average: 0.11, 0.08, 0.08\nDisk Usage: 23%\nMemory Usage: 78.1%\nCPU Load: 0.09\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:55:11 up 3 days, 10:27, 1 user, load average: 0.29, 0.53, 0.56\nDisk Usage: 22%\nMemory Usage: 22.5%\nCPU Load: 0.26\nCPU Temp: 47.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:55:11 up 22 days, 8:06, 1 user, load average: 0.86, 0.72, 0.74\nDisk Usage: 14%\nMemory Usage: 49.3%\nCPU Load: 1.19\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:55:11 up 22 days, 9:19, 1 user, load average: 0.61, 0.59, 0.61\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.75\nCPU Temp: 52.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:55:11 up 22 days, 10:05, 1 user, load average: 0.01, 0.02, 0.00\nDisk Usage: 9%\nMemory Usage: 9.1%\nCPU Load: 0.01\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:55:12 up 15 days, 10:21, 1 user, load average: 0.25, 0.14, 0.10\nDisk Usage: 21%\nMemory Usage: 20.6%\nCPU Load: 0.28\nCPU Temp: 35.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:55:12 up 194 days, 12:28, 1 user, load average: 0.44, 0.29, 0.22\nDisk Usage: 6%\nMemory Usage: 12.7%\nCPU Load: 0.44\nCPU Temp: 35.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:55:12 up 194 days, 12:28, 1 user, load average: 0.21, 0.18, 0.16\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.25\nCPU Temp: 31.2°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:54:45 up 11 days, 8:44, 0 user, load average: 0.09, 0.07, 0.08\nDisk Usage: 48%\nMemory Usage: 71.3%\nCPU Load: 0.09\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:54:38 up 18 days, 4:56, 0 user, load average: 0.02, 0.05, 0.00\nDisk Usage: 25%\nMemory Usage: 68.2%\nCPU Load: 0.02\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:55:12 up 3 days, 10:26, 1 user, load average: 0.09, 0.11, 0.06\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:54:41 up 20 days, 23:48, 0 user, load average: 0.37, 0.41, 0.40\nDisk Usage: 28%\nMemory Usage: 27.4%\nCPU Load: 0.42\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:54:48 up 17 days, 10:10, 0 user, load average: 0.36, 0.25, 0.31\nDisk Usage: 76%\nMemory Usage: 61.8%\nCPU Load: 0.33\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 5:55PM up 22 days, 7:45, 1 user, load averages: 0.26, 0.25, 0.22\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:55:12 up 3 days, 10:26, 1 user, load average: 0.01, 0.05, 0.01\nDisk Usage: 79%\nMemory Usage: 13.8%\nCPU Load: 0.09\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 20:55:13 up 1:02, 1 user, load average: 1.26, 1.16, 1.15\nDisk Usage: 1%\nMemory Usage: 12.3%\nCPU Load: 1.37\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T01:55:21.659994+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_020525_89d26a_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_020525_89d26a_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..4a882b5 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_020525_89d26a_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `451440d4900d4d69b49e5ecf2b5fa692` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T02:05:00.002314+00:00 | +| **Fin** | 2025-12-18T02:05:25.353634+00:00 | +| **Durée** | 25.4s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.4gb.home] +ok: [raspi.8gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003386", "end": "2025-12-17 21:05:15.426559", "msg": "", "rc": 0, "start": "2025-12-17 21:05:15.423173", "stderr": "", "stderr_lines": [], "stdout": " 21:05:15 up 22 days, 7:56, 1 user, load average: 0.09, 0.09, 0.09", "stdout_lines": [" 21:05:15 up 22 days, 7:56, 1 user, load average: 0.09, 0.09, 0.09"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004131", "end": "2025-12-17 21:05:15.432465", "msg": "", "rc": 0, "start": "2025-12-17 21:05:15.428334", "stderr": "", "stderr_lines": [], "stdout": " 21:05:15 up 22 days, 10:15, 1 user, load average: 0.04, 0.01, 0.00", "stdout_lines": [" 21:05:15 up 22 days, 10:15, 1 user, load average: 0.04, 0.01, 0.00"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003541", "end": "2025-12-17 21:05:15.433693", "msg": "", "rc": 0, "start": "2025-12-17 21:05:15.430152", "stderr": "", "stderr_lines": [], "stdout": " 21:05:15 up 22 days, 8:16, 1 user, load average: 0.66, 0.64, 0.68", "stdout_lines": [" 21:05:15 up 22 days, 8:16, 1 user, load average: 0.66, 0.64, 0.68"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002909", "end": "2025-12-17 21:05:15.460416", "msg": "", "rc": 0, "start": "2025-12-17 21:05:15.457507", "stderr": "", "stderr_lines": [], "stdout": " 21:05:15 up 3 days, 10:37, 1 user, load average: 0.48, 0.37, 0.45", "stdout_lines": [" 21:05:15 up 3 days, 10:37, 1 user, load average: 0.48, 0.37, 0.45"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003757", "end": "2025-12-17 21:05:15.458199", "msg": "", "rc": 0, "start": "2025-12-17 21:05:15.454442", "stderr": "", "stderr_lines": [], "stdout": " 21:05:15 up 22 days, 9:29, 1 user, load average: 0.75, 0.71, 0.65", "stdout_lines": [" 21:05:15 up 22 days, 9:29, 1 user, load average: 0.75, 0.71, 0.65"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002720", "end": "2025-12-17 21:04:49.129583", "msg": "", "rc": 0, "start": "2025-12-17 21:04:49.126863", "stderr": "", "stderr_lines": [], "stdout": " 21:04:49 up 11 days, 8:54, 0 user, load average: 0.07, 0.13, 0.10", "stdout_lines": [" 21:04:49 up 11 days, 8:54, 0 user, load average: 0.07, 0.13, 0.10"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003830", "end": "2025-12-17 21:04:42.599242", "msg": "", "rc": 0, "start": "2025-12-17 21:04:42.595412", "stderr": "", "stderr_lines": [], "stdout": " 21:04:42 up 18 days, 5:06, 0 user, load average: 0.00, 0.03, 0.00", "stdout_lines": [" 21:04:42 up 18 days, 5:06, 0 user, load average: 0.00, 0.03, 0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008385", "end": "2025-12-17 21:05:16.138072", "msg": "", "rc": 0, "start": "2025-12-17 21:05:16.129687", "stderr": "", "stderr_lines": [], "stdout": " 21:05:16 up 194 days, 12:38, 1 user, load average: 0.19, 0.13, 0.12", "stdout_lines": [" 21:05:16 up 194 days, 12:38, 1 user, load average: 0.19, 0.13, 0.12"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009301", "end": "2025-12-17 21:05:16.249797", "msg": "", "rc": 0, "start": "2025-12-17 21:05:16.240496", "stderr": "", "stderr_lines": [], "stdout": " 21:05:16 up 194 days, 12:38, 1 user, load average: 0.22, 0.19, 0.18", "stdout_lines": [" 21:05:16 up 194 days, 12:38, 1 user, load average: 0.22, 0.19, 0.18"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004769", "end": "2025-12-17 21:05:16.369084", "msg": "", "rc": 0, "start": "2025-12-17 21:05:16.364315", "stderr": "", "stderr_lines": [], "stdout": " 21:05:16 up 3 days, 10:36, 1 user, load average: 0.01, 0.05, 0.04", "stdout_lines": [" 21:05:16 up 3 days, 10:36, 1 user, load average: 0.01, 0.05, 0.04"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003680", "end": "2025-12-17 21:04:45.785994", "msg": "", "rc": 0, "start": "2025-12-17 21:04:45.782314", "stderr": "", "stderr_lines": [], "stdout": " 21:04:45 up 20 days, 23:59, 0 user, load average: 0.61, 0.46, 0.42", "stdout_lines": [" 21:04:45 up 20 days, 23:59, 0 user, load average: 0.61, 0.46, 0.42"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003327", "end": "2025-12-17 21:04:52.494772", "msg": "", "rc": 0, "start": "2025-12-17 21:04:52.491445", "stderr": "", "stderr_lines": [], "stdout": " 21:04:52 up 17 days, 10:20, 0 user, load average: 0.24, 0.29, 0.28", "stdout_lines": [" 21:04:52 up 17 days, 10:20, 0 user, load average: 0.24, 0.29, 0.28"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004168", "end": "2025-12-17 18:05:16.706990", "msg": "", "rc": 0, "start": "2025-12-17 18:05:16.702822", "stderr": "", "stderr_lines": [], "stdout": " 6:05PM up 22 days, 7:55, 1 user, load averages: 0.41, 0.26, 0.22", "stdout_lines": [" 6:05PM up 22 days, 7:55, 1 user, load averages: 0.41, 0.26, 0.22"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003751", "end": "2025-12-17 21:05:16.800791", "msg": "", "rc": 0, "start": "2025-12-17 21:05:16.797040", "stderr": "", "stderr_lines": [], "stdout": " 21:05:16 up 3 days, 10:36, 1 user, load average: 0.08, 0.06, 0.01", "stdout_lines": [" 21:05:16 up 3 days, 10:36, 1 user, load average: 0.08, 0.06, 0.01"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.006486", "end": "2025-12-17 21:05:17.246652", "msg": "", "rc": 0, "start": "2025-12-17 21:05:17.240166", "stderr": "", "stderr_lines": [], "stdout": " 21:05:17 up 1:12, 1 user, load average: 1.47, 1.12, 1.13", "stdout_lines": [" 21:05:17 up 1:12, 1 user, load average: 1.47, 1.12, 1.13"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019675", "end": "2025-12-17 21:05:16.827887", "msg": "", "rc": 0, "start": "2025-12-17 21:05:16.808212", "stderr": "", "stderr_lines": [], "stdout": " 21:05:16 up 15 days, 10:31, 1 user, load average: 0.19, 0.13, 0.10", "stdout_lines": [" 21:05:16 up 15 days, 10:31, 1 user, load average: 0.19, 0.13, 0.10"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004531", "end": "2025-12-17 21:05:17.358138", "msg": "", "rc": 0, "start": "2025-12-17 21:05:17.353607", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004175", "end": "2025-12-17 21:05:17.357416", "msg": "", "rc": 0, "start": "2025-12-17 21:05:17.353241", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004784", "end": "2025-12-17 21:05:17.365868", "msg": "", "rc": 0, "start": "2025-12-17 21:05:17.361084", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004079", "end": "2025-12-17 21:05:17.398056", "msg": "", "rc": 0, "start": "2025-12-17 21:05:17.393977", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005345", "end": "2025-12-17 21:05:17.417472", "msg": "", "rc": 0, "start": "2025-12-17 21:05:17.412127", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004766", "end": "2025-12-17 21:04:51.105367", "msg": "", "rc": 0, "start": "2025-12-17 21:04:51.100601", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005784", "end": "2025-12-17 21:04:44.569512", "msg": "", "rc": 0, "start": "2025-12-17 21:04:44.563728", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011616", "end": "2025-12-17 21:05:18.082719", "msg": "", "rc": 0, "start": "2025-12-17 21:05:18.071103", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010649", "end": "2025-12-17 21:05:18.097644", "msg": "", "rc": 0, "start": "2025-12-17 21:05:18.086995", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005863", "end": "2025-12-17 21:05:18.364024", "msg": "", "rc": 0, "start": "2025-12-17 21:05:18.358161", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005260", "end": "2025-12-17 21:04:47.732760", "msg": "", "rc": 0, "start": "2025-12-17 21:04:47.727500", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005530", "end": "2025-12-17 18:05:18.556768", "msg": "", "rc": 0, "start": "2025-12-17 18:05:18.551238", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010767", "end": "2025-12-17 21:04:54.435052", "msg": "", "rc": 0, "start": "2025-12-17 21:04:54.424285", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005322", "end": "2025-12-17 21:05:18.773795", "msg": "", "rc": 0, "start": "2025-12-17 21:05:18.768473", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.020166", "end": "2025-12-17 21:05:19.244679", "msg": "", "rc": 0, "start": "2025-12-17 21:05:19.224513", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025555", "end": "2025-12-17 21:05:18.753616", "msg": "", "rc": 0, "start": "2025-12-17 21:05:18.728061", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004177", "end": "2025-12-17 21:05:19.278569", "msg": "", "rc": 0, "start": "2025-12-17 21:05:19.274392", "stderr": "", "stderr_lines": [], "stdout": "78.1%", "stdout_lines": ["78.1%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004432", "end": "2025-12-17 21:05:19.298412", "msg": "", "rc": 0, "start": "2025-12-17 21:05:19.293980", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004935", "end": "2025-12-17 21:05:19.336006", "msg": "", "rc": 0, "start": "2025-12-17 21:05:19.331071", "stderr": "", "stderr_lines": [], "stdout": "9.1%", "stdout_lines": ["9.1%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004992", "end": "2025-12-17 21:05:19.331987", "msg": "", "rc": 0, "start": "2025-12-17 21:05:19.326995", "stderr": "", "stderr_lines": [], "stdout": "49.1%", "stdout_lines": ["49.1%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005584", "end": "2025-12-17 21:05:19.345253", "msg": "", "rc": 0, "start": "2025-12-17 21:05:19.339669", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003791", "end": "2025-12-17 21:04:53.051842", "msg": "", "rc": 0, "start": "2025-12-17 21:04:53.048051", "stderr": "", "stderr_lines": [], "stdout": "71.2%", "stdout_lines": ["71.2%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004572", "end": "2025-12-17 21:04:46.487373", "msg": "", "rc": 0, "start": "2025-12-17 21:04:46.482801", "stderr": "", "stderr_lines": [], "stdout": "68.3%", "stdout_lines": ["68.3%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010923", "end": "2025-12-17 21:05:20.006992", "msg": "", "rc": 0, "start": "2025-12-17 21:05:19.996069", "stderr": "", "stderr_lines": [], "stdout": "6.9%", "stdout_lines": ["6.9%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011778", "end": "2025-12-17 21:05:20.029842", "msg": "", "rc": 0, "start": "2025-12-17 21:05:20.018064", "stderr": "", "stderr_lines": [], "stdout": "13.1%", "stdout_lines": ["13.1%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005644", "end": "2025-12-17 21:05:20.290855", "msg": "", "rc": 0, "start": "2025-12-17 21:05:20.285211", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004984", "end": "2025-12-17 21:04:49.692993", "msg": "", "rc": 0, "start": "2025-12-17 21:04:49.688009", "stderr": "", "stderr_lines": [], "stdout": "27.7%", "stdout_lines": ["27.7%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003988", "end": "2025-12-17 21:04:56.335075", "msg": "", "rc": 0, "start": "2025-12-17 21:04:56.331087", "stderr": "", "stderr_lines": [], "stdout": "61.4%", "stdout_lines": ["61.4%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006119", "end": "2025-12-17 18:05:20.505312", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 18:05:20.499193", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005396", "end": "2025-12-17 21:05:20.705531", "msg": "", "rc": 0, "start": "2025-12-17 21:05:20.700135", "stderr": "", "stderr_lines": [], "stdout": "13.7%", "stdout_lines": ["13.7%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.008702", "end": "2025-12-17 21:05:21.225889", "msg": "", "rc": 0, "start": "2025-12-17 21:05:21.217187", "stderr": "", "stderr_lines": [], "stdout": "12.4%", "stdout_lines": ["12.4%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025531", "end": "2025-12-17 21:05:20.673384", "msg": "", "rc": 0, "start": "2025-12-17 21:05:20.647853", "stderr": "", "stderr_lines": [], "stdout": "20.5%", "stdout_lines": ["20.5%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004936", "end": "2025-12-17 21:05:21.198392", "msg": "", "rc": 0, "start": "2025-12-17 21:05:21.193456", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005284", "end": "2025-12-17 21:05:21.197173", "msg": "", "rc": 0, "start": "2025-12-17 21:05:21.191889", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005644", "end": "2025-12-17 21:05:21.225950", "msg": "", "rc": 0, "start": "2025-12-17 21:05:21.220306", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003207", "end": "2025-12-17 21:05:21.246887", "msg": "", "rc": 0, "start": "2025-12-17 21:05:21.243680", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006411", "end": "2025-12-17 21:05:21.266759", "msg": "", "rc": 0, "start": "2025-12-17 21:05:21.260348", "stderr": "", "stderr_lines": [], "stdout": "52.0°C", "stdout_lines": ["52.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002897", "end": "2025-12-17 21:04:54.906444", "msg": "", "rc": 0, "start": "2025-12-17 21:04:54.903547", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002942", "end": "2025-12-17 21:04:48.375529", "msg": "", "rc": 0, "start": "2025-12-17 21:04:48.372587", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011878", "end": "2025-12-17 21:05:21.904759", "msg": "", "rc": 0, "start": "2025-12-17 21:05:21.892881", "stderr": "", "stderr_lines": [], "stdout": "30.7°C", "stdout_lines": ["30.7°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013017", "end": "2025-12-17 21:05:21.986683", "msg": "", "rc": 0, "start": "2025-12-17 21:05:21.973666", "stderr": "", "stderr_lines": [], "stdout": "35.5°C", "stdout_lines": ["35.5°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003381", "end": "2025-12-17 21:05:22.139794", "msg": "", "rc": 0, "start": "2025-12-17 21:05:22.136413", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003007", "end": "2025-12-17 21:04:51.538453", "msg": "", "rc": 0, "start": "2025-12-17 21:04:51.535446", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003499", "end": "2025-12-17 21:04:58.255088", "msg": "", "rc": 0, "start": "2025-12-17 21:04:58.251589", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003924", "end": "2025-12-17 18:05:22.440514", "msg": "", "rc": 0, "start": "2025-12-17 18:05:22.436590", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002927", "end": "2025-12-17 21:05:22.554594", "msg": "", "rc": 0, "start": "2025-12-17 21:05:22.551667", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003916", "end": "2025-12-17 21:05:23.117515", "msg": "", "rc": 0, "start": "2025-12-17 21:05:23.113599", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028301", "end": "2025-12-17 21:05:22.578663", "msg": "", "rc": 0, "start": "2025-12-17 21:05:22.550362", "stderr": "", "stderr_lines": [], "stdout": "34.6°C", "stdout_lines": ["34.6°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004089", "end": "2025-12-17 21:05:23.094503", "msg": "", "rc": 0, "start": "2025-12-17 21:05:23.090414", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004029", "end": "2025-12-17 21:05:23.116635", "msg": "", "rc": 0, "start": "2025-12-17 21:05:23.112606", "stderr": "", "stderr_lines": [], "stdout": "0.44", "stdout_lines": ["0.44"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005494", "end": "2025-12-17 21:05:23.146017", "msg": "", "rc": 0, "start": "2025-12-17 21:05:23.140523", "stderr": "", "stderr_lines": [], "stdout": "0.03", "stdout_lines": ["0.03"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005012", "end": "2025-12-17 21:05:23.144977", "msg": "", "rc": 0, "start": "2025-12-17 21:05:23.139965", "stderr": "", "stderr_lines": [], "stdout": "0.61", "stdout_lines": ["0.61"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005741", "end": "2025-12-17 21:05:23.180771", "msg": "", "rc": 0, "start": "2025-12-17 21:05:23.175030", "stderr": "", "stderr_lines": [], "stdout": "0.77", "stdout_lines": ["0.77"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004132", "end": "2025-12-17 21:04:56.871997", "msg": "", "rc": 0, "start": "2025-12-17 21:04:56.867865", "stderr": "", "stderr_lines": [], "stdout": "0.06", "stdout_lines": ["0.06"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005500", "end": "2025-12-17 21:04:50.324593", "msg": "", "rc": 0, "start": "2025-12-17 21:04:50.319093", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011419", "end": "2025-12-17 21:05:23.819701", "msg": "", "rc": 0, "start": "2025-12-17 21:05:23.808282", "stderr": "", "stderr_lines": [], "stdout": "0.20", "stdout_lines": ["0.20"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010155", "end": "2025-12-17 21:05:23.878816", "msg": "", "rc": 0, "start": "2025-12-17 21:05:23.868661", "stderr": "", "stderr_lines": [], "stdout": "0.25", "stdout_lines": ["0.25"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005590", "end": "2025-12-17 21:05:24.129780", "msg": "", "rc": 0, "start": "2025-12-17 21:05:24.124190", "stderr": "", "stderr_lines": [], "stdout": "0.01", "stdout_lines": ["0.01"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005285", "end": "2025-12-17 21:04:53.518014", "msg": "", "rc": 0, "start": "2025-12-17 21:04:53.512729", "stderr": "", "stderr_lines": [], "stdout": "0.66", "stdout_lines": ["0.66"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006164", "end": "2025-12-17 18:05:24.321276", "msg": "", "rc": 0, "start": "2025-12-17 18:05:24.315112", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004409", "end": "2025-12-17 21:05:00.162027", "msg": "", "rc": 0, "start": "2025-12-17 21:05:00.157618", "stderr": "", "stderr_lines": [], "stdout": "0.22", "stdout_lines": ["0.22"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005293", "end": "2025-12-17 21:05:24.542499", "msg": "", "rc": 0, "start": "2025-12-17 21:05:24.537206", "stderr": "", "stderr_lines": [], "stdout": "0.07", "stdout_lines": ["0.07"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024477", "end": "2025-12-17 21:05:24.484854", "msg": "", "rc": 0, "start": "2025-12-17 21:05:24.460377", "stderr": "", "stderr_lines": [], "stdout": "0.17", "stdout_lines": ["0.17"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.009170", "end": "2025-12-17 21:05:25.138138", "msg": "", "rc": 0, "start": "2025-12-17 21:05:25.128968", "stderr": "", "stderr_lines": [], "stdout": "1.76", "stdout_lines": ["1.76"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:05:15 up 3 days, 10:37, 1 user, load average: 0.48, 0.37, 0.45\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.44\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:05:15 up 22 days, 7:56, 1 user, load average: 0.09, 0.09, 0.09\nDisk Usage: 23%\nMemory Usage: 78.1%\nCPU Load: 0.08\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:05:15 up 22 days, 8:16, 1 user, load average: 0.66, 0.64, 0.68\nDisk Usage: 14%\nMemory Usage: 49.1%\nCPU Load: 0.61\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:05:15 up 22 days, 9:29, 1 user, load average: 0.75, 0.71, 0.65\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.77\nCPU Temp: 52.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:05:15 up 22 days, 10:15, 1 user, load average: 0.04, 0.01, 0.00\nDisk Usage: 9%\nMemory Usage: 9.1%\nCPU Load: 0.03\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:05:16 up 15 days, 10:31, 1 user, load average: 0.19, 0.13, 0.10\nDisk Usage: 21%\nMemory Usage: 20.5%\nCPU Load: 0.17\nCPU Temp: 34.6°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:05:16 up 194 days, 12:38, 1 user, load average: 0.22, 0.19, 0.18\nDisk Usage: 6%\nMemory Usage: 13.1%\nCPU Load: 0.20\nCPU Temp: 35.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:05:16 up 194 days, 12:38, 1 user, load average: 0.19, 0.13, 0.12\nDisk Usage: 3%\nMemory Usage: 6.9%\nCPU Load: 0.25\nCPU Temp: 30.7°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:04:49 up 11 days, 8:54, 0 user, load average: 0.07, 0.13, 0.10\nDisk Usage: 48%\nMemory Usage: 71.2%\nCPU Load: 0.06\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:04:42 up 18 days, 5:06, 0 user, load average: 0.00, 0.03, 0.00\nDisk Usage: 25%\nMemory Usage: 68.3%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:05:16 up 3 days, 10:36, 1 user, load average: 0.01, 0.05, 0.04\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.01\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:04:45 up 20 days, 23:59, 0 user, load average: 0.61, 0.46, 0.42\nDisk Usage: 28%\nMemory Usage: 27.7%\nCPU Load: 0.66\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:04:52 up 17 days, 10:20, 0 user, load average: 0.24, 0.29, 0.28\nDisk Usage: 76%\nMemory Usage: 61.4%\nCPU Load: 0.22\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 6:05PM up 22 days, 7:55, 1 user, load averages: 0.41, 0.26, 0.22\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:05:16 up 3 days, 10:36, 1 user, load average: 0.08, 0.06, 0.01\nDisk Usage: 79%\nMemory Usage: 13.7%\nCPU Load: 0.07\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:05:17 up 1:12, 1 user, load average: 1.47, 1.12, 1.13\nDisk Usage: 1%\nMemory Usage: 12.4%\nCPU Load: 1.76\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T02:05:25.404583+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_021523_ca6966_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_021523_ca6966_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..f77c8c1 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_021523_ca6966_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `bcbe137ed7cd4e14b9ab11b910596a25` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T02:15:00.001749+00:00 | +| **Fin** | 2025-12-18T02:15:23.387463+00:00 | +| **Durée** | 23.4s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [dev.prod.home] +ok: [hp.truenas.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003433", "end": "2025-12-17 21:15:12.432049", "msg": "", "rc": 0, "start": "2025-12-17 21:15:12.428616", "stderr": "", "stderr_lines": [], "stdout": " 21:15:12 up 22 days, 8:06, 1 user, load average: 0.08, 0.06, 0.08", "stdout_lines": [" 21:15:12 up 22 days, 8:06, 1 user, load average: 0.08, 0.06, 0.08"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003867", "end": "2025-12-17 21:15:12.447375", "msg": "", "rc": 0, "start": "2025-12-17 21:15:12.443508", "stderr": "", "stderr_lines": [], "stdout": " 21:15:12 up 22 days, 10:25, 1 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 21:15:12 up 22 days, 10:25, 1 user, load average: 0.00, 0.00, 0.00"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003668", "end": "2025-12-17 21:15:12.456293", "msg": "", "rc": 0, "start": "2025-12-17 21:15:12.452625", "stderr": "", "stderr_lines": [], "stdout": " 21:15:12 up 22 days, 8:26, 1 user, load average: 1.08, 1.04, 0.86", "stdout_lines": [" 21:15:12 up 22 days, 8:26, 1 user, load average: 1.08, 1.04, 0.86"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003085", "end": "2025-12-17 21:15:12.473580", "msg": "", "rc": 0, "start": "2025-12-17 21:15:12.470495", "stderr": "", "stderr_lines": [], "stdout": " 21:15:12 up 3 days, 10:47, 1 user, load average: 0.33, 0.27, 0.35", "stdout_lines": [" 21:15:12 up 3 days, 10:47, 1 user, load average: 0.33, 0.27, 0.35"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004305", "end": "2025-12-17 21:15:12.479721", "msg": "", "rc": 0, "start": "2025-12-17 21:15:12.475416", "stderr": "", "stderr_lines": [], "stdout": " 21:15:12 up 22 days, 9:39, 1 user, load average: 0.70, 0.62, 0.63", "stdout_lines": [" 21:15:12 up 22 days, 9:39, 1 user, load average: 0.70, 0.62, 0.63"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003011", "end": "2025-12-17 21:14:46.187398", "msg": "", "rc": 0, "start": "2025-12-17 21:14:46.184387", "stderr": "", "stderr_lines": [], "stdout": " 21:14:46 up 11 days, 9:04, 0 user, load average: 0.12, 0.11, 0.09", "stdout_lines": [" 21:14:46 up 11 days, 9:04, 0 user, load average: 0.12, 0.11, 0.09"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003512", "end": "2025-12-17 21:14:39.674204", "msg": "", "rc": 0, "start": "2025-12-17 21:14:39.670692", "stderr": "", "stderr_lines": [], "stdout": " 21:14:39 up 18 days, 5:16, 0 user, load average: 0.03, 0.03, 0.00", "stdout_lines": [" 21:14:39 up 18 days, 5:16, 0 user, load average: 0.03, 0.03, 0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008486", "end": "2025-12-17 21:15:13.156074", "msg": "", "rc": 0, "start": "2025-12-17 21:15:13.147588", "stderr": "", "stderr_lines": [], "stdout": " 21:15:13 up 194 days, 12:48, 1 user, load average: 0.23, 0.16, 0.11", "stdout_lines": [" 21:15:13 up 194 days, 12:48, 1 user, load average: 0.23, 0.16, 0.11"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.010247", "end": "2025-12-17 21:15:13.214939", "msg": "", "rc": 0, "start": "2025-12-17 21:15:13.204692", "stderr": "", "stderr_lines": [], "stdout": " 21:15:13 up 194 days, 12:48, 1 user, load average: 0.29, 0.18, 0.18", "stdout_lines": [" 21:15:13 up 194 days, 12:48, 1 user, load average: 0.29, 0.18, 0.18"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004816", "end": "2025-12-17 21:15:13.440207", "msg": "", "rc": 0, "start": "2025-12-17 21:15:13.435391", "stderr": "", "stderr_lines": [], "stdout": " 21:15:13 up 3 days, 10:46, 1 user, load average: 0.00, 0.03, 0.01", "stdout_lines": [" 21:15:13 up 3 days, 10:46, 1 user, load average: 0.00, 0.03, 0.01"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003261", "end": "2025-12-17 21:14:42.868075", "msg": "", "rc": 0, "start": "2025-12-17 21:14:42.864814", "stderr": "", "stderr_lines": [], "stdout": " 21:14:42 up 21 days, 9 min, 0 user, load average: 0.30, 0.34, 0.38", "stdout_lines": [" 21:14:42 up 21 days, 9 min, 0 user, load average: 0.30, 0.34, 0.38"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002670", "end": "2025-12-17 21:14:49.506599", "msg": "", "rc": 0, "start": "2025-12-17 21:14:49.503929", "stderr": "", "stderr_lines": [], "stdout": " 21:14:49 up 17 days, 10:30, 0 user, load average: 0.23, 0.32, 0.32", "stdout_lines": [" 21:14:49 up 17 days, 10:30, 0 user, load average: 0.23, 0.32, 0.32"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004126", "end": "2025-12-17 18:15:13.706963", "msg": "", "rc": 0, "start": "2025-12-17 18:15:13.702837", "stderr": "", "stderr_lines": [], "stdout": " 6:15PM up 22 days, 8:05, 1 user, load averages: 0.24, 0.20, 0.18", "stdout_lines": [" 6:15PM up 22 days, 8:05, 1 user, load averages: 0.24, 0.20, 0.18"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003758", "end": "2025-12-17 21:15:13.870238", "msg": "", "rc": 0, "start": "2025-12-17 21:15:13.866480", "stderr": "", "stderr_lines": [], "stdout": " 21:15:13 up 3 days, 10:46, 1 user, load average: 0.17, 0.31, 0.16", "stdout_lines": [" 21:15:13 up 3 days, 10:46, 1 user, load average: 0.17, 0.31, 0.16"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.007461", "end": "2025-12-17 21:15:14.295940", "msg": "", "rc": 0, "start": "2025-12-17 21:15:14.288479", "stderr": "", "stderr_lines": [], "stdout": " 21:15:14 up 1:22, 1 user, load average: 1.26, 1.25, 1.18", "stdout_lines": [" 21:15:14 up 1:22, 1 user, load average: 1.26, 1.25, 1.18"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.025159", "end": "2025-12-17 21:15:13.985600", "msg": "", "rc": 0, "start": "2025-12-17 21:15:13.960441", "stderr": "", "stderr_lines": [], "stdout": " 21:15:13 up 15 days, 10:41, 1 user, load average: 0.36, 0.14, 0.10", "stdout_lines": [" 21:15:13 up 15 days, 10:41, 1 user, load average: 0.36, 0.14, 0.10"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004075", "end": "2025-12-17 21:15:14.543135", "msg": "", "rc": 0, "start": "2025-12-17 21:15:14.539060", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004693", "end": "2025-12-17 21:15:14.559067", "msg": "", "rc": 0, "start": "2025-12-17 21:15:14.554374", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004105", "end": "2025-12-17 21:15:14.569698", "msg": "", "rc": 0, "start": "2025-12-17 21:15:14.565593", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005383", "end": "2025-12-17 21:15:14.603351", "msg": "", "rc": 0, "start": "2025-12-17 21:15:14.597968", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004735", "end": "2025-12-17 21:15:14.613941", "msg": "", "rc": 0, "start": "2025-12-17 21:15:14.609206", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005123", "end": "2025-12-17 21:14:48.295949", "msg": "", "rc": 0, "start": "2025-12-17 21:14:48.290826", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005326", "end": "2025-12-17 21:14:41.733532", "msg": "", "rc": 0, "start": "2025-12-17 21:14:41.728206", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010588", "end": "2025-12-17 21:15:15.309256", "msg": "", "rc": 0, "start": "2025-12-17 21:15:15.298668", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011592", "end": "2025-12-17 21:15:15.341824", "msg": "", "rc": 0, "start": "2025-12-17 21:15:15.330232", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005923", "end": "2025-12-17 21:15:15.556482", "msg": "", "rc": 0, "start": "2025-12-17 21:15:15.550559", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005844", "end": "2025-12-17 21:14:44.935620", "msg": "", "rc": 0, "start": "2025-12-17 21:14:44.929776", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005301", "end": "2025-12-17 18:15:15.806596", "msg": "", "rc": 0, "start": "2025-12-17 18:15:15.801295", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004953", "end": "2025-12-17 21:14:51.655224", "msg": "", "rc": 0, "start": "2025-12-17 21:14:51.650271", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005538", "end": "2025-12-17 21:15:15.968307", "msg": "", "rc": 0, "start": "2025-12-17 21:15:15.962769", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.018566", "end": "2025-12-17 21:15:16.378487", "msg": "", "rc": 0, "start": "2025-12-17 21:15:16.359921", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.030792", "end": "2025-12-17 21:15:16.231687", "msg": "", "rc": 0, "start": "2025-12-17 21:15:16.200895", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004108", "end": "2025-12-17 21:15:16.788833", "msg": "", "rc": 0, "start": "2025-12-17 21:15:16.784725", "stderr": "", "stderr_lines": [], "stdout": "78.1%", "stdout_lines": ["78.1%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004169", "end": "2025-12-17 21:15:16.818928", "msg": "", "rc": 0, "start": "2025-12-17 21:15:16.814759", "stderr": "", "stderr_lines": [], "stdout": "22.7%", "stdout_lines": ["22.7%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005040", "end": "2025-12-17 21:15:16.828770", "msg": "", "rc": 0, "start": "2025-12-17 21:15:16.823730", "stderr": "", "stderr_lines": [], "stdout": "49.1%", "stdout_lines": ["49.1%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005450", "end": "2025-12-17 21:15:16.858344", "msg": "", "rc": 0, "start": "2025-12-17 21:15:16.852894", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005193", "end": "2025-12-17 21:15:16.865986", "msg": "", "rc": 0, "start": "2025-12-17 21:15:16.860793", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003833", "end": "2025-12-17 21:14:50.542923", "msg": "", "rc": 0, "start": "2025-12-17 21:14:50.539090", "stderr": "", "stderr_lines": [], "stdout": "71.2%", "stdout_lines": ["71.2%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004565", "end": "2025-12-17 21:14:43.983477", "msg": "", "rc": 0, "start": "2025-12-17 21:14:43.978912", "stderr": "", "stderr_lines": [], "stdout": "68.1%", "stdout_lines": ["68.1%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011068", "end": "2025-12-17 21:15:17.505864", "msg": "", "rc": 0, "start": "2025-12-17 21:15:17.494796", "stderr": "", "stderr_lines": [], "stdout": "6.9%", "stdout_lines": ["6.9%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012012", "end": "2025-12-17 21:15:17.542275", "msg": "", "rc": 0, "start": "2025-12-17 21:15:17.530263", "stderr": "", "stderr_lines": [], "stdout": "13.0%", "stdout_lines": ["13.0%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005863", "end": "2025-12-17 21:15:17.786159", "msg": "", "rc": 0, "start": "2025-12-17 21:15:17.780296", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004730", "end": "2025-12-17 21:14:47.162071", "msg": "", "rc": 0, "start": "2025-12-17 21:14:47.157341", "stderr": "", "stderr_lines": [], "stdout": "27.3%", "stdout_lines": ["27.3%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005372", "end": "2025-12-17 18:15:18.014588", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 18:15:18.009216", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004873", "end": "2025-12-17 21:14:53.845908", "msg": "", "rc": 0, "start": "2025-12-17 21:14:53.841035", "stderr": "", "stderr_lines": [], "stdout": "61.9%", "stdout_lines": ["61.9%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005990", "end": "2025-12-17 21:15:18.207856", "msg": "", "rc": 0, "start": "2025-12-17 21:15:18.201866", "stderr": "", "stderr_lines": [], "stdout": "14.0%", "stdout_lines": ["14.0%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.009846", "end": "2025-12-17 21:15:18.665884", "msg": "", "rc": 0, "start": "2025-12-17 21:15:18.656038", "stderr": "", "stderr_lines": [], "stdout": "12.5%", "stdout_lines": ["12.5%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025946", "end": "2025-12-17 21:15:18.177930", "msg": "", "rc": 0, "start": "2025-12-17 21:15:18.151984", "stderr": "", "stderr_lines": [], "stdout": "19.7%", "stdout_lines": ["19.7%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005301", "end": "2025-12-17 21:15:18.695918", "msg": "", "rc": 0, "start": "2025-12-17 21:15:18.690617", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004824", "end": "2025-12-17 21:15:18.731247", "msg": "", "rc": 0, "start": "2025-12-17 21:15:18.726423", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005682", "end": "2025-12-17 21:15:18.736902", "msg": "", "rc": 0, "start": "2025-12-17 21:15:18.731220", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003345", "end": "2025-12-17 21:15:18.762990", "msg": "", "rc": 0, "start": "2025-12-17 21:15:18.759645", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006457", "end": "2025-12-17 21:15:18.771868", "msg": "", "rc": 0, "start": "2025-12-17 21:15:18.765411", "stderr": "", "stderr_lines": [], "stdout": "52.0°C", "stdout_lines": ["52.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002569", "end": "2025-12-17 21:14:52.448632", "msg": "", "rc": 0, "start": "2025-12-17 21:14:52.446063", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003515", "end": "2025-12-17 21:14:45.911018", "msg": "", "rc": 0, "start": "2025-12-17 21:14:45.907503", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011813", "end": "2025-12-17 21:15:19.389940", "msg": "", "rc": 0, "start": "2025-12-17 21:15:19.378127", "stderr": "", "stderr_lines": [], "stdout": "31.2°C", "stdout_lines": ["31.2°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012869", "end": "2025-12-17 21:15:19.434874", "msg": "", "rc": 0, "start": "2025-12-17 21:15:19.422005", "stderr": "", "stderr_lines": [], "stdout": "35.5°C", "stdout_lines": ["35.5°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003154", "end": "2025-12-17 21:15:19.671573", "msg": "", "rc": 0, "start": "2025-12-17 21:15:19.668419", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002778", "end": "2025-12-17 21:14:49.070383", "msg": "", "rc": 0, "start": "2025-12-17 21:14:49.067605", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002651", "end": "2025-12-17 21:14:55.706549", "msg": "", "rc": 0, "start": "2025-12-17 21:14:55.703898", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004382", "end": "2025-12-17 18:15:19.891890", "msg": "", "rc": 0, "start": "2025-12-17 18:15:19.887508", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002964", "end": "2025-12-17 21:15:20.104113", "msg": "", "rc": 0, "start": "2025-12-17 21:15:20.101149", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004550", "end": "2025-12-17 21:15:20.579673", "msg": "", "rc": 0, "start": "2025-12-17 21:15:20.575123", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028370", "end": "2025-12-17 21:15:20.087912", "msg": "", "rc": 0, "start": "2025-12-17 21:15:20.059542", "stderr": "", "stderr_lines": [], "stdout": "35.1°C", "stdout_lines": ["35.1°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004054", "end": "2025-12-17 21:15:20.602517", "msg": "", "rc": 0, "start": "2025-12-17 21:15:20.598463", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004529", "end": "2025-12-17 21:15:20.619487", "msg": "", "rc": 0, "start": "2025-12-17 21:15:20.614958", "stderr": "", "stderr_lines": [], "stdout": "0.99", "stdout_lines": ["0.99"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.003993", "end": "2025-12-17 21:15:20.631790", "msg": "", "rc": 0, "start": "2025-12-17 21:15:20.627797", "stderr": "", "stderr_lines": [], "stdout": "0.44", "stdout_lines": ["0.44"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005017", "end": "2025-12-17 21:15:20.646597", "msg": "", "rc": 0, "start": "2025-12-17 21:15:20.641580", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005488", "end": "2025-12-17 21:15:20.673354", "msg": "", "rc": 0, "start": "2025-12-17 21:15:20.667866", "stderr": "", "stderr_lines": [], "stdout": "0.68", "stdout_lines": ["0.68"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004305", "end": "2025-12-17 21:14:54.340733", "msg": "", "rc": 0, "start": "2025-12-17 21:14:54.336428", "stderr": "", "stderr_lines": [], "stdout": "0.19", "stdout_lines": ["0.19"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004967", "end": "2025-12-17 21:14:47.791340", "msg": "", "rc": 0, "start": "2025-12-17 21:14:47.786373", "stderr": "", "stderr_lines": [], "stdout": "0.02", "stdout_lines": ["0.02"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010189", "end": "2025-12-17 21:15:21.368210", "msg": "", "rc": 0, "start": "2025-12-17 21:15:21.358021", "stderr": "", "stderr_lines": [], "stdout": "0.19", "stdout_lines": ["0.19"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011146", "end": "2025-12-17 21:15:21.433084", "msg": "", "rc": 0, "start": "2025-12-17 21:15:21.421938", "stderr": "", "stderr_lines": [], "stdout": "0.24", "stdout_lines": ["0.24"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005721", "end": "2025-12-17 21:15:21.587509", "msg": "", "rc": 0, "start": "2025-12-17 21:15:21.581788", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004824", "end": "2025-12-17 21:14:50.953846", "msg": "", "rc": 0, "start": "2025-12-17 21:14:50.949022", "stderr": "", "stderr_lines": [], "stdout": "0.28", "stdout_lines": ["0.28"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004198", "end": "2025-12-17 21:14:57.693775", "msg": "", "rc": 0, "start": "2025-12-17 21:14:57.689577", "stderr": "", "stderr_lines": [], "stdout": "0.20", "stdout_lines": ["0.20"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006599", "end": "2025-12-17 18:15:21.892288", "msg": "", "rc": 0, "start": "2025-12-17 18:15:21.885689", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005259", "end": "2025-12-17 21:15:22.001665", "msg": "", "rc": 0, "start": "2025-12-17 21:15:21.996406", "stderr": "", "stderr_lines": [], "stdout": "0.14", "stdout_lines": ["0.14"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.007788", "end": "2025-12-17 21:15:22.498421", "msg": "", "rc": 0, "start": "2025-12-17 21:15:22.490633", "stderr": "", "stderr_lines": [], "stdout": "1.67", "stdout_lines": ["1.67"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024170", "end": "2025-12-17 21:15:21.990798", "msg": "", "rc": 0, "start": "2025-12-17 21:15:21.966628", "stderr": "", "stderr_lines": [], "stdout": "0.60", "stdout_lines": ["0.60"]} + +TASK [Display health status] *************************************************** +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:15:12 up 22 days, 8:06, 1 user, load average: 0.08, 0.06, 0.08\nDisk Usage: 23%\nMemory Usage: 78.1%\nCPU Load: 0.08\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:15:12 up 22 days, 8:26, 1 user, load average: 1.08, 1.04, 0.86\nDisk Usage: 14%\nMemory Usage: 49.1%\nCPU Load: 0.99\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:15:12 up 3 days, 10:47, 1 user, load average: 0.33, 0.27, 0.35\nDisk Usage: 22%\nMemory Usage: 22.7%\nCPU Load: 0.44\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:15:12 up 22 days, 9:39, 1 user, load average: 0.70, 0.62, 0.63\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.68\nCPU Temp: 52.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:15:12 up 22 days, 10:25, 1 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:15:13 up 15 days, 10:41, 1 user, load average: 0.36, 0.14, 0.10\nDisk Usage: 21%\nMemory Usage: 19.7%\nCPU Load: 0.60\nCPU Temp: 35.1°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:15:13 up 194 days, 12:48, 1 user, load average: 0.29, 0.18, 0.18\nDisk Usage: 6%\nMemory Usage: 13.0%\nCPU Load: 0.24\nCPU Temp: 35.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:15:13 up 194 days, 12:48, 1 user, load average: 0.23, 0.16, 0.11\nDisk Usage: 3%\nMemory Usage: 6.9%\nCPU Load: 0.19\nCPU Temp: 31.2°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:14:46 up 11 days, 9:04, 0 user, load average: 0.12, 0.11, 0.09\nDisk Usage: 48%\nMemory Usage: 71.2%\nCPU Load: 0.19\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:14:39 up 18 days, 5:16, 0 user, load average: 0.03, 0.03, 0.00\nDisk Usage: 25%\nMemory Usage: 68.1%\nCPU Load: 0.02\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:15:13 up 3 days, 10:46, 1 user, load average: 0.00, 0.03, 0.01\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:14:42 up 21 days, 9 min, 0 user, load average: 0.30, 0.34, 0.38\nDisk Usage: 28%\nMemory Usage: 27.3%\nCPU Load: 0.28\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:14:49 up 17 days, 10:30, 0 user, load average: 0.23, 0.32, 0.32\nDisk Usage: 76%\nMemory Usage: 61.9%\nCPU Load: 0.20\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 6:15PM up 22 days, 8:05, 1 user, load averages: 0.24, 0.20, 0.18\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:15:13 up 3 days, 10:46, 1 user, load average: 0.17, 0.31, 0.16\nDisk Usage: 79%\nMemory Usage: 14.0%\nCPU Load: 0.14\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:15:14 up 1:22, 1 user, load average: 1.26, 1.25, 1.18\nDisk Usage: 1%\nMemory Usage: 12.5%\nCPU Load: 1.67\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T02:15:23.470542+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_022022_d37d12_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_022022_d37d12_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..37fd776 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_022022_d37d12_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `3043731193774a2caf2b794e973571ba` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T02:20:00.000787+00:00 | +| **Fin** | 2025-12-18T02:20:21.966179+00:00 | +| **Durée** | 22.0s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [dev.prod.home] +ok: [hp.truenas.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003230", "end": "2025-12-17 21:20:11.525508", "msg": "", "rc": 0, "start": "2025-12-17 21:20:11.522278", "stderr": "", "stderr_lines": [], "stdout": " 21:20:11 up 22 days, 8:11, 1 user, load average: 0.31, 0.14, 0.10", "stdout_lines": [" 21:20:11 up 22 days, 8:11, 1 user, load average: 0.31, 0.14, 0.10"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003294", "end": "2025-12-17 21:20:11.536073", "msg": "", "rc": 0, "start": "2025-12-17 21:20:11.532779", "stderr": "", "stderr_lines": [], "stdout": " 21:20:11 up 22 days, 8:31, 1 user, load average: 0.89, 0.92, 0.85", "stdout_lines": [" 21:20:11 up 22 days, 8:31, 1 user, load average: 0.89, 0.92, 0.85"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004015", "end": "2025-12-17 21:20:11.538236", "msg": "", "rc": 0, "start": "2025-12-17 21:20:11.534221", "stderr": "", "stderr_lines": [], "stdout": " 21:20:11 up 22 days, 10:30, 1 user, load average: 0.19, 0.08, 0.02", "stdout_lines": [" 21:20:11 up 22 days, 10:30, 1 user, load average: 0.19, 0.08, 0.02"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002807", "end": "2025-12-17 21:20:11.564787", "msg": "", "rc": 0, "start": "2025-12-17 21:20:11.561980", "stderr": "", "stderr_lines": [], "stdout": " 21:20:11 up 3 days, 10:52, 1 user, load average: 0.37, 0.25, 0.32", "stdout_lines": [" 21:20:11 up 3 days, 10:52, 1 user, load average: 0.37, 0.25, 0.32"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003961", "end": "2025-12-17 21:20:11.566147", "msg": "", "rc": 0, "start": "2025-12-17 21:20:11.562186", "stderr": "", "stderr_lines": [], "stdout": " 21:20:11 up 22 days, 9:44, 1 user, load average: 0.44, 0.60, 0.63", "stdout_lines": [" 21:20:11 up 22 days, 9:44, 1 user, load average: 0.44, 0.60, 0.63"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002813", "end": "2025-12-17 21:19:45.218370", "msg": "", "rc": 0, "start": "2025-12-17 21:19:45.215557", "stderr": "", "stderr_lines": [], "stdout": " 21:19:45 up 11 days, 9:09, 0 user, load average: 0.25, 0.20, 0.13", "stdout_lines": [" 21:19:45 up 11 days, 9:09, 0 user, load average: 0.25, 0.20, 0.13"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003536", "end": "2025-12-17 21:19:38.686645", "msg": "", "rc": 0, "start": "2025-12-17 21:19:38.683109", "stderr": "", "stderr_lines": [], "stdout": " 21:19:38 up 18 days, 5:21, 0 user, load average: 0.02, 0.02, 0.00", "stdout_lines": [" 21:19:38 up 18 days, 5:21, 0 user, load average: 0.02, 0.02, 0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008435", "end": "2025-12-17 21:20:12.190847", "msg": "", "rc": 0, "start": "2025-12-17 21:20:12.182412", "stderr": "", "stderr_lines": [], "stdout": " 21:20:12 up 194 days, 12:53, 1 user, load average: 0.07, 0.11, 0.09", "stdout_lines": [" 21:20:12 up 194 days, 12:53, 1 user, load average: 0.07, 0.11, 0.09"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009253", "end": "2025-12-17 21:20:12.227966", "msg": "", "rc": 0, "start": "2025-12-17 21:20:12.218713", "stderr": "", "stderr_lines": [], "stdout": " 21:20:12 up 194 days, 12:53, 1 user, load average: 0.07, 0.13, 0.16", "stdout_lines": [" 21:20:12 up 194 days, 12:53, 1 user, load average: 0.07, 0.13, 0.16"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.005362", "end": "2025-12-17 21:20:12.461292", "msg": "", "rc": 0, "start": "2025-12-17 21:20:12.455930", "stderr": "", "stderr_lines": [], "stdout": " 21:20:12 up 3 days, 10:51, 1 user, load average: 0.00, 0.01, 0.00", "stdout_lines": [" 21:20:12 up 3 days, 10:51, 1 user, load average: 0.00, 0.01, 0.00"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002720", "end": "2025-12-17 21:19:48.516780", "msg": "", "rc": 0, "start": "2025-12-17 21:19:48.514060", "stderr": "", "stderr_lines": [], "stdout": " 21:19:48 up 17 days, 10:35, 0 user, load average: 0.06, 0.22, 0.27", "stdout_lines": [" 21:19:48 up 17 days, 10:35, 0 user, load average: 0.06, 0.22, 0.27"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004173", "end": "2025-12-17 18:20:12.690588", "msg": "", "rc": 0, "start": "2025-12-17 18:20:12.686415", "stderr": "", "stderr_lines": [], "stdout": " 6:20PM up 22 days, 8:10, 1 user, load averages: 0.14, 0.17, 0.16", "stdout_lines": [" 6:20PM up 22 days, 8:10, 1 user, load averages: 0.14, 0.17, 0.16"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003374", "end": "2025-12-17 21:19:41.895230", "msg": "", "rc": 0, "start": "2025-12-17 21:19:41.891856", "stderr": "", "stderr_lines": [], "stdout": " 21:19:41 up 21 days, 13 min, 0 user, load average: 0.54, 0.43, 0.41", "stdout_lines": [" 21:19:41 up 21 days, 13 min, 0 user, load average: 0.54, 0.43, 0.41"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003702", "end": "2025-12-17 21:20:12.885751", "msg": "", "rc": 0, "start": "2025-12-17 21:20:12.882049", "stderr": "", "stderr_lines": [], "stdout": " 21:20:12 up 3 days, 10:51, 1 user, load average: 0.07, 0.12, 0.10", "stdout_lines": [" 21:20:12 up 3 days, 10:51, 1 user, load average: 0.07, 0.12, 0.10"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.006997", "end": "2025-12-17 21:20:13.547079", "msg": "", "rc": 0, "start": "2025-12-17 21:20:13.540082", "stderr": "", "stderr_lines": [], "stdout": " 21:20:13 up 1:27, 1 user, load average: 1.18, 1.18, 1.17", "stdout_lines": [" 21:20:13 up 1:27, 1 user, load average: 1.18, 1.18, 1.17"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.021766", "end": "2025-12-17 21:20:12.925873", "msg": "", "rc": 0, "start": "2025-12-17 21:20:12.904107", "stderr": "", "stderr_lines": [], "stdout": " 21:20:12 up 15 days, 10:46, 1 user, load average: 0.20, 0.16, 0.11", "stdout_lines": [" 21:20:12 up 15 days, 10:46, 1 user, load average: 0.20, 0.16, 0.11"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004114", "end": "2025-12-17 21:20:13.477110", "msg": "", "rc": 0, "start": "2025-12-17 21:20:13.472996", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004064", "end": "2025-12-17 21:20:13.493114", "msg": "", "rc": 0, "start": "2025-12-17 21:20:13.489050", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004533", "end": "2025-12-17 21:20:13.507913", "msg": "", "rc": 0, "start": "2025-12-17 21:20:13.503380", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004521", "end": "2025-12-17 21:20:13.529665", "msg": "", "rc": 0, "start": "2025-12-17 21:20:13.525144", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005881", "end": "2025-12-17 21:20:13.560872", "msg": "", "rc": 0, "start": "2025-12-17 21:20:13.554991", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004743", "end": "2025-12-17 21:19:47.196643", "msg": "", "rc": 0, "start": "2025-12-17 21:19:47.191900", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.012005", "end": "2025-12-17 21:19:40.684078", "msg": "", "rc": 0, "start": "2025-12-17 21:19:40.672073", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010461", "end": "2025-12-17 21:20:14.223370", "msg": "", "rc": 0, "start": "2025-12-17 21:20:14.212909", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011515", "end": "2025-12-17 21:20:14.241526", "msg": "", "rc": 0, "start": "2025-12-17 21:20:14.230011", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005828", "end": "2025-12-17 21:20:14.451343", "msg": "", "rc": 0, "start": "2025-12-17 21:20:14.445515", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.009458", "end": "2025-12-17 21:19:43.886711", "msg": "", "rc": 0, "start": "2025-12-17 21:19:43.877253", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005323", "end": "2025-12-17 18:20:14.713740", "msg": "", "rc": 0, "start": "2025-12-17 18:20:14.708417", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005375", "end": "2025-12-17 21:19:50.555583", "msg": "", "rc": 0, "start": "2025-12-17 21:19:50.550208", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005332", "end": "2025-12-17 21:20:14.872941", "msg": "", "rc": 0, "start": "2025-12-17 21:20:14.867609", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.015955", "end": "2025-12-17 21:20:15.048810", "msg": "", "rc": 0, "start": "2025-12-17 21:20:15.032855", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.028018", "end": "2025-12-17 21:20:15.085843", "msg": "", "rc": 0, "start": "2025-12-17 21:20:15.057825", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004202", "end": "2025-12-17 21:20:15.627608", "msg": "", "rc": 0, "start": "2025-12-17 21:20:15.623406", "stderr": "", "stderr_lines": [], "stdout": "78.2%", "stdout_lines": ["78.2%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004194", "end": "2025-12-17 21:20:15.648649", "msg": "", "rc": 0, "start": "2025-12-17 21:20:15.644455", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004571", "end": "2025-12-17 21:20:15.663503", "msg": "", "rc": 0, "start": "2025-12-17 21:20:15.658932", "stderr": "", "stderr_lines": [], "stdout": "49.3%", "stdout_lines": ["49.3%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004367", "end": "2025-12-17 21:20:15.678214", "msg": "", "rc": 0, "start": "2025-12-17 21:20:15.673847", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005539", "end": "2025-12-17 21:20:15.706757", "msg": "", "rc": 0, "start": "2025-12-17 21:20:15.701218", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003857", "end": "2025-12-17 21:19:49.359525", "msg": "", "rc": 0, "start": "2025-12-17 21:19:49.355668", "stderr": "", "stderr_lines": [], "stdout": "71.3%", "stdout_lines": ["71.3%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004294", "end": "2025-12-17 21:19:42.805768", "msg": "", "rc": 0, "start": "2025-12-17 21:19:42.801474", "stderr": "", "stderr_lines": [], "stdout": "68.3%", "stdout_lines": ["68.3%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010790", "end": "2025-12-17 21:20:16.340507", "msg": "", "rc": 0, "start": "2025-12-17 21:20:16.329717", "stderr": "", "stderr_lines": [], "stdout": "6.9%", "stdout_lines": ["6.9%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011862", "end": "2025-12-17 21:20:16.371861", "msg": "", "rc": 0, "start": "2025-12-17 21:20:16.359999", "stderr": "", "stderr_lines": [], "stdout": "13.0%", "stdout_lines": ["13.0%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006529", "end": "2025-12-17 21:20:16.605975", "msg": "", "rc": 0, "start": "2025-12-17 21:20:16.599446", "stderr": "", "stderr_lines": [], "stdout": "35.6%", "stdout_lines": ["35.6%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004096", "end": "2025-12-17 21:19:45.969416", "msg": "", "rc": 0, "start": "2025-12-17 21:19:45.965320", "stderr": "", "stderr_lines": [], "stdout": "27.2%", "stdout_lines": ["27.2%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005152", "end": "2025-12-17 18:20:16.821408", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 18:20:16.816256", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003577", "end": "2025-12-17 21:19:52.651552", "msg": "", "rc": 0, "start": "2025-12-17 21:19:52.647975", "stderr": "", "stderr_lines": [], "stdout": "59.5%", "stdout_lines": ["59.5%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005686", "end": "2025-12-17 21:20:17.032472", "msg": "", "rc": 0, "start": "2025-12-17 21:20:17.026786", "stderr": "", "stderr_lines": [], "stdout": "13.9%", "stdout_lines": ["13.9%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.009254", "end": "2025-12-17 21:20:17.189283", "msg": "", "rc": 0, "start": "2025-12-17 21:20:17.180029", "stderr": "", "stderr_lines": [], "stdout": "12.9%", "stdout_lines": ["12.9%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025638", "end": "2025-12-17 21:20:17.094490", "msg": "", "rc": 0, "start": "2025-12-17 21:20:17.068852", "stderr": "", "stderr_lines": [], "stdout": "19.8%", "stdout_lines": ["19.8%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005510", "end": "2025-12-17 21:20:17.619365", "msg": "", "rc": 0, "start": "2025-12-17 21:20:17.613855", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005039", "end": "2025-12-17 21:20:17.629575", "msg": "", "rc": 0, "start": "2025-12-17 21:20:17.624536", "stderr": "", "stderr_lines": [], "stdout": "48.0°C", "stdout_lines": ["48.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005448", "end": "2025-12-17 21:20:17.656284", "msg": "", "rc": 0, "start": "2025-12-17 21:20:17.650836", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003171", "end": "2025-12-17 21:20:17.662773", "msg": "", "rc": 0, "start": "2025-12-17 21:20:17.659602", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006139", "end": "2025-12-17 21:20:17.681124", "msg": "", "rc": 0, "start": "2025-12-17 21:20:17.674985", "stderr": "", "stderr_lines": [], "stdout": "52.0°C", "stdout_lines": ["52.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003034", "end": "2025-12-17 21:19:51.362791", "msg": "", "rc": 0, "start": "2025-12-17 21:19:51.359757", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003250", "end": "2025-12-17 21:19:44.780103", "msg": "", "rc": 0, "start": "2025-12-17 21:19:44.776853", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011889", "end": "2025-12-17 21:20:18.315402", "msg": "", "rc": 0, "start": "2025-12-17 21:20:18.303513", "stderr": "", "stderr_lines": [], "stdout": "29.7°C", "stdout_lines": ["29.7°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013262", "end": "2025-12-17 21:20:18.346306", "msg": "", "rc": 0, "start": "2025-12-17 21:20:18.333044", "stderr": "", "stderr_lines": [], "stdout": "34.6°C", "stdout_lines": ["34.6°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003162", "end": "2025-12-17 21:20:18.621765", "msg": "", "rc": 0, "start": "2025-12-17 21:20:18.618603", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003124", "end": "2025-12-17 21:19:47.937647", "msg": "", "rc": 0, "start": "2025-12-17 21:19:47.934523", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003868", "end": "2025-12-17 18:20:18.800153", "msg": "", "rc": 0, "start": "2025-12-17 18:20:18.796285", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002549", "end": "2025-12-17 21:19:54.628682", "msg": "", "rc": 0, "start": "2025-12-17 21:19:54.626133", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004362", "end": "2025-12-17 21:20:19.163960", "msg": "", "rc": 0, "start": "2025-12-17 21:20:19.159598", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002925", "end": "2025-12-17 21:20:19.042001", "msg": "", "rc": 0, "start": "2025-12-17 21:20:19.039076", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028628", "end": "2025-12-17 21:20:19.015801", "msg": "", "rc": 0, "start": "2025-12-17 21:20:18.987173", "stderr": "", "stderr_lines": [], "stdout": "34.7°C", "stdout_lines": ["34.7°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004158", "end": "2025-12-17 21:20:19.540219", "msg": "", "rc": 0, "start": "2025-12-17 21:20:19.536061", "stderr": "", "stderr_lines": [], "stdout": "0.26", "stdout_lines": ["0.26"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004006", "end": "2025-12-17 21:20:19.554229", "msg": "", "rc": 0, "start": "2025-12-17 21:20:19.550223", "stderr": "", "stderr_lines": [], "stdout": "0.42", "stdout_lines": ["0.42"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005775", "end": "2025-12-17 21:20:19.595980", "msg": "", "rc": 0, "start": "2025-12-17 21:20:19.590205", "stderr": "", "stderr_lines": [], "stdout": "0.16", "stdout_lines": ["0.16"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004640", "end": "2025-12-17 21:20:19.586384", "msg": "", "rc": 0, "start": "2025-12-17 21:20:19.581744", "stderr": "", "stderr_lines": [], "stdout": "1.14", "stdout_lines": ["1.14"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005346", "end": "2025-12-17 21:20:19.603654", "msg": "", "rc": 0, "start": "2025-12-17 21:20:19.598308", "stderr": "", "stderr_lines": [], "stdout": "0.67", "stdout_lines": ["0.67"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004458", "end": "2025-12-17 21:19:53.283133", "msg": "", "rc": 0, "start": "2025-12-17 21:19:53.278675", "stderr": "", "stderr_lines": [], "stdout": "0.21", "stdout_lines": ["0.21"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005002", "end": "2025-12-17 21:19:46.740187", "msg": "", "rc": 0, "start": "2025-12-17 21:19:46.735185", "stderr": "", "stderr_lines": [], "stdout": "0.01", "stdout_lines": ["0.01"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010178", "end": "2025-12-17 21:20:20.344514", "msg": "", "rc": 0, "start": "2025-12-17 21:20:20.334336", "stderr": "", "stderr_lines": [], "stdout": "0.06", "stdout_lines": ["0.06"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011001", "end": "2025-12-17 21:20:20.356738", "msg": "", "rc": 0, "start": "2025-12-17 21:20:20.345737", "stderr": "", "stderr_lines": [], "stdout": "0.22", "stdout_lines": ["0.22"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005547", "end": "2025-12-17 21:20:20.521976", "msg": "", "rc": 0, "start": "2025-12-17 21:20:20.516429", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004712", "end": "2025-12-17 21:19:49.902373", "msg": "", "rc": 0, "start": "2025-12-17 21:19:49.897661", "stderr": "", "stderr_lines": [], "stdout": "0.50", "stdout_lines": ["0.50"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005743", "end": "2025-12-17 18:20:20.820247", "msg": "", "rc": 0, "start": "2025-12-17 18:20:20.814504", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005078", "end": "2025-12-17 21:19:56.694433", "msg": "", "rc": 0, "start": "2025-12-17 21:19:56.689355", "stderr": "", "stderr_lines": [], "stdout": "0.14", "stdout_lines": ["0.14"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005194", "end": "2025-12-17 21:20:20.939546", "msg": "", "rc": 0, "start": "2025-12-17 21:20:20.934352", "stderr": "", "stderr_lines": [], "stdout": "0.06", "stdout_lines": ["0.06"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006827", "end": "2025-12-17 21:20:21.143097", "msg": "", "rc": 0, "start": "2025-12-17 21:20:21.136270", "stderr": "", "stderr_lines": [], "stdout": "1.25", "stdout_lines": ["1.25"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.023891", "end": "2025-12-17 21:20:20.927889", "msg": "", "rc": 0, "start": "2025-12-17 21:20:20.903998", "stderr": "", "stderr_lines": [], "stdout": "0.32", "stdout_lines": ["0.32"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:20:11 up 3 days, 10:52, 1 user, load average: 0.37, 0.25, 0.32\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.42\nCPU Temp: 48.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:20:11 up 22 days, 8:11, 1 user, load average: 0.31, 0.14, 0.10\nDisk Usage: 23%\nMemory Usage: 78.2%\nCPU Load: 0.26\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:20:11 up 22 days, 8:31, 1 user, load average: 0.89, 0.92, 0.85\nDisk Usage: 14%\nMemory Usage: 49.3%\nCPU Load: 1.14\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:20:11 up 22 days, 9:44, 1 user, load average: 0.44, 0.60, 0.63\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.67\nCPU Temp: 52.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:20:11 up 22 days, 10:30, 1 user, load average: 0.19, 0.08, 0.02\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.16\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:20:12 up 15 days, 10:46, 1 user, load average: 0.20, 0.16, 0.11\nDisk Usage: 21%\nMemory Usage: 19.8%\nCPU Load: 0.32\nCPU Temp: 34.7°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:20:12 up 194 days, 12:53, 1 user, load average: 0.07, 0.13, 0.16\nDisk Usage: 6%\nMemory Usage: 13.0%\nCPU Load: 0.22\nCPU Temp: 34.6°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:20:12 up 194 days, 12:53, 1 user, load average: 0.07, 0.11, 0.09\nDisk Usage: 3%\nMemory Usage: 6.9%\nCPU Load: 0.06\nCPU Temp: 29.7°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:19:45 up 11 days, 9:09, 0 user, load average: 0.25, 0.20, 0.13\nDisk Usage: 48%\nMemory Usage: 71.3%\nCPU Load: 0.21\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:19:38 up 18 days, 5:21, 0 user, load average: 0.02, 0.02, 0.00\nDisk Usage: 25%\nMemory Usage: 68.3%\nCPU Load: 0.01\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:20:12 up 3 days, 10:51, 1 user, load average: 0.00, 0.01, 0.00\nDisk Usage: 1%\nMemory Usage: 35.6%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:19:41 up 21 days, 13 min, 0 user, load average: 0.54, 0.43, 0.41\nDisk Usage: 28%\nMemory Usage: 27.2%\nCPU Load: 0.50\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:19:48 up 17 days, 10:35, 0 user, load average: 0.06, 0.22, 0.27\nDisk Usage: 76%\nMemory Usage: 59.5%\nCPU Load: 0.14\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 6:20PM up 22 days, 8:10, 1 user, load averages: 0.14, 0.17, 0.16\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:20:12 up 3 days, 10:51, 1 user, load average: 0.07, 0.12, 0.10\nDisk Usage: 79%\nMemory Usage: 13.9%\nCPU Load: 0.06\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:20:13 up 1:27, 1 user, load average: 1.18, 1.18, 1.17\nDisk Usage: 1%\nMemory Usage: 12.9%\nCPU Load: 1.25\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T02:20:22.013923+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_022523_1a3b33_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_022523_1a3b33_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..f23b8aa --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_022523_1a3b33_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `afe67fa3b08a4d53af1493e6a3f396e2` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T02:25:00.002045+00:00 | +| **Fin** | 2025-12-18T02:25:23.295522+00:00 | +| **Durée** | 23.3s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003569", "end": "2025-12-17 21:25:12.691601", "msg": "", "rc": 0, "start": "2025-12-17 21:25:12.688032", "stderr": "", "stderr_lines": [], "stdout": " 21:25:12 up 22 days, 8:36, 1 user, load average: 0.47, 0.80, 0.82", "stdout_lines": [" 21:25:12 up 22 days, 8:36, 1 user, load average: 0.47, 0.80, 0.82"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003654", "end": "2025-12-17 21:25:12.690211", "msg": "", "rc": 0, "start": "2025-12-17 21:25:12.686557", "stderr": "", "stderr_lines": [], "stdout": " 21:25:12 up 22 days, 10:35, 1 user, load average: 0.04, 0.05, 0.00", "stdout_lines": [" 21:25:12 up 22 days, 10:35, 1 user, load average: 0.04, 0.05, 0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003817", "end": "2025-12-17 21:25:12.707677", "msg": "", "rc": 0, "start": "2025-12-17 21:25:12.703860", "stderr": "", "stderr_lines": [], "stdout": " 21:25:12 up 22 days, 9:49, 1 user, load average: 1.11, 0.72, 0.66", "stdout_lines": [" 21:25:12 up 22 days, 9:49, 1 user, load average: 1.11, 0.72, 0.66"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002873", "end": "2025-12-17 21:25:12.718637", "msg": "", "rc": 0, "start": "2025-12-17 21:25:12.715764", "stderr": "", "stderr_lines": [], "stdout": " 21:25:12 up 3 days, 10:57, 2 users, load average: 0.21, 0.20, 0.27", "stdout_lines": [" 21:25:12 up 3 days, 10:57, 2 users, load average: 0.21, 0.20, 0.27"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002787", "end": "2025-12-17 21:24:46.407006", "msg": "", "rc": 0, "start": "2025-12-17 21:24:46.404219", "stderr": "", "stderr_lines": [], "stdout": " 21:24:46 up 11 days, 9:14, 0 user, load average: 0.01, 0.10, 0.10", "stdout_lines": [" 21:24:46 up 11 days, 9:14, 0 user, load average: 0.01, 0.10, 0.10"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008325", "end": "2025-12-17 21:25:13.382188", "msg": "", "rc": 0, "start": "2025-12-17 21:25:13.373863", "stderr": "", "stderr_lines": [], "stdout": " 21:25:13 up 194 days, 12:58, 1 user, load average: 0.08, 0.10, 0.09", "stdout_lines": [" 21:25:13 up 194 days, 12:58, 1 user, load average: 0.08, 0.10, 0.09"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.010230", "end": "2025-12-17 21:25:13.431243", "msg": "", "rc": 0, "start": "2025-12-17 21:25:13.421013", "stderr": "", "stderr_lines": [], "stdout": " 21:25:13 up 194 days, 12:58, 1 user, load average: 0.18, 0.16, 0.17", "stdout_lines": [" 21:25:13 up 194 days, 12:58, 1 user, load average: 0.18, 0.16, 0.17"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.003989", "end": "2025-12-17 21:25:13.674549", "msg": "", "rc": 0, "start": "2025-12-17 21:25:12.670560", "stderr": "", "stderr_lines": [], "stdout": " 21:25:12 up 22 days, 8:16, 1 user, load average: 0.00, 0.06, 0.07", "stdout_lines": [" 21:25:12 up 22 days, 8:16, 1 user, load average: 0.00, 0.06, 0.07"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003580", "end": "2025-12-17 21:24:40.311239", "msg": "", "rc": 0, "start": "2025-12-17 21:24:40.307659", "stderr": "", "stderr_lines": [], "stdout": " 21:24:40 up 18 days, 5:26, 0 user, load average: 0.03, 0.11, 0.05", "stdout_lines": [" 21:24:40 up 18 days, 5:26, 0 user, load average: 0.03, 0.11, 0.05"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004831", "end": "2025-12-17 21:25:13.897177", "msg": "", "rc": 0, "start": "2025-12-17 21:25:13.892346", "stderr": "", "stderr_lines": [], "stdout": " 21:25:13 up 3 days, 10:56, 1 user, load average: 0.24, 0.11, 0.04", "stdout_lines": [" 21:25:13 up 3 days, 10:56, 1 user, load average: 0.24, 0.11, 0.04"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003284", "end": "2025-12-17 21:24:43.260851", "msg": "", "rc": 0, "start": "2025-12-17 21:24:43.257567", "stderr": "", "stderr_lines": [], "stdout": " 21:24:43 up 21 days, 19 min, 0 user, load average: 0.42, 0.43, 0.40", "stdout_lines": [" 21:24:43 up 21 days, 19 min, 0 user, load average: 0.42, 0.43, 0.40"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003072", "end": "2025-12-17 21:24:49.977102", "msg": "", "rc": 0, "start": "2025-12-17 21:24:49.974030", "stderr": "", "stderr_lines": [], "stdout": " 21:24:49 up 17 days, 10:40, 0 user, load average: 0.45, 0.43, 0.36", "stdout_lines": [" 21:24:49 up 17 days, 10:40, 0 user, load average: 0.45, 0.43, 0.36"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004250", "end": "2025-12-17 18:25:14.195255", "msg": "", "rc": 0, "start": "2025-12-17 18:25:14.191005", "stderr": "", "stderr_lines": [], "stdout": " 6:25PM up 22 days, 8:15, 1 user, load averages: 0.27, 0.22, 0.17", "stdout_lines": [" 6:25PM up 22 days, 8:15, 1 user, load averages: 0.27, 0.22, 0.17"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019383", "end": "2025-12-17 21:25:14.074553", "msg": "", "rc": 0, "start": "2025-12-17 21:25:14.055170", "stderr": "", "stderr_lines": [], "stdout": " 21:25:14 up 15 days, 10:51, 1 user, load average: 0.17, 0.13, 0.10", "stdout_lines": [" 21:25:14 up 15 days, 10:51, 1 user, load average: 0.17, 0.13, 0.10"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003838", "end": "2025-12-17 21:25:14.335652", "msg": "", "rc": 0, "start": "2025-12-17 21:25:14.331814", "stderr": "", "stderr_lines": [], "stdout": " 21:25:14 up 3 days, 10:56, 1 user, load average: 0.00, 0.04, 0.07", "stdout_lines": [" 21:25:14 up 3 days, 10:56, 1 user, load average: 0.00, 0.04, 0.07"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008184", "end": "2025-12-17 21:25:14.643275", "msg": "", "rc": 0, "start": "2025-12-17 21:25:14.635091", "stderr": "", "stderr_lines": [], "stdout": " 21:25:14 up 1:32, 1 user, load average: 1.24, 1.14, 1.15", "stdout_lines": [" 21:25:14 up 1:32, 1 user, load average: 1.24, 1.14, 1.15"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004175", "end": "2025-12-17 21:25:14.755089", "msg": "", "rc": 0, "start": "2025-12-17 21:25:14.750914", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004112", "end": "2025-12-17 21:25:14.779841", "msg": "", "rc": 0, "start": "2025-12-17 21:25:14.775729", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004399", "end": "2025-12-17 21:25:14.789275", "msg": "", "rc": 0, "start": "2025-12-17 21:25:14.784876", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004639", "end": "2025-12-17 21:25:14.806593", "msg": "", "rc": 0, "start": "2025-12-17 21:25:14.801954", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006514", "end": "2025-12-17 21:25:14.840371", "msg": "", "rc": 0, "start": "2025-12-17 21:25:14.833857", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.007034", "end": "2025-12-17 21:24:48.505082", "msg": "", "rc": 0, "start": "2025-12-17 21:24:48.498048", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.008615", "end": "2025-12-17 21:24:41.977731", "msg": "", "rc": 0, "start": "2025-12-17 21:24:41.969116", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010448", "end": "2025-12-17 21:25:15.537698", "msg": "", "rc": 0, "start": "2025-12-17 21:25:15.527250", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011528", "end": "2025-12-17 21:25:15.531239", "msg": "", "rc": 0, "start": "2025-12-17 21:25:15.519711", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005801", "end": "2025-12-17 21:25:15.766946", "msg": "", "rc": 0, "start": "2025-12-17 21:25:15.761145", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005344", "end": "2025-12-17 21:24:45.194852", "msg": "", "rc": 0, "start": "2025-12-17 21:24:45.189508", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005530", "end": "2025-12-17 18:25:16.032289", "msg": "", "rc": 0, "start": "2025-12-17 18:25:16.026759", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005975", "end": "2025-12-17 21:24:51.899581", "msg": "", "rc": 0, "start": "2025-12-17 21:24:51.893606", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005334", "end": "2025-12-17 21:25:16.205963", "msg": "", "rc": 0, "start": "2025-12-17 21:25:16.200629", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025655", "end": "2025-12-17 21:25:16.140947", "msg": "", "rc": 0, "start": "2025-12-17 21:25:16.115292", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.019886", "end": "2025-12-17 21:25:16.606018", "msg": "", "rc": 0, "start": "2025-12-17 21:25:16.586132", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004299", "end": "2025-12-17 21:25:16.715895", "msg": "", "rc": 0, "start": "2025-12-17 21:25:16.711596", "stderr": "", "stderr_lines": [], "stdout": "78.2%", "stdout_lines": ["78.2%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004161", "end": "2025-12-17 21:25:16.727347", "msg": "", "rc": 0, "start": "2025-12-17 21:25:16.723186", "stderr": "", "stderr_lines": [], "stdout": "22.5%", "stdout_lines": ["22.5%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005103", "end": "2025-12-17 21:25:16.763301", "msg": "", "rc": 0, "start": "2025-12-17 21:25:16.758198", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004762", "end": "2025-12-17 21:25:16.761044", "msg": "", "rc": 0, "start": "2025-12-17 21:25:16.756282", "stderr": "", "stderr_lines": [], "stdout": "49.2%", "stdout_lines": ["49.2%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006376", "end": "2025-12-17 21:25:16.787927", "msg": "", "rc": 0, "start": "2025-12-17 21:25:16.781551", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004356", "end": "2025-12-17 21:24:50.505217", "msg": "", "rc": 0, "start": "2025-12-17 21:24:50.500861", "stderr": "", "stderr_lines": [], "stdout": "71.1%", "stdout_lines": ["71.1%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006982", "end": "2025-12-17 21:24:43.921459", "msg": "", "rc": 0, "start": "2025-12-17 21:24:43.914477", "stderr": "", "stderr_lines": [], "stdout": "68.2%", "stdout_lines": ["68.2%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010767", "end": "2025-12-17 21:25:17.425912", "msg": "", "rc": 0, "start": "2025-12-17 21:25:17.415145", "stderr": "", "stderr_lines": [], "stdout": "6.9%", "stdout_lines": ["6.9%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012018", "end": "2025-12-17 21:25:17.431898", "msg": "", "rc": 0, "start": "2025-12-17 21:25:17.419880", "stderr": "", "stderr_lines": [], "stdout": "12.9%", "stdout_lines": ["12.9%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005756", "end": "2025-12-17 21:25:17.765253", "msg": "", "rc": 0, "start": "2025-12-17 21:25:17.759497", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005385", "end": "2025-12-17 18:25:17.911509", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 18:25:17.906124", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004616", "end": "2025-12-17 21:24:53.745180", "msg": "", "rc": 0, "start": "2025-12-17 21:24:53.740564", "stderr": "", "stderr_lines": [], "stdout": "59.5%", "stdout_lines": ["59.5%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005410", "end": "2025-12-17 21:24:47.123410", "msg": "", "rc": 0, "start": "2025-12-17 21:24:47.118000", "stderr": "", "stderr_lines": [], "stdout": "27.1%", "stdout_lines": ["27.1%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005420", "end": "2025-12-17 21:25:18.183373", "msg": "", "rc": 0, "start": "2025-12-17 21:25:18.177953", "stderr": "", "stderr_lines": [], "stdout": "13.9%", "stdout_lines": ["13.9%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.008269", "end": "2025-12-17 21:25:18.535512", "msg": "", "rc": 0, "start": "2025-12-17 21:25:18.527243", "stderr": "", "stderr_lines": [], "stdout": "12.6%", "stdout_lines": ["12.6%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025664", "end": "2025-12-17 21:25:18.107828", "msg": "", "rc": 0, "start": "2025-12-17 21:25:18.082164", "stderr": "", "stderr_lines": [], "stdout": "19.8%", "stdout_lines": ["19.8%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005232", "end": "2025-12-17 21:25:18.651878", "msg": "", "rc": 0, "start": "2025-12-17 21:25:18.646646", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004818", "end": "2025-12-17 21:25:18.657287", "msg": "", "rc": 0, "start": "2025-12-17 21:25:18.652469", "stderr": "", "stderr_lines": [], "stdout": "47.0°C", "stdout_lines": ["47.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006049", "end": "2025-12-17 21:25:18.674975", "msg": "", "rc": 0, "start": "2025-12-17 21:25:18.668926", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002805", "end": "2025-12-17 21:25:18.691788", "msg": "", "rc": 0, "start": "2025-12-17 21:25:18.688983", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006214", "end": "2025-12-17 21:25:18.694038", "msg": "", "rc": 0, "start": "2025-12-17 21:25:18.687824", "stderr": "", "stderr_lines": [], "stdout": "52.0°C", "stdout_lines": ["52.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002671", "end": "2025-12-17 21:24:52.345875", "msg": "", "rc": 0, "start": "2025-12-17 21:24:52.343204", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003096", "end": "2025-12-17 21:24:45.780899", "msg": "", "rc": 0, "start": "2025-12-17 21:24:45.777803", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011730", "end": "2025-12-17 21:25:19.337456", "msg": "", "rc": 0, "start": "2025-12-17 21:25:19.325726", "stderr": "", "stderr_lines": [], "stdout": "29.7°C", "stdout_lines": ["29.7°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012980", "end": "2025-12-17 21:25:19.366128", "msg": "", "rc": 0, "start": "2025-12-17 21:25:19.353148", "stderr": "", "stderr_lines": [], "stdout": "34.6°C", "stdout_lines": ["34.6°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003507", "end": "2025-12-17 21:25:19.591318", "msg": "", "rc": 0, "start": "2025-12-17 21:25:19.587811", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003114", "end": "2025-12-17 21:24:48.955580", "msg": "", "rc": 0, "start": "2025-12-17 21:24:48.952466", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003059", "end": "2025-12-17 21:24:55.655821", "msg": "", "rc": 0, "start": "2025-12-17 21:24:55.652762", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003883", "end": "2025-12-17 18:25:19.841853", "msg": "", "rc": 0, "start": "2025-12-17 18:25:19.837970", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002984", "end": "2025-12-17 21:25:20.037556", "msg": "", "rc": 0, "start": "2025-12-17 21:25:20.034572", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004175", "end": "2025-12-17 21:25:20.431182", "msg": "", "rc": 0, "start": "2025-12-17 21:25:20.427007", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028196", "end": "2025-12-17 21:25:20.040426", "msg": "", "rc": 0, "start": "2025-12-17 21:25:20.012230", "stderr": "", "stderr_lines": [], "stdout": "33.5°C", "stdout_lines": ["33.5°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004123", "end": "2025-12-17 21:25:20.571769", "msg": "", "rc": 0, "start": "2025-12-17 21:25:20.567646", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004605", "end": "2025-12-17 21:25:20.588483", "msg": "", "rc": 0, "start": "2025-12-17 21:25:20.583878", "stderr": "", "stderr_lines": [], "stdout": "0.55", "stdout_lines": ["0.55"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004009", "end": "2025-12-17 21:25:20.597084", "msg": "", "rc": 0, "start": "2025-12-17 21:25:20.593075", "stderr": "", "stderr_lines": [], "stdout": "0.33", "stdout_lines": ["0.33"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005349", "end": "2025-12-17 21:25:20.610249", "msg": "", "rc": 0, "start": "2025-12-17 21:25:20.604900", "stderr": "", "stderr_lines": [], "stdout": "0.04", "stdout_lines": ["0.04"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005529", "end": "2025-12-17 21:25:20.637833", "msg": "", "rc": 0, "start": "2025-12-17 21:25:20.632304", "stderr": "", "stderr_lines": [], "stdout": "1.02", "stdout_lines": ["1.02"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004584", "end": "2025-12-17 21:24:54.309634", "msg": "", "rc": 0, "start": "2025-12-17 21:24:54.305050", "stderr": "", "stderr_lines": [], "stdout": "0.01", "stdout_lines": ["0.01"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005507", "end": "2025-12-17 21:24:47.755386", "msg": "", "rc": 0, "start": "2025-12-17 21:24:47.749879", "stderr": "", "stderr_lines": [], "stdout": "0.03", "stdout_lines": ["0.03"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010061", "end": "2025-12-17 21:25:21.331080", "msg": "", "rc": 0, "start": "2025-12-17 21:25:21.321019", "stderr": "", "stderr_lines": [], "stdout": "0.07", "stdout_lines": ["0.07"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011149", "end": "2025-12-17 21:25:21.364548", "msg": "", "rc": 0, "start": "2025-12-17 21:25:21.353399", "stderr": "", "stderr_lines": [], "stdout": "0.22", "stdout_lines": ["0.22"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005684", "end": "2025-12-17 21:25:21.578262", "msg": "", "rc": 0, "start": "2025-12-17 21:25:21.572578", "stderr": "", "stderr_lines": [], "stdout": "0.22", "stdout_lines": ["0.22"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005259", "end": "2025-12-17 21:24:50.934934", "msg": "", "rc": 0, "start": "2025-12-17 21:24:50.929675", "stderr": "", "stderr_lines": [], "stdout": "0.47", "stdout_lines": ["0.47"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005721", "end": "2025-12-17 18:25:21.840574", "msg": "", "rc": 0, "start": "2025-12-17 18:25:21.834853", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004712", "end": "2025-12-17 21:24:57.682497", "msg": "", "rc": 0, "start": "2025-12-17 21:24:57.677785", "stderr": "", "stderr_lines": [], "stdout": "0.41", "stdout_lines": ["0.41"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005186", "end": "2025-12-17 21:25:21.994126", "msg": "", "rc": 0, "start": "2025-12-17 21:25:21.988940", "stderr": "", "stderr_lines": [], "stdout": "0.24", "stdout_lines": ["0.24"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.008698", "end": "2025-12-17 21:25:22.435441", "msg": "", "rc": 0, "start": "2025-12-17 21:25:22.426743", "stderr": "", "stderr_lines": [], "stdout": "1.22", "stdout_lines": ["1.22"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024373", "end": "2025-12-17 21:25:21.957838", "msg": "", "rc": 0, "start": "2025-12-17 21:25:21.933465", "stderr": "", "stderr_lines": [], "stdout": "0.22", "stdout_lines": ["0.22"]} + +TASK [Display health status] *************************************************** +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:25:12 up 22 days, 8:16, 1 user, load average: 0.00, 0.06, 0.07\nDisk Usage: 23%\nMemory Usage: 78.2%\nCPU Load: 0.00\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:25:12 up 3 days, 10:57, 2 users, load average: 0.21, 0.20, 0.27\nDisk Usage: 22%\nMemory Usage: 22.5%\nCPU Load: 0.33\nCPU Temp: 47.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:25:12 up 22 days, 8:36, 1 user, load average: 0.47, 0.80, 0.82\nDisk Usage: 14%\nMemory Usage: 49.2%\nCPU Load: 0.55\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:25:12 up 22 days, 9:49, 1 user, load average: 1.11, 0.72, 0.66\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 1.02\nCPU Temp: 52.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:25:12 up 22 days, 10:35, 1 user, load average: 0.04, 0.05, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.04\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:25:14 up 15 days, 10:51, 1 user, load average: 0.17, 0.13, 0.10\nDisk Usage: 21%\nMemory Usage: 19.8%\nCPU Load: 0.22\nCPU Temp: 33.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:25:13 up 194 days, 12:58, 1 user, load average: 0.18, 0.16, 0.17\nDisk Usage: 6%\nMemory Usage: 12.9%\nCPU Load: 0.22\nCPU Temp: 34.6°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:25:13 up 194 days, 12:58, 1 user, load average: 0.08, 0.10, 0.09\nDisk Usage: 3%\nMemory Usage: 6.9%\nCPU Load: 0.07\nCPU Temp: 29.7°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:24:46 up 11 days, 9:14, 0 user, load average: 0.01, 0.10, 0.10\nDisk Usage: 48%\nMemory Usage: 71.1%\nCPU Load: 0.01\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:24:40 up 18 days, 5:26, 0 user, load average: 0.03, 0.11, 0.05\nDisk Usage: 25%\nMemory Usage: 68.2%\nCPU Load: 0.03\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:25:13 up 3 days, 10:56, 1 user, load average: 0.24, 0.11, 0.04\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.22\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:24:43 up 21 days, 19 min, 0 user, load average: 0.42, 0.43, 0.40\nDisk Usage: 28%\nMemory Usage: 27.1%\nCPU Load: 0.47\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:24:49 up 17 days, 10:40, 0 user, load average: 0.45, 0.43, 0.36\nDisk Usage: 76%\nMemory Usage: 59.5%\nCPU Load: 0.41\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 6:25PM up 22 days, 8:15, 1 user, load averages: 0.27, 0.22, 0.17\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:25:14 up 3 days, 10:56, 1 user, load average: 0.00, 0.04, 0.07\nDisk Usage: 79%\nMemory Usage: 13.9%\nCPU Load: 0.24\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:25:14 up 1:32, 1 user, load average: 1.24, 1.14, 1.15\nDisk Usage: 1%\nMemory Usage: 12.6%\nCPU Load: 1.22\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T02:25:23.345667+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_023021_e6dfaa_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_023021_e6dfaa_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..bc0447c --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_023021_e6dfaa_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `f1a782f8ec8648e59c2796cd3bbef1e0` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T02:30:00.001394+00:00 | +| **Fin** | 2025-12-18T02:30:21.603135+00:00 | +| **Durée** | 21.6s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003822", "end": "2025-12-17 21:30:11.372505", "msg": "", "rc": 0, "start": "2025-12-17 21:30:11.368683", "stderr": "", "stderr_lines": [], "stdout": " 21:30:11 up 22 days, 10:40, 1 user, load average: 0.00, 0.01, 0.00", "stdout_lines": [" 21:30:11 up 22 days, 10:40, 1 user, load average: 0.00, 0.01, 0.00"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003758", "end": "2025-12-17 21:30:11.374310", "msg": "", "rc": 0, "start": "2025-12-17 21:30:11.370552", "stderr": "", "stderr_lines": [], "stdout": " 21:30:11 up 22 days, 8:41, 1 user, load average: 0.71, 0.74, 0.79", "stdout_lines": [" 21:30:11 up 22 days, 8:41, 1 user, load average: 0.71, 0.74, 0.79"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003968", "end": "2025-12-17 21:30:11.387281", "msg": "", "rc": 0, "start": "2025-12-17 21:30:11.383313", "stderr": "", "stderr_lines": [], "stdout": " 21:30:11 up 22 days, 9:54, 1 user, load average: 0.85, 0.66, 0.64", "stdout_lines": [" 21:30:11 up 22 days, 9:54, 1 user, load average: 0.85, 0.66, 0.64"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002889", "end": "2025-12-17 21:30:11.395415", "msg": "", "rc": 0, "start": "2025-12-17 21:30:11.392526", "stderr": "", "stderr_lines": [], "stdout": " 21:30:11 up 3 days, 11:02, 1 user, load average: 0.32, 0.31, 0.29", "stdout_lines": [" 21:30:11 up 3 days, 11:02, 1 user, load average: 0.32, 0.31, 0.29"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003251", "end": "2025-12-17 21:29:45.071802", "msg": "", "rc": 0, "start": "2025-12-17 21:29:45.068551", "stderr": "", "stderr_lines": [], "stdout": " 21:29:45 up 11 days, 9:19, 0 user, load average: 0.04, 0.07, 0.08", "stdout_lines": [" 21:29:45 up 11 days, 9:19, 0 user, load average: 0.04, 0.07, 0.08"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008518", "end": "2025-12-17 21:30:12.081018", "msg": "", "rc": 0, "start": "2025-12-17 21:30:12.072500", "stderr": "", "stderr_lines": [], "stdout": " 21:30:12 up 194 days, 13:03, 1 user, load average: 0.10, 0.13, 0.10", "stdout_lines": [" 21:30:12 up 194 days, 13:03, 1 user, load average: 0.10, 0.13, 0.10"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009283", "end": "2025-12-17 21:30:12.108747", "msg": "", "rc": 0, "start": "2025-12-17 21:30:12.099464", "stderr": "", "stderr_lines": [], "stdout": " 21:30:12 up 194 days, 13:03, 1 user, load average: 0.14, 0.21, 0.19", "stdout_lines": [" 21:30:12 up 194 days, 13:03, 1 user, load average: 0.14, 0.21, 0.19"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004444", "end": "2025-12-17 21:30:12.348756", "msg": "", "rc": 0, "start": "2025-12-17 21:30:11.344312", "stderr": "", "stderr_lines": [], "stdout": " 21:30:11 up 22 days, 8:21, 1 user, load average: 0.31, 0.14, 0.10", "stdout_lines": [" 21:30:11 up 22 days, 8:21, 1 user, load average: 0.31, 0.14, 0.10"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003389", "end": "2025-12-17 21:29:38.950676", "msg": "", "rc": 0, "start": "2025-12-17 21:29:38.947287", "stderr": "", "stderr_lines": [], "stdout": " 21:29:38 up 18 days, 5:31, 0 user, load average: 0.05, 0.08, 0.04", "stdout_lines": [" 21:29:38 up 18 days, 5:31, 0 user, load average: 0.05, 0.08, 0.04"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004773", "end": "2025-12-17 21:30:12.595143", "msg": "", "rc": 0, "start": "2025-12-17 21:30:12.590370", "stderr": "", "stderr_lines": [], "stdout": " 21:30:12 up 3 days, 11:01, 1 user, load average: 0.18, 0.11, 0.05", "stdout_lines": [" 21:30:12 up 3 days, 11:01, 1 user, load average: 0.18, 0.11, 0.05"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003326", "end": "2025-12-17 21:29:41.885880", "msg": "", "rc": 0, "start": "2025-12-17 21:29:41.882554", "stderr": "", "stderr_lines": [], "stdout": " 21:29:41 up 21 days, 23 min, 0 user, load average: 0.73, 0.58, 0.47", "stdout_lines": [" 21:29:41 up 21 days, 23 min, 0 user, load average: 0.73, 0.58, 0.47"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004220", "end": "2025-12-17 18:30:12.819802", "msg": "", "rc": 0, "start": "2025-12-17 18:30:12.815582", "stderr": "", "stderr_lines": [], "stdout": " 6:30PM up 22 days, 8:20, 1 user, load averages: 0.28, 0.25, 0.19", "stdout_lines": [" 6:30PM up 22 days, 8:20, 1 user, load averages: 0.28, 0.25, 0.19"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002966", "end": "2025-12-17 21:29:48.643603", "msg": "", "rc": 0, "start": "2025-12-17 21:29:48.640637", "stderr": "", "stderr_lines": [], "stdout": " 21:29:48 up 17 days, 10:45, 0 user, load average: 0.24, 0.31, 0.33", "stdout_lines": [" 21:29:48 up 17 days, 10:45, 0 user, load average: 0.24, 0.31, 0.33"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019597", "end": "2025-12-17 21:30:12.761821", "msg": "", "rc": 0, "start": "2025-12-17 21:30:12.742224", "stderr": "", "stderr_lines": [], "stdout": " 21:30:12 up 15 days, 10:56, 1 user, load average: 0.37, 0.16, 0.11", "stdout_lines": [" 21:30:12 up 15 days, 10:56, 1 user, load average: 0.37, 0.16, 0.11"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.006330", "end": "2025-12-17 21:30:13.514773", "msg": "", "rc": 0, "start": "2025-12-17 21:30:13.508443", "stderr": "", "stderr_lines": [], "stdout": " 21:30:13 up 1:37, 1 user, load average: 1.26, 1.15, 1.15", "stdout_lines": [" 21:30:13 up 1:37, 1 user, load average: 1.26, 1.15, 1.15"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003634", "end": "2025-12-17 21:30:13.010529", "msg": "", "rc": 0, "start": "2025-12-17 21:30:13.006895", "stderr": "", "stderr_lines": [], "stdout": " 21:30:13 up 3 days, 11:01, 1 user, load average: 0.09, 0.08, 0.08", "stdout_lines": [" 21:30:13 up 3 days, 11:01, 1 user, load average: 0.09, 0.08, 0.08"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004378", "end": "2025-12-17 21:30:13.409983", "msg": "", "rc": 0, "start": "2025-12-17 21:30:13.405605", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004321", "end": "2025-12-17 21:30:13.430797", "msg": "", "rc": 0, "start": "2025-12-17 21:30:13.426476", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004749", "end": "2025-12-17 21:30:13.462364", "msg": "", "rc": 0, "start": "2025-12-17 21:30:13.457615", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005579", "end": "2025-12-17 21:30:13.459104", "msg": "", "rc": 0, "start": "2025-12-17 21:30:13.453525", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005355", "end": "2025-12-17 21:30:13.471496", "msg": "", "rc": 0, "start": "2025-12-17 21:30:13.466141", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005265", "end": "2025-12-17 21:29:47.143506", "msg": "", "rc": 0, "start": "2025-12-17 21:29:47.138241", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005648", "end": "2025-12-17 21:29:40.576273", "msg": "", "rc": 0, "start": "2025-12-17 21:29:40.570625", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010717", "end": "2025-12-17 21:30:14.181391", "msg": "", "rc": 0, "start": "2025-12-17 21:30:14.170674", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011511", "end": "2025-12-17 21:30:14.179000", "msg": "", "rc": 0, "start": "2025-12-17 21:30:14.167489", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005759", "end": "2025-12-17 21:30:14.409330", "msg": "", "rc": 0, "start": "2025-12-17 21:30:14.403571", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005771", "end": "2025-12-17 21:29:43.747612", "msg": "", "rc": 0, "start": "2025-12-17 21:29:43.741841", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005373", "end": "2025-12-17 18:30:14.653807", "msg": "", "rc": 0, "start": "2025-12-17 18:30:14.648434", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004614", "end": "2025-12-17 21:29:50.507792", "msg": "", "rc": 0, "start": "2025-12-17 21:29:50.503178", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005294", "end": "2025-12-17 21:30:14.837097", "msg": "", "rc": 0, "start": "2025-12-17 21:30:14.831803", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010190", "end": "2025-12-17 21:30:15.416312", "msg": "", "rc": 0, "start": "2025-12-17 21:30:15.406122", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025200", "end": "2025-12-17 21:30:14.801373", "msg": "", "rc": 0, "start": "2025-12-17 21:30:14.776173", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004292", "end": "2025-12-17 21:30:15.316720", "msg": "", "rc": 0, "start": "2025-12-17 21:30:15.312428", "stderr": "", "stderr_lines": [], "stdout": "78.2%", "stdout_lines": ["78.2%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004832", "end": "2025-12-17 21:30:15.334499", "msg": "", "rc": 0, "start": "2025-12-17 21:30:15.329667", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004722", "end": "2025-12-17 21:30:15.342848", "msg": "", "rc": 0, "start": "2025-12-17 21:30:15.338126", "stderr": "", "stderr_lines": [], "stdout": "49.2%", "stdout_lines": ["49.2%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004119", "end": "2025-12-17 21:30:15.383495", "msg": "", "rc": 0, "start": "2025-12-17 21:30:15.379376", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.007310", "end": "2025-12-17 21:30:15.404720", "msg": "", "rc": 0, "start": "2025-12-17 21:30:15.397410", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004054", "end": "2025-12-17 21:29:49.034107", "msg": "", "rc": 0, "start": "2025-12-17 21:29:49.030053", "stderr": "", "stderr_lines": [], "stdout": "71.4%", "stdout_lines": ["71.4%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006175", "end": "2025-12-17 21:29:42.545898", "msg": "", "rc": 0, "start": "2025-12-17 21:29:42.539723", "stderr": "", "stderr_lines": [], "stdout": "68.3%", "stdout_lines": ["68.3%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010857", "end": "2025-12-17 21:30:16.028927", "msg": "", "rc": 0, "start": "2025-12-17 21:30:16.018070", "stderr": "", "stderr_lines": [], "stdout": "6.9%", "stdout_lines": ["6.9%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012060", "end": "2025-12-17 21:30:16.060804", "msg": "", "rc": 0, "start": "2025-12-17 21:30:16.048744", "stderr": "", "stderr_lines": [], "stdout": "13.0%", "stdout_lines": ["13.0%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005729", "end": "2025-12-17 21:30:16.302409", "msg": "", "rc": 0, "start": "2025-12-17 21:30:16.296680", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005224", "end": "2025-12-17 18:30:16.527403", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 18:30:16.522179", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003755", "end": "2025-12-17 21:29:52.364025", "msg": "", "rc": 0, "start": "2025-12-17 21:29:52.360270", "stderr": "", "stderr_lines": [], "stdout": "59.0%", "stdout_lines": ["59.0%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004391", "end": "2025-12-17 21:29:45.741253", "msg": "", "rc": 0, "start": "2025-12-17 21:29:45.736862", "stderr": "", "stderr_lines": [], "stdout": "26.1%", "stdout_lines": ["26.1%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005356", "end": "2025-12-17 21:30:16.729639", "msg": "", "rc": 0, "start": "2025-12-17 21:30:16.724283", "stderr": "", "stderr_lines": [], "stdout": "13.8%", "stdout_lines": ["13.8%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025662", "end": "2025-12-17 21:30:16.709685", "msg": "", "rc": 0, "start": "2025-12-17 21:30:16.684023", "stderr": "", "stderr_lines": [], "stdout": "20.2%", "stdout_lines": ["20.2%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.007189", "end": "2025-12-17 21:30:16.885186", "msg": "", "rc": 0, "start": "2025-12-17 21:30:16.877997", "stderr": "", "stderr_lines": [], "stdout": "12.9%", "stdout_lines": ["12.9%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005350", "end": "2025-12-17 21:30:17.264357", "msg": "", "rc": 0, "start": "2025-12-17 21:30:17.259007", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004825", "end": "2025-12-17 21:30:17.294481", "msg": "", "rc": 0, "start": "2025-12-17 21:30:17.289656", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003145", "end": "2025-12-17 21:30:17.314915", "msg": "", "rc": 0, "start": "2025-12-17 21:30:17.311770", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006143", "end": "2025-12-17 21:30:17.340609", "msg": "", "rc": 0, "start": "2025-12-17 21:30:17.334466", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006968", "end": "2025-12-17 21:30:17.347754", "msg": "", "rc": 0, "start": "2025-12-17 21:30:17.340786", "stderr": "", "stderr_lines": [], "stdout": "52.0°C", "stdout_lines": ["52.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002437", "end": "2025-12-17 21:29:51.031501", "msg": "", "rc": 0, "start": "2025-12-17 21:29:51.029064", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004530", "end": "2025-12-17 21:29:44.532028", "msg": "", "rc": 0, "start": "2025-12-17 21:29:44.527498", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011879", "end": "2025-12-17 21:30:18.023358", "msg": "", "rc": 0, "start": "2025-12-17 21:30:18.011479", "stderr": "", "stderr_lines": [], "stdout": "30.2°C", "stdout_lines": ["30.2°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013144", "end": "2025-12-17 21:30:18.034513", "msg": "", "rc": 0, "start": "2025-12-17 21:30:18.021369", "stderr": "", "stderr_lines": [], "stdout": "35.0°C", "stdout_lines": ["35.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003158", "end": "2025-12-17 21:30:18.297988", "msg": "", "rc": 0, "start": "2025-12-17 21:30:18.294830", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003825", "end": "2025-12-17 18:30:18.495355", "msg": "", "rc": 0, "start": "2025-12-17 18:30:18.491530", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002606", "end": "2025-12-17 21:29:54.335008", "msg": "", "rc": 0, "start": "2025-12-17 21:29:54.332402", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003045", "end": "2025-12-17 21:29:47.724238", "msg": "", "rc": 0, "start": "2025-12-17 21:29:47.721193", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003569", "end": "2025-12-17 21:30:18.739278", "msg": "", "rc": 0, "start": "2025-12-17 21:30:18.735709", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028313", "end": "2025-12-17 21:30:18.676074", "msg": "", "rc": 0, "start": "2025-12-17 21:30:18.647761", "stderr": "", "stderr_lines": [], "stdout": "34.5°C", "stdout_lines": ["34.5°C"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004712", "end": "2025-12-17 21:30:18.841015", "msg": "", "rc": 0, "start": "2025-12-17 21:30:18.836303", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004308", "end": "2025-12-17 21:30:19.217653", "msg": "", "rc": 0, "start": "2025-12-17 21:30:19.213345", "stderr": "", "stderr_lines": [], "stdout": "0.26", "stdout_lines": ["0.26"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004961", "end": "2025-12-17 21:30:19.226032", "msg": "", "rc": 0, "start": "2025-12-17 21:30:19.221071", "stderr": "", "stderr_lines": [], "stdout": "0.73", "stdout_lines": ["0.73"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004307", "end": "2025-12-17 21:30:19.227805", "msg": "", "rc": 0, "start": "2025-12-17 21:30:19.223498", "stderr": "", "stderr_lines": [], "stdout": "0.45", "stdout_lines": ["0.45"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004568", "end": "2025-12-17 21:30:19.268611", "msg": "", "rc": 0, "start": "2025-12-17 21:30:19.264043", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005539", "end": "2025-12-17 21:30:19.289150", "msg": "", "rc": 0, "start": "2025-12-17 21:30:19.283611", "stderr": "", "stderr_lines": [], "stdout": "0.87", "stdout_lines": ["0.87"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004217", "end": "2025-12-17 21:29:52.948617", "msg": "", "rc": 0, "start": "2025-12-17 21:29:52.944400", "stderr": "", "stderr_lines": [], "stdout": "0.12", "stdout_lines": ["0.12"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004990", "end": "2025-12-17 21:29:46.392490", "msg": "", "rc": 0, "start": "2025-12-17 21:29:46.387500", "stderr": "", "stderr_lines": [], "stdout": "0.04", "stdout_lines": ["0.04"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010133", "end": "2025-12-17 21:30:20.001688", "msg": "", "rc": 0, "start": "2025-12-17 21:30:19.991555", "stderr": "", "stderr_lines": [], "stdout": "0.09", "stdout_lines": ["0.09"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011104", "end": "2025-12-17 21:30:20.048190", "msg": "", "rc": 0, "start": "2025-12-17 21:30:20.037086", "stderr": "", "stderr_lines": [], "stdout": "0.13", "stdout_lines": ["0.13"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005653", "end": "2025-12-17 21:30:20.207689", "msg": "", "rc": 0, "start": "2025-12-17 21:30:20.202036", "stderr": "", "stderr_lines": [], "stdout": "0.17", "stdout_lines": ["0.17"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004829", "end": "2025-12-17 21:29:49.565014", "msg": "", "rc": 0, "start": "2025-12-17 21:29:49.560185", "stderr": "", "stderr_lines": [], "stdout": "0.75", "stdout_lines": ["0.75"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004996", "end": "2025-12-17 21:29:56.325875", "msg": "", "rc": 0, "start": "2025-12-17 21:29:56.320879", "stderr": "", "stderr_lines": [], "stdout": "0.30", "stdout_lines": ["0.30"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005916", "end": "2025-12-17 18:30:20.514785", "msg": "", "rc": 0, "start": "2025-12-17 18:30:20.508869", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005229", "end": "2025-12-17 21:30:20.630672", "msg": "", "rc": 0, "start": "2025-12-17 21:30:20.625443", "stderr": "", "stderr_lines": [], "stdout": "0.15", "stdout_lines": ["0.15"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006709", "end": "2025-12-17 21:30:20.746644", "msg": "", "rc": 0, "start": "2025-12-17 21:30:20.739935", "stderr": "", "stderr_lines": [], "stdout": "1.44", "stdout_lines": ["1.44"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024277", "end": "2025-12-17 21:30:20.608800", "msg": "", "rc": 0, "start": "2025-12-17 21:30:20.584523", "stderr": "", "stderr_lines": [], "stdout": "0.42", "stdout_lines": ["0.42"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:30:11 up 3 days, 11:02, 1 user, load average: 0.32, 0.31, 0.29\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.45\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:30:11 up 22 days, 8:21, 1 user, load average: 0.31, 0.14, 0.10\nDisk Usage: 23%\nMemory Usage: 78.2%\nCPU Load: 0.26\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:30:11 up 22 days, 8:41, 1 user, load average: 0.71, 0.74, 0.79\nDisk Usage: 14%\nMemory Usage: 49.2%\nCPU Load: 0.73\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:30:11 up 22 days, 9:54, 1 user, load average: 0.85, 0.66, 0.64\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.87\nCPU Temp: 52.0°C\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:30:12 up 15 days, 10:56, 1 user, load average: 0.37, 0.16, 0.11\nDisk Usage: 21%\nMemory Usage: 20.2%\nCPU Load: 0.42\nCPU Temp: 34.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:30:11 up 22 days, 10:40, 1 user, load average: 0.00, 0.01, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:30:12 up 194 days, 13:03, 1 user, load average: 0.14, 0.21, 0.19\nDisk Usage: 6%\nMemory Usage: 13.0%\nCPU Load: 0.13\nCPU Temp: 35.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:30:12 up 194 days, 13:03, 1 user, load average: 0.10, 0.13, 0.10\nDisk Usage: 3%\nMemory Usage: 6.9%\nCPU Load: 0.09\nCPU Temp: 30.2°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:29:45 up 11 days, 9:19, 0 user, load average: 0.04, 0.07, 0.08\nDisk Usage: 48%\nMemory Usage: 71.4%\nCPU Load: 0.12\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:29:38 up 18 days, 5:31, 0 user, load average: 0.05, 0.08, 0.04\nDisk Usage: 25%\nMemory Usage: 68.3%\nCPU Load: 0.04\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:30:12 up 3 days, 11:01, 1 user, load average: 0.18, 0.11, 0.05\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.17\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:29:41 up 21 days, 23 min, 0 user, load average: 0.73, 0.58, 0.47\nDisk Usage: 28%\nMemory Usage: 26.1%\nCPU Load: 0.75\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:29:48 up 17 days, 10:45, 0 user, load average: 0.24, 0.31, 0.33\nDisk Usage: 76%\nMemory Usage: 59.0%\nCPU Load: 0.30\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 6:30PM up 22 days, 8:20, 1 user, load averages: 0.28, 0.25, 0.19\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:30:13 up 3 days, 11:01, 1 user, load average: 0.09, 0.08, 0.08\nDisk Usage: 79%\nMemory Usage: 13.8%\nCPU Load: 0.15\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:30:13 up 1:37, 1 user, load average: 1.26, 1.15, 1.15\nDisk Usage: 1%\nMemory Usage: 12.9%\nCPU Load: 1.44\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T02:30:21.657041+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_023521_66bbc0_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_023521_66bbc0_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..3b7b8a8 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_023521_66bbc0_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `de68edfe565e4e99aa9fb5812635b5af` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T02:35:00.001092+00:00 | +| **Fin** | 2025-12-18T02:35:21.750473+00:00 | +| **Durée** | 21.7s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [dev.prod.home] +ok: [hp.truenas.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002927", "end": "2025-12-17 21:35:11.362559", "msg": "", "rc": 0, "start": "2025-12-17 21:35:11.359632", "stderr": "", "stderr_lines": [], "stdout": " 21:35:11 up 22 days, 8:26, 1 user, load average: 0.18, 0.14, 0.10", "stdout_lines": [" 21:35:11 up 22 days, 8:26, 1 user, load average: 0.18, 0.14, 0.10"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003454", "end": "2025-12-17 21:35:11.362583", "msg": "", "rc": 0, "start": "2025-12-17 21:35:11.359129", "stderr": "", "stderr_lines": [], "stdout": " 21:35:11 up 22 days, 8:46, 1 user, load average: 0.43, 0.64, 0.74", "stdout_lines": [" 21:35:11 up 22 days, 8:46, 1 user, load average: 0.43, 0.64, 0.74"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003545", "end": "2025-12-17 21:35:11.366424", "msg": "", "rc": 0, "start": "2025-12-17 21:35:11.362879", "stderr": "", "stderr_lines": [], "stdout": " 21:35:11 up 22 days, 10:45, 1 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 21:35:11 up 22 days, 10:45, 1 user, load average: 0.00, 0.00, 0.00"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002943", "end": "2025-12-17 21:35:11.397694", "msg": "", "rc": 0, "start": "2025-12-17 21:35:11.394751", "stderr": "", "stderr_lines": [], "stdout": " 21:35:11 up 3 days, 11:07, 2 users, load average: 0.25, 0.31, 0.29", "stdout_lines": [" 21:35:11 up 3 days, 11:07, 2 users, load average: 0.25, 0.31, 0.29"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002923", "end": "2025-12-17 21:34:45.064334", "msg": "", "rc": 0, "start": "2025-12-17 21:34:45.061411", "stderr": "", "stderr_lines": [], "stdout": " 21:34:45 up 11 days, 9:24, 0 user, load average: 0.29, 0.19, 0.12", "stdout_lines": [" 21:34:45 up 11 days, 9:24, 0 user, load average: 0.29, 0.19, 0.12"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008758", "end": "2025-12-17 21:35:12.049010", "msg": "", "rc": 0, "start": "2025-12-17 21:35:12.040252", "stderr": "", "stderr_lines": [], "stdout": " 21:35:12 up 194 days, 13:08, 1 user, load average: 0.15, 0.14, 0.10", "stdout_lines": [" 21:35:12 up 194 days, 13:08, 1 user, load average: 0.15, 0.14, 0.10"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009312", "end": "2025-12-17 21:35:12.093839", "msg": "", "rc": 0, "start": "2025-12-17 21:35:12.084527", "stderr": "", "stderr_lines": [], "stdout": " 21:35:12 up 194 days, 13:08, 1 user, load average: 0.25, 0.26, 0.20", "stdout_lines": [" 21:35:12 up 194 days, 13:08, 1 user, load average: 0.25, 0.26, 0.20"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004337", "end": "2025-12-17 21:35:12.385433", "msg": "", "rc": 0, "start": "2025-12-17 21:35:11.381096", "stderr": "", "stderr_lines": [], "stdout": " 21:35:11 up 22 days, 9:59, 1 user, load average: 0.74, 0.60, 0.61", "stdout_lines": [" 21:35:11 up 22 days, 9:59, 1 user, load average: 0.74, 0.60, 0.61"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003506", "end": "2025-12-17 21:34:38.934177", "msg": "", "rc": 0, "start": "2025-12-17 21:34:38.930671", "stderr": "", "stderr_lines": [], "stdout": " 21:34:38 up 18 days, 5:36, 0 user, load average: 0.00, 0.03, 0.02", "stdout_lines": [" 21:34:38 up 18 days, 5:36, 0 user, load average: 0.00, 0.03, 0.02"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004780", "end": "2025-12-17 21:35:12.554652", "msg": "", "rc": 0, "start": "2025-12-17 21:35:12.549872", "stderr": "", "stderr_lines": [], "stdout": " 21:35:12 up 3 days, 11:06, 1 user, load average: 0.01, 0.04, 0.02", "stdout_lines": [" 21:35:12 up 3 days, 11:06, 1 user, load average: 0.01, 0.04, 0.02"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003331", "end": "2025-12-17 21:34:41.862737", "msg": "", "rc": 0, "start": "2025-12-17 21:34:41.859406", "stderr": "", "stderr_lines": [], "stdout": " 21:34:41 up 21 days, 28 min, 0 user, load average: 0.52, 0.53, 0.47", "stdout_lines": [" 21:34:41 up 21 days, 28 min, 0 user, load average: 0.52, 0.53, 0.47"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004137", "end": "2025-12-17 18:35:12.818150", "msg": "", "rc": 0, "start": "2025-12-17 18:35:12.814013", "stderr": "", "stderr_lines": [], "stdout": " 6:35PM up 22 days, 8:25, 1 user, load averages: 0.39, 0.26, 0.19", "stdout_lines": [" 6:35PM up 22 days, 8:25, 1 user, load averages: 0.39, 0.26, 0.19"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002932", "end": "2025-12-17 21:34:48.658175", "msg": "", "rc": 0, "start": "2025-12-17 21:34:48.655243", "stderr": "", "stderr_lines": [], "stdout": " 21:34:48 up 17 days, 10:50, 0 user, load average: 0.59, 0.31, 0.31", "stdout_lines": [" 21:34:48 up 17 days, 10:50, 0 user, load average: 0.59, 0.31, 0.31"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019477", "end": "2025-12-17 21:35:12.752961", "msg": "", "rc": 0, "start": "2025-12-17 21:35:12.733484", "stderr": "", "stderr_lines": [], "stdout": " 21:35:12 up 15 days, 11:01, 1 user, load average: 0.07, 0.12, 0.09", "stdout_lines": [" 21:35:12 up 15 days, 11:01, 1 user, load average: 0.07, 0.12, 0.09"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008776", "end": "2025-12-17 21:35:13.159465", "msg": "", "rc": 0, "start": "2025-12-17 21:35:13.150689", "stderr": "", "stderr_lines": [], "stdout": " 21:35:13 up 1:42, 1 user, load average: 1.26, 1.17, 1.16", "stdout_lines": [" 21:35:13 up 1:42, 1 user, load average: 1.26, 1.17, 1.16"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003660", "end": "2025-12-17 21:35:12.979320", "msg": "", "rc": 0, "start": "2025-12-17 21:35:12.975660", "stderr": "", "stderr_lines": [], "stdout": " 21:35:12 up 3 days, 11:06, 1 user, load average: 0.00, 0.03, 0.06", "stdout_lines": [" 21:35:12 up 3 days, 11:06, 1 user, load average: 0.00, 0.03, 0.06"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004578", "end": "2025-12-17 21:35:13.391113", "msg": "", "rc": 0, "start": "2025-12-17 21:35:13.386535", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004219", "end": "2025-12-17 21:35:13.409697", "msg": "", "rc": 0, "start": "2025-12-17 21:35:13.405478", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004874", "end": "2025-12-17 21:35:13.413171", "msg": "", "rc": 0, "start": "2025-12-17 21:35:13.408297", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004421", "end": "2025-12-17 21:35:13.439414", "msg": "", "rc": 0, "start": "2025-12-17 21:35:13.434993", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005535", "end": "2025-12-17 21:35:13.447701", "msg": "", "rc": 0, "start": "2025-12-17 21:35:13.442166", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005305", "end": "2025-12-17 21:34:47.079953", "msg": "", "rc": 0, "start": "2025-12-17 21:34:47.074648", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005325", "end": "2025-12-17 21:34:40.542318", "msg": "", "rc": 0, "start": "2025-12-17 21:34:40.536993", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010616", "end": "2025-12-17 21:35:14.118331", "msg": "", "rc": 0, "start": "2025-12-17 21:35:14.107715", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.013117", "end": "2025-12-17 21:35:14.161350", "msg": "", "rc": 0, "start": "2025-12-17 21:35:14.148233", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005806", "end": "2025-12-17 21:35:14.330164", "msg": "", "rc": 0, "start": "2025-12-17 21:35:14.324358", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005289", "end": "2025-12-17 21:34:43.717861", "msg": "", "rc": 0, "start": "2025-12-17 21:34:43.712572", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004781", "end": "2025-12-17 21:34:50.441746", "msg": "", "rc": 0, "start": "2025-12-17 21:34:50.436965", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005558", "end": "2025-12-17 18:35:14.632507", "msg": "", "rc": 0, "start": "2025-12-17 18:35:14.626949", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006240", "end": "2025-12-17 21:35:14.759453", "msg": "", "rc": 0, "start": "2025-12-17 21:35:14.753213", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.019393", "end": "2025-12-17 21:35:15.080873", "msg": "", "rc": 0, "start": "2025-12-17 21:35:15.061480", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025042", "end": "2025-12-17 21:35:14.780776", "msg": "", "rc": 0, "start": "2025-12-17 21:35:14.755734", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004452", "end": "2025-12-17 21:35:15.306213", "msg": "", "rc": 0, "start": "2025-12-17 21:35:15.301761", "stderr": "", "stderr_lines": [], "stdout": "78.3%", "stdout_lines": ["78.3%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004258", "end": "2025-12-17 21:35:15.311477", "msg": "", "rc": 0, "start": "2025-12-17 21:35:15.307219", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004837", "end": "2025-12-17 21:35:15.325238", "msg": "", "rc": 0, "start": "2025-12-17 21:35:15.320401", "stderr": "", "stderr_lines": [], "stdout": "49.1%", "stdout_lines": ["49.1%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005411", "end": "2025-12-17 21:35:15.345579", "msg": "", "rc": 0, "start": "2025-12-17 21:35:15.340168", "stderr": "", "stderr_lines": [], "stdout": "9.1%", "stdout_lines": ["9.1%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005810", "end": "2025-12-17 21:35:15.359665", "msg": "", "rc": 0, "start": "2025-12-17 21:35:15.353855", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004165", "end": "2025-12-17 21:34:48.991824", "msg": "", "rc": 0, "start": "2025-12-17 21:34:48.987659", "stderr": "", "stderr_lines": [], "stdout": "71.3%", "stdout_lines": ["71.3%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004592", "end": "2025-12-17 21:34:42.461488", "msg": "", "rc": 0, "start": "2025-12-17 21:34:42.456896", "stderr": "", "stderr_lines": [], "stdout": "68.3%", "stdout_lines": ["68.3%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011068", "end": "2025-12-17 21:35:16.000377", "msg": "", "rc": 0, "start": "2025-12-17 21:35:15.989309", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011802", "end": "2025-12-17 21:35:16.041847", "msg": "", "rc": 0, "start": "2025-12-17 21:35:16.030045", "stderr": "", "stderr_lines": [], "stdout": "13.1%", "stdout_lines": ["13.1%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006725", "end": "2025-12-17 21:35:16.269663", "msg": "", "rc": 0, "start": "2025-12-17 21:35:16.262938", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003978", "end": "2025-12-17 21:34:45.633838", "msg": "", "rc": 0, "start": "2025-12-17 21:34:45.629860", "stderr": "", "stderr_lines": [], "stdout": "27.8%", "stdout_lines": ["27.8%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005125", "end": "2025-12-17 18:35:16.510943", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 18:35:16.505818", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004043", "end": "2025-12-17 21:34:52.315379", "msg": "", "rc": 0, "start": "2025-12-17 21:34:52.311336", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005319", "end": "2025-12-17 21:35:16.689161", "msg": "", "rc": 0, "start": "2025-12-17 21:35:16.683842", "stderr": "", "stderr_lines": [], "stdout": "14.0%", "stdout_lines": ["14.0%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.008754", "end": "2025-12-17 21:35:16.987593", "msg": "", "rc": 0, "start": "2025-12-17 21:35:16.978839", "stderr": "", "stderr_lines": [], "stdout": "13.1%", "stdout_lines": ["13.1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025515", "end": "2025-12-17 21:35:16.695279", "msg": "", "rc": 0, "start": "2025-12-17 21:35:16.669764", "stderr": "", "stderr_lines": [], "stdout": "20.6%", "stdout_lines": ["20.6%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005054", "end": "2025-12-17 21:35:17.230326", "msg": "", "rc": 0, "start": "2025-12-17 21:35:17.225272", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004861", "end": "2025-12-17 21:35:17.241412", "msg": "", "rc": 0, "start": "2025-12-17 21:35:17.236551", "stderr": "", "stderr_lines": [], "stdout": "47.0°C", "stdout_lines": ["47.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005979", "end": "2025-12-17 21:35:17.247154", "msg": "", "rc": 0, "start": "2025-12-17 21:35:17.241175", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003168", "end": "2025-12-17 21:35:17.273568", "msg": "", "rc": 0, "start": "2025-12-17 21:35:17.270400", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006559", "end": "2025-12-17 21:35:17.300687", "msg": "", "rc": 0, "start": "2025-12-17 21:35:17.294128", "stderr": "", "stderr_lines": [], "stdout": "52.0°C", "stdout_lines": ["52.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002442", "end": "2025-12-17 21:34:50.923534", "msg": "", "rc": 0, "start": "2025-12-17 21:34:50.921092", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006379", "end": "2025-12-17 21:34:44.417563", "msg": "", "rc": 0, "start": "2025-12-17 21:34:44.411184", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011767", "end": "2025-12-17 21:35:17.925825", "msg": "", "rc": 0, "start": "2025-12-17 21:35:17.914058", "stderr": "", "stderr_lines": [], "stdout": "30.2°C", "stdout_lines": ["30.2°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012948", "end": "2025-12-17 21:35:17.965669", "msg": "", "rc": 0, "start": "2025-12-17 21:35:17.952721", "stderr": "", "stderr_lines": [], "stdout": "35.5°C", "stdout_lines": ["35.5°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003155", "end": "2025-12-17 21:35:18.182797", "msg": "", "rc": 0, "start": "2025-12-17 21:35:18.179642", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004006", "end": "2025-12-17 18:35:18.427425", "msg": "", "rc": 0, "start": "2025-12-17 18:35:18.423419", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002430", "end": "2025-12-17 21:34:54.253838", "msg": "", "rc": 0, "start": "2025-12-17 21:34:54.251408", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002962", "end": "2025-12-17 21:34:47.616216", "msg": "", "rc": 0, "start": "2025-12-17 21:34:47.613254", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002966", "end": "2025-12-17 21:35:18.598899", "msg": "", "rc": 0, "start": "2025-12-17 21:35:18.595933", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004375", "end": "2025-12-17 21:35:18.990312", "msg": "", "rc": 0, "start": "2025-12-17 21:35:18.985937", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028394", "end": "2025-12-17 21:35:18.624018", "msg": "", "rc": 0, "start": "2025-12-17 21:35:18.595624", "stderr": "", "stderr_lines": [], "stdout": "35.4°C", "stdout_lines": ["35.4°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004131", "end": "2025-12-17 21:35:19.155353", "msg": "", "rc": 0, "start": "2025-12-17 21:35:19.151222", "stderr": "", "stderr_lines": [], "stdout": "0.23", "stdout_lines": ["0.23"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.003985", "end": "2025-12-17 21:35:19.182194", "msg": "", "rc": 0, "start": "2025-12-17 21:35:19.178209", "stderr": "", "stderr_lines": [], "stdout": "0.23", "stdout_lines": ["0.23"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004745", "end": "2025-12-17 21:35:19.184319", "msg": "", "rc": 0, "start": "2025-12-17 21:35:19.179574", "stderr": "", "stderr_lines": [], "stdout": "0.40", "stdout_lines": ["0.40"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005140", "end": "2025-12-17 21:35:19.208301", "msg": "", "rc": 0, "start": "2025-12-17 21:35:19.203161", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005537", "end": "2025-12-17 21:35:19.224237", "msg": "", "rc": 0, "start": "2025-12-17 21:35:19.218700", "stderr": "", "stderr_lines": [], "stdout": "0.76", "stdout_lines": ["0.76"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004166", "end": "2025-12-17 21:34:52.869349", "msg": "", "rc": 0, "start": "2025-12-17 21:34:52.865183", "stderr": "", "stderr_lines": [], "stdout": "0.32", "stdout_lines": ["0.32"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006043", "end": "2025-12-17 21:34:46.344049", "msg": "", "rc": 0, "start": "2025-12-17 21:34:46.338006", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010071", "end": "2025-12-17 21:35:19.945903", "msg": "", "rc": 0, "start": "2025-12-17 21:35:19.935832", "stderr": "", "stderr_lines": [], "stdout": "0.14", "stdout_lines": ["0.14"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011146", "end": "2025-12-17 21:35:19.995430", "msg": "", "rc": 0, "start": "2025-12-17 21:35:19.984284", "stderr": "", "stderr_lines": [], "stdout": "0.31", "stdout_lines": ["0.31"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005801", "end": "2025-12-17 21:35:20.135836", "msg": "", "rc": 0, "start": "2025-12-17 21:35:20.130035", "stderr": "", "stderr_lines": [], "stdout": "0.01", "stdout_lines": ["0.01"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005449", "end": "2025-12-17 21:34:49.541694", "msg": "", "rc": 0, "start": "2025-12-17 21:34:49.536245", "stderr": "", "stderr_lines": [], "stdout": "0.52", "stdout_lines": ["0.52"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004478", "end": "2025-12-17 21:34:56.273942", "msg": "", "rc": 0, "start": "2025-12-17 21:34:56.269464", "stderr": "", "stderr_lines": [], "stdout": "0.54", "stdout_lines": ["0.54"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005883", "end": "2025-12-17 18:35:20.461043", "msg": "", "rc": 0, "start": "2025-12-17 18:35:20.455160", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005652", "end": "2025-12-17 21:35:20.560700", "msg": "", "rc": 0, "start": "2025-12-17 21:35:20.555048", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006992", "end": "2025-12-17 21:35:20.973060", "msg": "", "rc": 0, "start": "2025-12-17 21:35:20.966068", "stderr": "", "stderr_lines": [], "stdout": "1.30", "stdout_lines": ["1.30"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024262", "end": "2025-12-17 21:35:20.551529", "msg": "", "rc": 0, "start": "2025-12-17 21:35:20.527267", "stderr": "", "stderr_lines": [], "stdout": "0.14", "stdout_lines": ["0.14"]} + +TASK [Display health status] *************************************************** +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:35:11 up 22 days, 8:26, 1 user, load average: 0.18, 0.14, 0.10\nDisk Usage: 23%\nMemory Usage: 78.3%\nCPU Load: 0.23\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:35:11 up 3 days, 11:07, 2 users, load average: 0.25, 0.31, 0.29\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.23\nCPU Temp: 47.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:35:11 up 22 days, 8:46, 1 user, load average: 0.43, 0.64, 0.74\nDisk Usage: 14%\nMemory Usage: 49.1%\nCPU Load: 0.40\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:35:11 up 22 days, 9:59, 1 user, load average: 0.74, 0.60, 0.61\nDisk Usage: 14%\nMemory Usage: 59.7%\nCPU Load: 0.76\nCPU Temp: 52.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:35:11 up 22 days, 10:45, 1 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 9%\nMemory Usage: 9.1%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:35:12 up 15 days, 11:01, 1 user, load average: 0.07, 0.12, 0.09\nDisk Usage: 21%\nMemory Usage: 20.6%\nCPU Load: 0.14\nCPU Temp: 35.4°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:35:12 up 194 days, 13:08, 1 user, load average: 0.25, 0.26, 0.20\nDisk Usage: 6%\nMemory Usage: 13.1%\nCPU Load: 0.31\nCPU Temp: 35.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:35:12 up 194 days, 13:08, 1 user, load average: 0.15, 0.14, 0.10\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.14\nCPU Temp: 30.2°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:34:45 up 11 days, 9:24, 0 user, load average: 0.29, 0.19, 0.12\nDisk Usage: 48%\nMemory Usage: 71.3%\nCPU Load: 0.32\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:34:38 up 18 days, 5:36, 0 user, load average: 0.00, 0.03, 0.02\nDisk Usage: 25%\nMemory Usage: 68.3%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:35:12 up 3 days, 11:06, 1 user, load average: 0.01, 0.04, 0.02\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.01\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:34:41 up 21 days, 28 min, 0 user, load average: 0.52, 0.53, 0.47\nDisk Usage: 28%\nMemory Usage: 27.8%\nCPU Load: 0.52\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:34:48 up 17 days, 10:50, 0 user, load average: 0.59, 0.31, 0.31\nDisk Usage: 76%\nMemory Usage: 59.7%\nCPU Load: 0.54\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 6:35PM up 22 days, 8:25, 1 user, load averages: 0.39, 0.26, 0.19\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:35:12 up 3 days, 11:06, 1 user, load average: 0.00, 0.03, 0.06\nDisk Usage: 79%\nMemory Usage: 14.0%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:35:13 up 1:42, 1 user, load average: 1.26, 1.17, 1.16\nDisk Usage: 1%\nMemory Usage: 13.1%\nCPU Load: 1.30\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T02:35:21.796949+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_024022_715018_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_024022_715018_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..30279ee --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_024022_715018_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `dcbae2f9d35141fbb79748c058fb5727` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T02:40:00.001136+00:00 | +| **Fin** | 2025-12-18T02:40:22.086031+00:00 | +| **Durée** | 22.1s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [dev.prod.home] +ok: [hp.truenas.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003319", "end": "2025-12-17 21:40:11.990218", "msg": "", "rc": 0, "start": "2025-12-17 21:40:11.986899", "stderr": "", "stderr_lines": [], "stdout": " 21:40:11 up 22 days, 8:31, 1 user, load average: 0.09, 0.13, 0.09", "stdout_lines": [" 21:40:11 up 22 days, 8:31, 1 user, load average: 0.09, 0.13, 0.09"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003961", "end": "2025-12-17 21:40:12.005196", "msg": "", "rc": 0, "start": "2025-12-17 21:40:12.001235", "stderr": "", "stderr_lines": [], "stdout": " 21:40:12 up 22 days, 10:50, 1 user, load average: 0.04, 0.03, 0.00", "stdout_lines": [" 21:40:12 up 22 days, 10:50, 1 user, load average: 0.04, 0.03, 0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003993", "end": "2025-12-17 21:40:12.022013", "msg": "", "rc": 0, "start": "2025-12-17 21:40:12.018020", "stderr": "", "stderr_lines": [], "stdout": " 21:40:12 up 22 days, 10:04, 1 user, load average: 0.68, 0.62, 0.62", "stdout_lines": [" 21:40:12 up 22 days, 10:04, 1 user, load average: 0.68, 0.62, 0.62"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003034", "end": "2025-12-17 21:40:12.037845", "msg": "", "rc": 0, "start": "2025-12-17 21:40:12.034811", "stderr": "", "stderr_lines": [], "stdout": " 21:40:12 up 3 days, 11:12, 1 user, load average: 0.46, 0.37, 0.31", "stdout_lines": [" 21:40:12 up 3 days, 11:12, 1 user, load average: 0.46, 0.37, 0.31"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002715", "end": "2025-12-17 21:39:45.669950", "msg": "", "rc": 0, "start": "2025-12-17 21:39:45.667235", "stderr": "", "stderr_lines": [], "stdout": " 21:39:45 up 11 days, 9:29, 0 user, load average: 0.22, 0.29, 0.18", "stdout_lines": [" 21:39:45 up 11 days, 9:29, 0 user, load average: 0.22, 0.29, 0.18"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008481", "end": "2025-12-17 21:40:12.693176", "msg": "", "rc": 0, "start": "2025-12-17 21:40:12.684695", "stderr": "", "stderr_lines": [], "stdout": " 21:40:12 up 194 days, 13:13, 1 user, load average: 0.24, 0.17, 0.11", "stdout_lines": [" 21:40:12 up 194 days, 13:13, 1 user, load average: 0.24, 0.17, 0.11"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009304", "end": "2025-12-17 21:40:12.703303", "msg": "", "rc": 0, "start": "2025-12-17 21:40:12.693999", "stderr": "", "stderr_lines": [], "stdout": " 21:40:12 up 194 days, 13:13, 1 user, load average: 0.45, 0.31, 0.22", "stdout_lines": [" 21:40:12 up 194 days, 13:13, 1 user, load average: 0.45, 0.31, 0.22"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004478", "end": "2025-12-17 21:40:13.000313", "msg": "", "rc": 0, "start": "2025-12-17 21:40:11.995835", "stderr": "", "stderr_lines": [], "stdout": " 21:40:11 up 22 days, 8:51, 1 user, load average: 0.66, 0.64, 0.71", "stdout_lines": [" 21:40:11 up 22 days, 8:51, 1 user, load average: 0.66, 0.64, 0.71"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003586", "end": "2025-12-17 21:39:39.550862", "msg": "", "rc": 0, "start": "2025-12-17 21:39:39.547276", "stderr": "", "stderr_lines": [], "stdout": " 21:39:39 up 18 days, 5:41, 0 user, load average: 0.01, 0.03, 0.01", "stdout_lines": [" 21:39:39 up 18 days, 5:41, 0 user, load average: 0.01, 0.03, 0.01"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.005009", "end": "2025-12-17 21:40:13.199556", "msg": "", "rc": 0, "start": "2025-12-17 21:40:13.194547", "stderr": "", "stderr_lines": [], "stdout": " 21:40:13 up 3 days, 11:11, 1 user, load average: 0.00, 0.04, 0.02", "stdout_lines": [" 21:40:13 up 3 days, 11:11, 1 user, load average: 0.00, 0.04, 0.02"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003323", "end": "2025-12-17 21:39:42.460710", "msg": "", "rc": 0, "start": "2025-12-17 21:39:42.457387", "stderr": "", "stderr_lines": [], "stdout": " 21:39:42 up 21 days, 34 min, 0 user, load average: 0.44, 0.49, 0.46", "stdout_lines": [" 21:39:42 up 21 days, 34 min, 0 user, load average: 0.44, 0.49, 0.46"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004206", "end": "2025-12-17 18:40:13.417542", "msg": "", "rc": 0, "start": "2025-12-17 18:40:13.413336", "stderr": "", "stderr_lines": [], "stdout": " 6:40PM up 22 days, 8:30, 1 user, load averages: 0.27, 0.27, 0.20", "stdout_lines": [" 6:40PM up 22 days, 8:30, 1 user, load averages: 0.27, 0.27, 0.20"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004323", "end": "2025-12-17 21:39:49.256434", "msg": "", "rc": 0, "start": "2025-12-17 21:39:49.252111", "stderr": "", "stderr_lines": [], "stdout": " 21:39:49 up 17 days, 10:55, 0 user, load average: 0.20, 0.21, 0.26", "stdout_lines": [" 21:39:49 up 17 days, 10:55, 0 user, load average: 0.20, 0.21, 0.26"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019455", "end": "2025-12-17 21:40:13.361736", "msg": "", "rc": 0, "start": "2025-12-17 21:40:13.342281", "stderr": "", "stderr_lines": [], "stdout": " 21:40:13 up 15 days, 11:06, 1 user, load average: 0.29, 0.15, 0.10", "stdout_lines": [" 21:40:13 up 15 days, 11:06, 1 user, load average: 0.29, 0.15, 0.10"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008561", "end": "2025-12-17 21:40:13.961022", "msg": "", "rc": 0, "start": "2025-12-17 21:40:13.952461", "stderr": "", "stderr_lines": [], "stdout": " 21:40:13 up 1:47, 1 user, load average: 1.20, 1.17, 1.17", "stdout_lines": [" 21:40:13 up 1:47, 1 user, load average: 1.20, 1.17, 1.17"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003732", "end": "2025-12-17 21:40:13.635415", "msg": "", "rc": 0, "start": "2025-12-17 21:40:13.631683", "stderr": "", "stderr_lines": [], "stdout": " 21:40:13 up 3 days, 11:11, 1 user, load average: 0.13, 0.08, 0.07", "stdout_lines": [" 21:40:13 up 3 days, 11:11, 1 user, load average: 0.13, 0.08, 0.07"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004355", "end": "2025-12-17 21:40:14.048416", "msg": "", "rc": 0, "start": "2025-12-17 21:40:14.044061", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004070", "end": "2025-12-17 21:40:14.054378", "msg": "", "rc": 0, "start": "2025-12-17 21:40:14.050308", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004712", "end": "2025-12-17 21:40:14.085580", "msg": "", "rc": 0, "start": "2025-12-17 21:40:14.080868", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004761", "end": "2025-12-17 21:40:14.099791", "msg": "", "rc": 0, "start": "2025-12-17 21:40:14.095030", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005404", "end": "2025-12-17 21:40:14.105834", "msg": "", "rc": 0, "start": "2025-12-17 21:40:14.100430", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004828", "end": "2025-12-17 21:39:47.757821", "msg": "", "rc": 0, "start": "2025-12-17 21:39:47.752993", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005594", "end": "2025-12-17 21:39:41.189643", "msg": "", "rc": 0, "start": "2025-12-17 21:39:41.184049", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010781", "end": "2025-12-17 21:40:14.785668", "msg": "", "rc": 0, "start": "2025-12-17 21:40:14.774887", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011376", "end": "2025-12-17 21:40:14.811908", "msg": "", "rc": 0, "start": "2025-12-17 21:40:14.800532", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005847", "end": "2025-12-17 21:40:15.028223", "msg": "", "rc": 0, "start": "2025-12-17 21:40:15.022376", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005416", "end": "2025-12-17 21:39:44.353613", "msg": "", "rc": 0, "start": "2025-12-17 21:39:44.348197", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005183", "end": "2025-12-17 18:40:15.297397", "msg": "", "rc": 0, "start": "2025-12-17 18:40:15.292214", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004954", "end": "2025-12-17 21:39:51.113258", "msg": "", "rc": 0, "start": "2025-12-17 21:39:51.108304", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005315", "end": "2025-12-17 21:40:15.436880", "msg": "", "rc": 0, "start": "2025-12-17 21:40:15.431565", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.019888", "end": "2025-12-17 21:40:15.870664", "msg": "", "rc": 0, "start": "2025-12-17 21:40:15.850776", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025098", "end": "2025-12-17 21:40:15.426987", "msg": "", "rc": 0, "start": "2025-12-17 21:40:15.401889", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004309", "end": "2025-12-17 21:40:15.946365", "msg": "", "rc": 0, "start": "2025-12-17 21:40:15.942056", "stderr": "", "stderr_lines": [], "stdout": "78.3%", "stdout_lines": ["78.3%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004070", "end": "2025-12-17 21:40:15.979573", "msg": "", "rc": 0, "start": "2025-12-17 21:40:15.975503", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004725", "end": "2025-12-17 21:40:15.984039", "msg": "", "rc": 0, "start": "2025-12-17 21:40:15.979314", "stderr": "", "stderr_lines": [], "stdout": "49.1%", "stdout_lines": ["49.1%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005065", "end": "2025-12-17 21:40:16.002346", "msg": "", "rc": 0, "start": "2025-12-17 21:40:15.997281", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005619", "end": "2025-12-17 21:40:16.010311", "msg": "", "rc": 0, "start": "2025-12-17 21:40:16.004692", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003677", "end": "2025-12-17 21:39:49.683742", "msg": "", "rc": 0, "start": "2025-12-17 21:39:49.680065", "stderr": "", "stderr_lines": [], "stdout": "71.1%", "stdout_lines": ["71.1%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004763", "end": "2025-12-17 21:39:43.123611", "msg": "", "rc": 0, "start": "2025-12-17 21:39:43.118848", "stderr": "", "stderr_lines": [], "stdout": "68.2%", "stdout_lines": ["68.2%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010779", "end": "2025-12-17 21:40:16.674029", "msg": "", "rc": 0, "start": "2025-12-17 21:40:16.663250", "stderr": "", "stderr_lines": [], "stdout": "6.9%", "stdout_lines": ["6.9%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011924", "end": "2025-12-17 21:40:16.708197", "msg": "", "rc": 0, "start": "2025-12-17 21:40:16.696273", "stderr": "", "stderr_lines": [], "stdout": "12.8%", "stdout_lines": ["12.8%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006429", "end": "2025-12-17 21:40:16.957848", "msg": "", "rc": 0, "start": "2025-12-17 21:40:16.951419", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004231", "end": "2025-12-17 21:39:46.323336", "msg": "", "rc": 0, "start": "2025-12-17 21:39:46.319105", "stderr": "", "stderr_lines": [], "stdout": "27.6%", "stdout_lines": ["27.6%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003745", "end": "2025-12-17 21:39:52.969997", "msg": "", "rc": 0, "start": "2025-12-17 21:39:52.966252", "stderr": "", "stderr_lines": [], "stdout": "60.3%", "stdout_lines": ["60.3%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005151", "end": "2025-12-17 18:40:17.163870", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 18:40:17.158719", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005483", "end": "2025-12-17 21:40:17.373647", "msg": "", "rc": 0, "start": "2025-12-17 21:40:17.368164", "stderr": "", "stderr_lines": [], "stdout": "13.9%", "stdout_lines": ["13.9%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.009357", "end": "2025-12-17 21:40:17.871694", "msg": "", "rc": 0, "start": "2025-12-17 21:40:17.862337", "stderr": "", "stderr_lines": [], "stdout": "12.9%", "stdout_lines": ["12.9%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025758", "end": "2025-12-17 21:40:17.343986", "msg": "", "rc": 0, "start": "2025-12-17 21:40:17.318228", "stderr": "", "stderr_lines": [], "stdout": "20.2%", "stdout_lines": ["20.2%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005615", "end": "2025-12-17 21:40:17.860332", "msg": "", "rc": 0, "start": "2025-12-17 21:40:17.854717", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004850", "end": "2025-12-17 21:40:17.880693", "msg": "", "rc": 0, "start": "2025-12-17 21:40:17.875843", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005821", "end": "2025-12-17 21:40:17.901091", "msg": "", "rc": 0, "start": "2025-12-17 21:40:17.895270", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003347", "end": "2025-12-17 21:40:17.904485", "msg": "", "rc": 0, "start": "2025-12-17 21:40:17.901138", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006656", "end": "2025-12-17 21:40:17.927139", "msg": "", "rc": 0, "start": "2025-12-17 21:40:17.920483", "stderr": "", "stderr_lines": [], "stdout": "52.0°C", "stdout_lines": ["52.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002431", "end": "2025-12-17 21:39:51.601250", "msg": "", "rc": 0, "start": "2025-12-17 21:39:51.598819", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003303", "end": "2025-12-17 21:39:45.019321", "msg": "", "rc": 0, "start": "2025-12-17 21:39:45.016018", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011856", "end": "2025-12-17 21:40:18.560635", "msg": "", "rc": 0, "start": "2025-12-17 21:40:18.548779", "stderr": "", "stderr_lines": [], "stdout": "30.2°C", "stdout_lines": ["30.2°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012899", "end": "2025-12-17 21:40:18.589099", "msg": "", "rc": 0, "start": "2025-12-17 21:40:18.576200", "stderr": "", "stderr_lines": [], "stdout": "35.5°C", "stdout_lines": ["35.5°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003192", "end": "2025-12-17 21:40:18.868623", "msg": "", "rc": 0, "start": "2025-12-17 21:40:18.865431", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002971", "end": "2025-12-17 21:39:48.197181", "msg": "", "rc": 0, "start": "2025-12-17 21:39:48.194210", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003863", "end": "2025-12-17 18:40:19.058332", "msg": "", "rc": 0, "start": "2025-12-17 18:40:19.054469", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002562", "end": "2025-12-17 21:39:54.887379", "msg": "", "rc": 0, "start": "2025-12-17 21:39:54.884817", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003527", "end": "2025-12-17 21:40:19.284406", "msg": "", "rc": 0, "start": "2025-12-17 21:40:19.280879", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004683", "end": "2025-12-17 21:40:19.843688", "msg": "", "rc": 0, "start": "2025-12-17 21:40:19.839005", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028662", "end": "2025-12-17 21:40:19.250579", "msg": "", "rc": 0, "start": "2025-12-17 21:40:19.221917", "stderr": "", "stderr_lines": [], "stdout": "34.1°C", "stdout_lines": ["34.1°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004062", "end": "2025-12-17 21:40:19.788413", "msg": "", "rc": 0, "start": "2025-12-17 21:40:19.784351", "stderr": "", "stderr_lines": [], "stdout": "0.07", "stdout_lines": ["0.07"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004080", "end": "2025-12-17 21:40:19.803556", "msg": "", "rc": 0, "start": "2025-12-17 21:40:19.799476", "stderr": "", "stderr_lines": [], "stdout": "0.50", "stdout_lines": ["0.50"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004717", "end": "2025-12-17 21:40:19.805326", "msg": "", "rc": 0, "start": "2025-12-17 21:40:19.800609", "stderr": "", "stderr_lines": [], "stdout": "0.77", "stdout_lines": ["0.77"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004662", "end": "2025-12-17 21:40:19.835608", "msg": "", "rc": 0, "start": "2025-12-17 21:40:19.830946", "stderr": "", "stderr_lines": [], "stdout": "0.10", "stdout_lines": ["0.10"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005644", "end": "2025-12-17 21:40:19.858184", "msg": "", "rc": 0, "start": "2025-12-17 21:40:19.852540", "stderr": "", "stderr_lines": [], "stdout": "0.73", "stdout_lines": ["0.73"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004406", "end": "2025-12-17 21:39:53.493512", "msg": "", "rc": 0, "start": "2025-12-17 21:39:53.489106", "stderr": "", "stderr_lines": [], "stdout": "0.26", "stdout_lines": ["0.26"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005555", "end": "2025-12-17 21:39:46.973355", "msg": "", "rc": 0, "start": "2025-12-17 21:39:46.967800", "stderr": "", "stderr_lines": [], "stdout": "0.09", "stdout_lines": ["0.09"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010114", "end": "2025-12-17 21:40:20.571741", "msg": "", "rc": 0, "start": "2025-12-17 21:40:20.561627", "stderr": "", "stderr_lines": [], "stdout": "0.31", "stdout_lines": ["0.31"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011258", "end": "2025-12-17 21:40:20.583049", "msg": "", "rc": 0, "start": "2025-12-17 21:40:20.571791", "stderr": "", "stderr_lines": [], "stdout": "0.41", "stdout_lines": ["0.41"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005630", "end": "2025-12-17 21:40:20.765953", "msg": "", "rc": 0, "start": "2025-12-17 21:40:20.760323", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005467", "end": "2025-12-17 21:39:50.181653", "msg": "", "rc": 0, "start": "2025-12-17 21:39:50.176186", "stderr": "", "stderr_lines": [], "stdout": "0.41", "stdout_lines": ["0.41"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005855", "end": "2025-12-17 18:40:21.044635", "msg": "", "rc": 0, "start": "2025-12-17 18:40:21.038780", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004286", "end": "2025-12-17 21:39:56.870847", "msg": "", "rc": 0, "start": "2025-12-17 21:39:56.866561", "stderr": "", "stderr_lines": [], "stdout": "0.18", "stdout_lines": ["0.18"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005469", "end": "2025-12-17 21:40:21.216429", "msg": "", "rc": 0, "start": "2025-12-17 21:40:21.210960", "stderr": "", "stderr_lines": [], "stdout": "0.11", "stdout_lines": ["0.11"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.008519", "end": "2025-12-17 21:40:21.310578", "msg": "", "rc": 0, "start": "2025-12-17 21:40:21.302059", "stderr": "", "stderr_lines": [], "stdout": "1.49", "stdout_lines": ["1.49"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024359", "end": "2025-12-17 21:40:21.172787", "msg": "", "rc": 0, "start": "2025-12-17 21:40:21.148428", "stderr": "", "stderr_lines": [], "stdout": "0.27", "stdout_lines": ["0.27"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:40:12 up 3 days, 11:12, 1 user, load average: 0.46, 0.37, 0.31\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.50\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:40:11 up 22 days, 8:31, 1 user, load average: 0.09, 0.13, 0.09\nDisk Usage: 23%\nMemory Usage: 78.3%\nCPU Load: 0.07\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:40:11 up 22 days, 8:51, 1 user, load average: 0.66, 0.64, 0.71\nDisk Usage: 14%\nMemory Usage: 49.1%\nCPU Load: 0.77\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:40:12 up 22 days, 10:04, 1 user, load average: 0.68, 0.62, 0.62\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.73\nCPU Temp: 52.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:40:12 up 22 days, 10:50, 1 user, load average: 0.04, 0.03, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.10\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:40:13 up 15 days, 11:06, 1 user, load average: 0.29, 0.15, 0.10\nDisk Usage: 21%\nMemory Usage: 20.2%\nCPU Load: 0.27\nCPU Temp: 34.1°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:40:12 up 194 days, 13:13, 1 user, load average: 0.45, 0.31, 0.22\nDisk Usage: 6%\nMemory Usage: 12.8%\nCPU Load: 0.41\nCPU Temp: 35.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:40:12 up 194 days, 13:13, 1 user, load average: 0.24, 0.17, 0.11\nDisk Usage: 3%\nMemory Usage: 6.9%\nCPU Load: 0.31\nCPU Temp: 30.2°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:39:45 up 11 days, 9:29, 0 user, load average: 0.22, 0.29, 0.18\nDisk Usage: 48%\nMemory Usage: 71.1%\nCPU Load: 0.26\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:39:39 up 18 days, 5:41, 0 user, load average: 0.01, 0.03, 0.01\nDisk Usage: 25%\nMemory Usage: 68.2%\nCPU Load: 0.09\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:40:13 up 3 days, 11:11, 1 user, load average: 0.00, 0.04, 0.02\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:39:42 up 21 days, 34 min, 0 user, load average: 0.44, 0.49, 0.46\nDisk Usage: 28%\nMemory Usage: 27.6%\nCPU Load: 0.41\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:39:49 up 17 days, 10:55, 0 user, load average: 0.20, 0.21, 0.26\nDisk Usage: 76%\nMemory Usage: 60.3%\nCPU Load: 0.18\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 6:40PM up 22 days, 8:30, 1 user, load averages: 0.27, 0.27, 0.20\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:40:13 up 3 days, 11:11, 1 user, load average: 0.13, 0.08, 0.07\nDisk Usage: 79%\nMemory Usage: 13.9%\nCPU Load: 0.11\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:40:13 up 1:47, 1 user, load average: 1.20, 1.17, 1.17\nDisk Usage: 1%\nMemory Usage: 12.9%\nCPU Load: 1.49\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T02:40:22.138698+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_024522_372bd9_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_024522_372bd9_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..8563c7d --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_024522_372bd9_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `73045c3ae4fe4bddab48c217cc211e8a` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T02:45:00.001605+00:00 | +| **Fin** | 2025-12-18T02:45:22.873218+00:00 | +| **Durée** | 22.9s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [dev.prod.home] +ok: [hp.truenas.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003534", "end": "2025-12-17 21:45:12.468540", "msg": "", "rc": 0, "start": "2025-12-17 21:45:12.465006", "stderr": "", "stderr_lines": [], "stdout": " 21:45:12 up 22 days, 10:55, 1 user, load average: 0.08, 0.03, 0.01", "stdout_lines": [" 21:45:12 up 22 days, 10:55, 1 user, load average: 0.08, 0.03, 0.01"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003363", "end": "2025-12-17 21:45:12.484891", "msg": "", "rc": 0, "start": "2025-12-17 21:45:12.481528", "stderr": "", "stderr_lines": [], "stdout": " 21:45:12 up 22 days, 8:56, 1 user, load average: 0.28, 0.55, 0.67", "stdout_lines": [" 21:45:12 up 22 days, 8:56, 1 user, load average: 0.28, 0.55, 0.67"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002906", "end": "2025-12-17 21:45:12.499423", "msg": "", "rc": 0, "start": "2025-12-17 21:45:12.496517", "stderr": "", "stderr_lines": [], "stdout": " 21:45:12 up 3 days, 11:17, 1 user, load average: 0.37, 0.34, 0.31", "stdout_lines": [" 21:45:12 up 3 days, 11:17, 1 user, load average: 0.37, 0.34, 0.31"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003901", "end": "2025-12-17 21:45:12.487513", "msg": "", "rc": 0, "start": "2025-12-17 21:45:12.483612", "stderr": "", "stderr_lines": [], "stdout": " 21:45:12 up 22 days, 10:09, 1 user, load average: 0.64, 0.59, 0.60", "stdout_lines": [" 21:45:12 up 22 days, 10:09, 1 user, load average: 0.64, 0.59, 0.60"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003088", "end": "2025-12-17 21:44:46.186407", "msg": "", "rc": 0, "start": "2025-12-17 21:44:46.183319", "stderr": "", "stderr_lines": [], "stdout": " 21:44:46 up 11 days, 9:34, 0 user, load average: 0.06, 0.19, 0.17", "stdout_lines": [" 21:44:46 up 11 days, 9:34, 0 user, load average: 0.06, 0.19, 0.17"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008404", "end": "2025-12-17 21:45:13.156839", "msg": "", "rc": 0, "start": "2025-12-17 21:45:13.148435", "stderr": "", "stderr_lines": [], "stdout": " 21:45:13 up 194 days, 13:18, 1 user, load average: 0.31, 0.22, 0.14", "stdout_lines": [" 21:45:13 up 194 days, 13:18, 1 user, load average: 0.31, 0.22, 0.14"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009200", "end": "2025-12-17 21:45:13.190091", "msg": "", "rc": 0, "start": "2025-12-17 21:45:13.180891", "stderr": "", "stderr_lines": [], "stdout": " 21:45:13 up 194 days, 13:18, 1 user, load average: 0.38, 0.32, 0.24", "stdout_lines": [" 21:45:13 up 194 days, 13:18, 1 user, load average: 0.38, 0.32, 0.24"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004383", "end": "2025-12-17 21:45:13.458479", "msg": "", "rc": 0, "start": "2025-12-17 21:45:12.454096", "stderr": "", "stderr_lines": [], "stdout": " 21:45:12 up 22 days, 8:36, 1 user, load average: 0.33, 0.19, 0.12", "stdout_lines": [" 21:45:12 up 22 days, 8:36, 1 user, load average: 0.33, 0.19, 0.12"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003624", "end": "2025-12-17 21:44:40.046204", "msg": "", "rc": 0, "start": "2025-12-17 21:44:40.042580", "stderr": "", "stderr_lines": [], "stdout": " 21:44:40 up 18 days, 5:46, 0 user, load average: 0.23, 0.07, 0.02", "stdout_lines": [" 21:44:40 up 18 days, 5:46, 0 user, load average: 0.23, 0.07, 0.02"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004741", "end": "2025-12-17 21:45:13.660064", "msg": "", "rc": 0, "start": "2025-12-17 21:45:13.655323", "stderr": "", "stderr_lines": [], "stdout": " 21:45:13 up 3 days, 11:16, 1 user, load average: 0.03, 0.02, 0.00", "stdout_lines": [" 21:45:13 up 3 days, 11:16, 1 user, load average: 0.03, 0.02, 0.00"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003271", "end": "2025-12-17 21:44:42.946922", "msg": "", "rc": 0, "start": "2025-12-17 21:44:42.943651", "stderr": "", "stderr_lines": [], "stdout": " 21:44:42 up 21 days, 39 min, 0 user, load average: 0.47, 0.45, 0.45", "stdout_lines": [" 21:44:42 up 21 days, 39 min, 0 user, load average: 0.47, 0.45, 0.45"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003131", "end": "2025-12-17 21:44:49.725811", "msg": "", "rc": 0, "start": "2025-12-17 21:44:49.722680", "stderr": "", "stderr_lines": [], "stdout": " 21:44:49 up 17 days, 11:00, 0 user, load average: 0.16, 0.18, 0.23", "stdout_lines": [" 21:44:49 up 17 days, 11:00, 0 user, load average: 0.16, 0.18, 0.23"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004276", "end": "2025-12-17 18:45:13.926497", "msg": "", "rc": 0, "start": "2025-12-17 18:45:13.922221", "stderr": "", "stderr_lines": [], "stdout": " 6:45PM up 22 days, 8:35, 1 user, load averages: 0.33, 0.29, 0.22", "stdout_lines": [" 6:45PM up 22 days, 8:35, 1 user, load averages: 0.33, 0.29, 0.22"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019616", "end": "2025-12-17 21:45:13.860493", "msg": "", "rc": 0, "start": "2025-12-17 21:45:13.840877", "stderr": "", "stderr_lines": [], "stdout": " 21:45:13 up 15 days, 11:11, 1 user, load average: 0.14, 0.12, 0.09", "stdout_lines": [" 21:45:13 up 15 days, 11:11, 1 user, load average: 0.14, 0.12, 0.09"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.006978", "end": "2025-12-17 21:45:14.188799", "msg": "", "rc": 0, "start": "2025-12-17 21:45:14.181821", "stderr": "", "stderr_lines": [], "stdout": " 21:45:14 up 1:52, 1 user, load average: 1.32, 1.18, 1.17", "stdout_lines": [" 21:45:14 up 1:52, 1 user, load average: 1.32, 1.18, 1.17"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003731", "end": "2025-12-17 21:45:14.061765", "msg": "", "rc": 0, "start": "2025-12-17 21:45:14.058034", "stderr": "", "stderr_lines": [], "stdout": " 21:45:14 up 3 days, 11:16, 1 user, load average: 0.08, 0.04, 0.04", "stdout_lines": [" 21:45:14 up 3 days, 11:16, 1 user, load average: 0.08, 0.04, 0.04"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004182", "end": "2025-12-17 21:45:14.461936", "msg": "", "rc": 0, "start": "2025-12-17 21:45:14.457754", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004170", "end": "2025-12-17 21:45:14.492021", "msg": "", "rc": 0, "start": "2025-12-17 21:45:14.487851", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004797", "end": "2025-12-17 21:45:14.503967", "msg": "", "rc": 0, "start": "2025-12-17 21:45:14.499170", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004920", "end": "2025-12-17 21:45:14.524409", "msg": "", "rc": 0, "start": "2025-12-17 21:45:14.519489", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005701", "end": "2025-12-17 21:45:14.536325", "msg": "", "rc": 0, "start": "2025-12-17 21:45:14.530624", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005452", "end": "2025-12-17 21:44:48.188287", "msg": "", "rc": 0, "start": "2025-12-17 21:44:48.182835", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005624", "end": "2025-12-17 21:44:41.636218", "msg": "", "rc": 0, "start": "2025-12-17 21:44:41.630594", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010451", "end": "2025-12-17 21:45:15.241429", "msg": "", "rc": 0, "start": "2025-12-17 21:45:15.230978", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.012702", "end": "2025-12-17 21:45:15.263675", "msg": "", "rc": 0, "start": "2025-12-17 21:45:15.250973", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005863", "end": "2025-12-17 21:45:15.453505", "msg": "", "rc": 0, "start": "2025-12-17 21:45:15.447642", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005662", "end": "2025-12-17 21:44:44.819004", "msg": "", "rc": 0, "start": "2025-12-17 21:44:44.813342", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004573", "end": "2025-12-17 21:44:51.544430", "msg": "", "rc": 0, "start": "2025-12-17 21:44:51.539857", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005239", "end": "2025-12-17 18:45:15.776322", "msg": "", "rc": 0, "start": "2025-12-17 18:45:15.771083", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005292", "end": "2025-12-17 21:45:15.879503", "msg": "", "rc": 0, "start": "2025-12-17 21:45:15.874211", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.020782", "end": "2025-12-17 21:45:16.093083", "msg": "", "rc": 0, "start": "2025-12-17 21:45:16.072301", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025152", "end": "2025-12-17 21:45:15.864728", "msg": "", "rc": 0, "start": "2025-12-17 21:45:15.839576", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004523", "end": "2025-12-17 21:45:16.406522", "msg": "", "rc": 0, "start": "2025-12-17 21:45:16.401999", "stderr": "", "stderr_lines": [], "stdout": "78.2%", "stdout_lines": ["78.2%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004619", "end": "2025-12-17 21:45:16.424279", "msg": "", "rc": 0, "start": "2025-12-17 21:45:16.419660", "stderr": "", "stderr_lines": [], "stdout": "49.3%", "stdout_lines": ["49.3%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004294", "end": "2025-12-17 21:45:16.428625", "msg": "", "rc": 0, "start": "2025-12-17 21:45:16.424331", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005337", "end": "2025-12-17 21:45:16.446837", "msg": "", "rc": 0, "start": "2025-12-17 21:45:16.441500", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005650", "end": "2025-12-17 21:45:16.463993", "msg": "", "rc": 0, "start": "2025-12-17 21:45:16.458343", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003789", "end": "2025-12-17 21:44:50.143929", "msg": "", "rc": 0, "start": "2025-12-17 21:44:50.140140", "stderr": "", "stderr_lines": [], "stdout": "70.6%", "stdout_lines": ["70.6%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004381", "end": "2025-12-17 21:44:43.557161", "msg": "", "rc": 0, "start": "2025-12-17 21:44:43.552780", "stderr": "", "stderr_lines": [], "stdout": "68.3%", "stdout_lines": ["68.3%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010854", "end": "2025-12-17 21:45:17.116507", "msg": "", "rc": 0, "start": "2025-12-17 21:45:17.105653", "stderr": "", "stderr_lines": [], "stdout": "6.9%", "stdout_lines": ["6.9%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012147", "end": "2025-12-17 21:45:17.156047", "msg": "", "rc": 0, "start": "2025-12-17 21:45:17.143900", "stderr": "", "stderr_lines": [], "stdout": "12.8%", "stdout_lines": ["12.8%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005989", "end": "2025-12-17 21:45:17.419181", "msg": "", "rc": 0, "start": "2025-12-17 21:45:17.413192", "stderr": "", "stderr_lines": [], "stdout": "35.6%", "stdout_lines": ["35.6%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004990", "end": "2025-12-17 21:44:46.732990", "msg": "", "rc": 0, "start": "2025-12-17 21:44:46.728000", "stderr": "", "stderr_lines": [], "stdout": "27.3%", "stdout_lines": ["27.3%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003642", "end": "2025-12-17 21:44:53.413739", "msg": "", "rc": 0, "start": "2025-12-17 21:44:53.410097", "stderr": "", "stderr_lines": [], "stdout": "60.2%", "stdout_lines": ["60.2%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005193", "end": "2025-12-17 18:45:17.620003", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 18:45:17.614810", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005406", "end": "2025-12-17 21:45:17.835699", "msg": "", "rc": 0, "start": "2025-12-17 21:45:17.830293", "stderr": "", "stderr_lines": [], "stdout": "14.0%", "stdout_lines": ["14.0%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.008445", "end": "2025-12-17 21:45:18.056596", "msg": "", "rc": 0, "start": "2025-12-17 21:45:18.048151", "stderr": "", "stderr_lines": [], "stdout": "12.9%", "stdout_lines": ["12.9%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.026447", "end": "2025-12-17 21:45:17.829111", "msg": "", "rc": 0, "start": "2025-12-17 21:45:17.802664", "stderr": "", "stderr_lines": [], "stdout": "20.0%", "stdout_lines": ["20.0%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005407", "end": "2025-12-17 21:45:18.395811", "msg": "", "rc": 0, "start": "2025-12-17 21:45:18.390404", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004924", "end": "2025-12-17 21:45:18.411976", "msg": "", "rc": 0, "start": "2025-12-17 21:45:18.407052", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006208", "end": "2025-12-17 21:45:18.433108", "msg": "", "rc": 0, "start": "2025-12-17 21:45:18.426900", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003203", "end": "2025-12-17 21:45:18.439590", "msg": "", "rc": 0, "start": "2025-12-17 21:45:18.436387", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.007967", "end": "2025-12-17 21:45:18.473692", "msg": "", "rc": 0, "start": "2025-12-17 21:45:18.465725", "stderr": "", "stderr_lines": [], "stdout": "51.5°C", "stdout_lines": ["51.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002602", "end": "2025-12-17 21:44:52.116680", "msg": "", "rc": 0, "start": "2025-12-17 21:44:52.114078", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003120", "end": "2025-12-17 21:44:45.552910", "msg": "", "rc": 0, "start": "2025-12-17 21:44:45.549790", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011947", "end": "2025-12-17 21:45:19.125128", "msg": "", "rc": 0, "start": "2025-12-17 21:45:19.113181", "stderr": "", "stderr_lines": [], "stdout": "30.2°C", "stdout_lines": ["30.2°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012705", "end": "2025-12-17 21:45:19.143977", "msg": "", "rc": 0, "start": "2025-12-17 21:45:19.131272", "stderr": "", "stderr_lines": [], "stdout": "34.6°C", "stdout_lines": ["34.6°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003352", "end": "2025-12-17 21:45:19.379195", "msg": "", "rc": 0, "start": "2025-12-17 21:45:19.375843", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003071", "end": "2025-12-17 21:44:48.736728", "msg": "", "rc": 0, "start": "2025-12-17 21:44:48.733657", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004205", "end": "2025-12-17 18:45:19.605133", "msg": "", "rc": 0, "start": "2025-12-17 18:45:19.600928", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002445", "end": "2025-12-17 21:44:55.414275", "msg": "", "rc": 0, "start": "2025-12-17 21:44:55.411830", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002983", "end": "2025-12-17 21:45:19.798727", "msg": "", "rc": 0, "start": "2025-12-17 21:45:19.795744", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004160", "end": "2025-12-17 21:45:20.065764", "msg": "", "rc": 0, "start": "2025-12-17 21:45:20.061604", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028673", "end": "2025-12-17 21:45:19.794073", "msg": "", "rc": 0, "start": "2025-12-17 21:45:19.765400", "stderr": "", "stderr_lines": [], "stdout": "34.1°C", "stdout_lines": ["34.1°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004091", "end": "2025-12-17 21:45:20.316777", "msg": "", "rc": 0, "start": "2025-12-17 21:45:20.312686", "stderr": "", "stderr_lines": [], "stdout": "0.30", "stdout_lines": ["0.30"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004612", "end": "2025-12-17 21:45:20.354993", "msg": "", "rc": 0, "start": "2025-12-17 21:45:20.350381", "stderr": "", "stderr_lines": [], "stdout": "0.41", "stdout_lines": ["0.41"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004232", "end": "2025-12-17 21:45:20.366603", "msg": "", "rc": 0, "start": "2025-12-17 21:45:20.362371", "stderr": "", "stderr_lines": [], "stdout": "0.31", "stdout_lines": ["0.31"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004802", "end": "2025-12-17 21:45:20.371317", "msg": "", "rc": 0, "start": "2025-12-17 21:45:20.366515", "stderr": "", "stderr_lines": [], "stdout": "0.07", "stdout_lines": ["0.07"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005601", "end": "2025-12-17 21:45:20.389502", "msg": "", "rc": 0, "start": "2025-12-17 21:45:20.383901", "stderr": "", "stderr_lines": [], "stdout": "0.78", "stdout_lines": ["0.78"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004671", "end": "2025-12-17 21:44:54.057678", "msg": "", "rc": 0, "start": "2025-12-17 21:44:54.053007", "stderr": "", "stderr_lines": [], "stdout": "0.05", "stdout_lines": ["0.05"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006990", "end": "2025-12-17 21:44:47.511735", "msg": "", "rc": 0, "start": "2025-12-17 21:44:47.504745", "stderr": "", "stderr_lines": [], "stdout": "0.21", "stdout_lines": ["0.21"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010188", "end": "2025-12-17 21:45:21.174096", "msg": "", "rc": 0, "start": "2025-12-17 21:45:21.163908", "stderr": "", "stderr_lines": [], "stdout": "0.36", "stdout_lines": ["0.36"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011381", "end": "2025-12-17 21:45:21.179749", "msg": "", "rc": 0, "start": "2025-12-17 21:45:21.168368", "stderr": "", "stderr_lines": [], "stdout": "0.35", "stdout_lines": ["0.35"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005573", "end": "2025-12-17 21:45:21.323765", "msg": "", "rc": 0, "start": "2025-12-17 21:45:21.318192", "stderr": "", "stderr_lines": [], "stdout": "0.02", "stdout_lines": ["0.02"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005239", "end": "2025-12-17 21:44:50.707775", "msg": "", "rc": 0, "start": "2025-12-17 21:44:50.702536", "stderr": "", "stderr_lines": [], "stdout": "0.83", "stdout_lines": ["0.83"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005887", "end": "2025-12-17 18:45:21.645067", "msg": "", "rc": 0, "start": "2025-12-17 18:45:21.639180", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004267", "end": "2025-12-17 21:44:57.484006", "msg": "", "rc": 0, "start": "2025-12-17 21:44:57.479739", "stderr": "", "stderr_lines": [], "stdout": "0.15", "stdout_lines": ["0.15"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005667", "end": "2025-12-17 21:45:21.752431", "msg": "", "rc": 0, "start": "2025-12-17 21:45:21.746764", "stderr": "", "stderr_lines": [], "stdout": "0.14", "stdout_lines": ["0.14"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024634", "end": "2025-12-17 21:45:21.710557", "msg": "", "rc": 0, "start": "2025-12-17 21:45:21.685923", "stderr": "", "stderr_lines": [], "stdout": "0.20", "stdout_lines": ["0.20"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.007832", "end": "2025-12-17 21:45:22.100080", "msg": "", "rc": 0, "start": "2025-12-17 21:45:22.092248", "stderr": "", "stderr_lines": [], "stdout": "1.35", "stdout_lines": ["1.35"]} + +TASK [Display health status] *************************************************** +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:45:12 up 22 days, 8:36, 1 user, load average: 0.33, 0.19, 0.12\nDisk Usage: 23%\nMemory Usage: 78.2%\nCPU Load: 0.30\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:45:12 up 3 days, 11:17, 1 user, load average: 0.37, 0.34, 0.31\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.31\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:45:12 up 22 days, 8:56, 1 user, load average: 0.28, 0.55, 0.67\nDisk Usage: 14%\nMemory Usage: 49.3%\nCPU Load: 0.41\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:45:12 up 22 days, 10:09, 1 user, load average: 0.64, 0.59, 0.60\nDisk Usage: 14%\nMemory Usage: 59.7%\nCPU Load: 0.78\nCPU Temp: 51.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:45:12 up 22 days, 10:55, 1 user, load average: 0.08, 0.03, 0.01\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.07\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:45:13 up 15 days, 11:11, 1 user, load average: 0.14, 0.12, 0.09\nDisk Usage: 21%\nMemory Usage: 20.0%\nCPU Load: 0.20\nCPU Temp: 34.1°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:45:13 up 194 days, 13:18, 1 user, load average: 0.38, 0.32, 0.24\nDisk Usage: 6%\nMemory Usage: 12.8%\nCPU Load: 0.35\nCPU Temp: 34.6°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:45:13 up 194 days, 13:18, 1 user, load average: 0.31, 0.22, 0.14\nDisk Usage: 3%\nMemory Usage: 6.9%\nCPU Load: 0.36\nCPU Temp: 30.2°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:44:46 up 11 days, 9:34, 0 user, load average: 0.06, 0.19, 0.17\nDisk Usage: 48%\nMemory Usage: 70.6%\nCPU Load: 0.05\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:44:40 up 18 days, 5:46, 0 user, load average: 0.23, 0.07, 0.02\nDisk Usage: 25%\nMemory Usage: 68.3%\nCPU Load: 0.21\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:45:13 up 3 days, 11:16, 1 user, load average: 0.03, 0.02, 0.00\nDisk Usage: 1%\nMemory Usage: 35.6%\nCPU Load: 0.02\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:44:42 up 21 days, 39 min, 0 user, load average: 0.47, 0.45, 0.45\nDisk Usage: 28%\nMemory Usage: 27.3%\nCPU Load: 0.83\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:44:49 up 17 days, 11:00, 0 user, load average: 0.16, 0.18, 0.23\nDisk Usage: 76%\nMemory Usage: 60.2%\nCPU Load: 0.15\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 6:45PM up 22 days, 8:35, 1 user, load averages: 0.33, 0.29, 0.22\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:45:14 up 3 days, 11:16, 1 user, load average: 0.08, 0.04, 0.04\nDisk Usage: 79%\nMemory Usage: 14.0%\nCPU Load: 0.14\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:45:14 up 1:52, 1 user, load average: 1.32, 1.18, 1.17\nDisk Usage: 1%\nMemory Usage: 12.9%\nCPU Load: 1.35\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T02:45:22.916459+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_025022_513dc5_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_025022_513dc5_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..2fc21c2 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_025022_513dc5_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `146e90ed322f4cc3aeeed60470dee690` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T02:50:00.000815+00:00 | +| **Fin** | 2025-12-18T02:50:22.164372+00:00 | +| **Durée** | 22.2s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003286", "end": "2025-12-17 21:50:11.725118", "msg": "", "rc": 0, "start": "2025-12-17 21:50:11.721832", "stderr": "", "stderr_lines": [], "stdout": " 21:50:11 up 22 days, 8:41, 1 user, load average: 0.30, 0.25, 0.16", "stdout_lines": [" 21:50:11 up 22 days, 8:41, 1 user, load average: 0.30, 0.25, 0.16"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003767", "end": "2025-12-17 21:50:11.738328", "msg": "", "rc": 0, "start": "2025-12-17 21:50:11.734561", "stderr": "", "stderr_lines": [], "stdout": " 21:50:11 up 22 days, 11:00, 1 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 21:50:11 up 22 days, 11:00, 1 user, load average: 0.00, 0.00, 0.00"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003943", "end": "2025-12-17 21:50:11.755110", "msg": "", "rc": 0, "start": "2025-12-17 21:50:11.751167", "stderr": "", "stderr_lines": [], "stdout": " 21:50:11 up 22 days, 9:01, 1 user, load average: 1.14, 0.74, 0.70", "stdout_lines": [" 21:50:11 up 22 days, 9:01, 1 user, load average: 1.14, 0.74, 0.70"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002844", "end": "2025-12-17 21:50:11.765960", "msg": "", "rc": 0, "start": "2025-12-17 21:50:11.763116", "stderr": "", "stderr_lines": [], "stdout": " 21:50:11 up 3 days, 11:22, 2 users, load average: 0.48, 0.35, 0.31", "stdout_lines": [" 21:50:11 up 3 days, 11:22, 2 users, load average: 0.48, 0.35, 0.31"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004070", "end": "2025-12-17 21:50:11.754794", "msg": "", "rc": 0, "start": "2025-12-17 21:50:11.750724", "stderr": "", "stderr_lines": [], "stdout": " 21:50:11 up 22 days, 10:14, 1 user, load average: 0.71, 0.62, 0.61", "stdout_lines": [" 21:50:11 up 22 days, 10:14, 1 user, load average: 0.71, 0.62, 0.61"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002855", "end": "2025-12-17 21:49:45.407665", "msg": "", "rc": 0, "start": "2025-12-17 21:49:45.404810", "stderr": "", "stderr_lines": [], "stdout": " 21:49:45 up 11 days, 9:39, 0 user, load average: 0.10, 0.17, 0.16", "stdout_lines": [" 21:49:45 up 11 days, 9:39, 0 user, load average: 0.10, 0.17, 0.16"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003433", "end": "2025-12-17 21:49:38.854203", "msg": "", "rc": 0, "start": "2025-12-17 21:49:38.850770", "stderr": "", "stderr_lines": [], "stdout": " 21:49:38 up 18 days, 5:51, 0 user, load average: 0.10, 0.06, 0.00", "stdout_lines": [" 21:49:38 up 18 days, 5:51, 0 user, load average: 0.10, 0.06, 0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008666", "end": "2025-12-17 21:50:12.416833", "msg": "", "rc": 0, "start": "2025-12-17 21:50:12.408167", "stderr": "", "stderr_lines": [], "stdout": " 21:50:12 up 194 days, 13:23, 1 user, load average: 0.44, 0.22, 0.14", "stdout_lines": [" 21:50:12 up 194 days, 13:23, 1 user, load average: 0.44, 0.22, 0.14"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009203", "end": "2025-12-17 21:50:12.438189", "msg": "", "rc": 0, "start": "2025-12-17 21:50:12.428986", "stderr": "", "stderr_lines": [], "stdout": " 21:50:12 up 194 days, 13:23, 1 user, load average: 0.36, 0.26, 0.23", "stdout_lines": [" 21:50:12 up 194 days, 13:23, 1 user, load average: 0.36, 0.26, 0.23"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004698", "end": "2025-12-17 21:50:12.678914", "msg": "", "rc": 0, "start": "2025-12-17 21:50:12.674216", "stderr": "", "stderr_lines": [], "stdout": " 21:50:12 up 3 days, 11:21, 1 user, load average: 0.08, 0.09, 0.02", "stdout_lines": [" 21:50:12 up 3 days, 11:21, 1 user, load average: 0.08, 0.09, 0.02"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003119", "end": "2025-12-17 21:49:42.037824", "msg": "", "rc": 0, "start": "2025-12-17 21:49:42.034705", "stderr": "", "stderr_lines": [], "stdout": " 21:49:42 up 21 days, 43 min, 0 user, load average: 0.38, 0.40, 0.43", "stdout_lines": [" 21:49:42 up 21 days, 43 min, 0 user, load average: 0.38, 0.40, 0.43"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004070", "end": "2025-12-17 18:50:12.914034", "msg": "", "rc": 0, "start": "2025-12-17 18:50:12.909964", "stderr": "", "stderr_lines": [], "stdout": " 6:50PM up 22 days, 8:40, 1 user, load averages: 0.22, 0.20, 0.19", "stdout_lines": [" 6:50PM up 22 days, 8:40, 1 user, load averages: 0.22, 0.20, 0.19"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.005608", "end": "2025-12-17 21:49:48.751826", "msg": "", "rc": 0, "start": "2025-12-17 21:49:48.746218", "stderr": "", "stderr_lines": [], "stdout": " 21:49:48 up 17 days, 11:05, 0 user, load average: 0.71, 0.29, 0.24", "stdout_lines": [" 21:49:48 up 17 days, 11:05, 0 user, load average: 0.71, 0.29, 0.24"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003661", "end": "2025-12-17 21:50:13.092014", "msg": "", "rc": 0, "start": "2025-12-17 21:50:13.088353", "stderr": "", "stderr_lines": [], "stdout": " 21:50:13 up 3 days, 11:21, 1 user, load average: 0.24, 0.14, 0.08", "stdout_lines": [" 21:50:13 up 3 days, 11:21, 1 user, load average: 0.24, 0.14, 0.08"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.007188", "end": "2025-12-17 21:50:13.499024", "msg": "", "rc": 0, "start": "2025-12-17 21:50:13.491836", "stderr": "", "stderr_lines": [], "stdout": " 21:50:13 up 1:57, 1 user, load average: 1.36, 1.18, 1.17", "stdout_lines": [" 21:50:13 up 1:57, 1 user, load average: 1.36, 1.18, 1.17"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019270", "end": "2025-12-17 21:50:13.118680", "msg": "", "rc": 0, "start": "2025-12-17 21:50:13.099410", "stderr": "", "stderr_lines": [], "stdout": " 21:50:13 up 15 days, 11:16, 1 user, load average: 0.14, 0.11, 0.09", "stdout_lines": [" 21:50:13 up 15 days, 11:16, 1 user, load average: 0.14, 0.11, 0.09"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004218", "end": "2025-12-17 21:50:13.632228", "msg": "", "rc": 0, "start": "2025-12-17 21:50:13.628010", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004112", "end": "2025-12-17 21:50:13.663636", "msg": "", "rc": 0, "start": "2025-12-17 21:50:13.659524", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004734", "end": "2025-12-17 21:50:13.670937", "msg": "", "rc": 0, "start": "2025-12-17 21:50:13.666203", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004838", "end": "2025-12-17 21:50:13.688438", "msg": "", "rc": 0, "start": "2025-12-17 21:50:13.683600", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005435", "end": "2025-12-17 21:50:13.700485", "msg": "", "rc": 0, "start": "2025-12-17 21:50:13.695050", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006386", "end": "2025-12-17 21:49:47.344303", "msg": "", "rc": 0, "start": "2025-12-17 21:49:47.337917", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005593", "end": "2025-12-17 21:49:40.785739", "msg": "", "rc": 0, "start": "2025-12-17 21:49:40.780146", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010523", "end": "2025-12-17 21:50:14.381638", "msg": "", "rc": 0, "start": "2025-12-17 21:50:14.371115", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011793", "end": "2025-12-17 21:50:14.410798", "msg": "", "rc": 0, "start": "2025-12-17 21:50:14.399005", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005828", "end": "2025-12-17 21:50:14.605615", "msg": "", "rc": 0, "start": "2025-12-17 21:50:14.599787", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005499", "end": "2025-12-17 21:49:43.961742", "msg": "", "rc": 0, "start": "2025-12-17 21:49:43.956243", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005308", "end": "2025-12-17 18:50:14.869508", "msg": "", "rc": 0, "start": "2025-12-17 18:50:14.864200", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.008215", "end": "2025-12-17 21:49:50.686011", "msg": "", "rc": 0, "start": "2025-12-17 21:49:50.677796", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005297", "end": "2025-12-17 21:50:15.027970", "msg": "", "rc": 0, "start": "2025-12-17 21:50:15.022673", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.017412", "end": "2025-12-17 21:50:15.487007", "msg": "", "rc": 0, "start": "2025-12-17 21:50:15.469595", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025218", "end": "2025-12-17 21:50:15.015905", "msg": "", "rc": 0, "start": "2025-12-17 21:50:14.990687", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004204", "end": "2025-12-17 21:50:15.558299", "msg": "", "rc": 0, "start": "2025-12-17 21:50:15.554095", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004047", "end": "2025-12-17 21:50:15.562981", "msg": "", "rc": 0, "start": "2025-12-17 21:50:15.558934", "stderr": "", "stderr_lines": [], "stdout": "78.3%", "stdout_lines": ["78.3%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004589", "end": "2025-12-17 21:50:15.576620", "msg": "", "rc": 0, "start": "2025-12-17 21:50:15.572031", "stderr": "", "stderr_lines": [], "stdout": "49.3%", "stdout_lines": ["49.3%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005142", "end": "2025-12-17 21:50:15.596845", "msg": "", "rc": 0, "start": "2025-12-17 21:50:15.591703", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006190", "end": "2025-12-17 21:50:15.607987", "msg": "", "rc": 0, "start": "2025-12-17 21:50:15.601797", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004127", "end": "2025-12-17 21:49:49.243288", "msg": "", "rc": 0, "start": "2025-12-17 21:49:49.239161", "stderr": "", "stderr_lines": [], "stdout": "70.7%", "stdout_lines": ["70.7%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004565", "end": "2025-12-17 21:49:42.685241", "msg": "", "rc": 0, "start": "2025-12-17 21:49:42.680676", "stderr": "", "stderr_lines": [], "stdout": "68.3%", "stdout_lines": ["68.3%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010976", "end": "2025-12-17 21:50:16.248647", "msg": "", "rc": 0, "start": "2025-12-17 21:50:16.237671", "stderr": "", "stderr_lines": [], "stdout": "6.7%", "stdout_lines": ["6.7%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012005", "end": "2025-12-17 21:50:16.287591", "msg": "", "rc": 0, "start": "2025-12-17 21:50:16.275586", "stderr": "", "stderr_lines": [], "stdout": "12.9%", "stdout_lines": ["12.9%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006395", "end": "2025-12-17 21:50:16.516671", "msg": "", "rc": 0, "start": "2025-12-17 21:50:16.510276", "stderr": "", "stderr_lines": [], "stdout": "35.6%", "stdout_lines": ["35.6%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004291", "end": "2025-12-17 21:49:45.853024", "msg": "", "rc": 0, "start": "2025-12-17 21:49:45.848733", "stderr": "", "stderr_lines": [], "stdout": "27.2%", "stdout_lines": ["27.2%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005234", "end": "2025-12-17 18:50:16.753765", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 18:50:16.748531", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011691", "end": "2025-12-17 21:49:52.561003", "msg": "", "rc": 0, "start": "2025-12-17 21:49:52.549312", "stderr": "", "stderr_lines": [], "stdout": "51.5%", "stdout_lines": ["51.5%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006114", "end": "2025-12-17 21:50:16.947370", "msg": "", "rc": 0, "start": "2025-12-17 21:50:16.941256", "stderr": "", "stderr_lines": [], "stdout": "13.9%", "stdout_lines": ["13.9%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.008145", "end": "2025-12-17 21:50:17.401495", "msg": "", "rc": 0, "start": "2025-12-17 21:50:17.393350", "stderr": "", "stderr_lines": [], "stdout": "12.9%", "stdout_lines": ["12.9%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025376", "end": "2025-12-17 21:50:16.944868", "msg": "", "rc": 0, "start": "2025-12-17 21:50:16.919492", "stderr": "", "stderr_lines": [], "stdout": "20.1%", "stdout_lines": ["20.1%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005351", "end": "2025-12-17 21:50:17.474037", "msg": "", "rc": 0, "start": "2025-12-17 21:50:17.468686", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005617", "end": "2025-12-17 21:50:17.490611", "msg": "", "rc": 0, "start": "2025-12-17 21:50:17.484994", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004959", "end": "2025-12-17 21:50:17.493431", "msg": "", "rc": 0, "start": "2025-12-17 21:50:17.488472", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002913", "end": "2025-12-17 21:50:17.517929", "msg": "", "rc": 0, "start": "2025-12-17 21:50:17.515016", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006589", "end": "2025-12-17 21:50:17.530809", "msg": "", "rc": 0, "start": "2025-12-17 21:50:17.524220", "stderr": "", "stderr_lines": [], "stdout": "51.5°C", "stdout_lines": ["51.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002786", "end": "2025-12-17 21:49:51.184289", "msg": "", "rc": 0, "start": "2025-12-17 21:49:51.181503", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003079", "end": "2025-12-17 21:49:44.622023", "msg": "", "rc": 0, "start": "2025-12-17 21:49:44.618944", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011828", "end": "2025-12-17 21:50:18.174207", "msg": "", "rc": 0, "start": "2025-12-17 21:50:18.162379", "stderr": "", "stderr_lines": [], "stdout": "30.2°C", "stdout_lines": ["30.2°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013145", "end": "2025-12-17 21:50:18.216161", "msg": "", "rc": 0, "start": "2025-12-17 21:50:18.203016", "stderr": "", "stderr_lines": [], "stdout": "36.0°C", "stdout_lines": ["36.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003682", "end": "2025-12-17 21:50:18.460691", "msg": "", "rc": 0, "start": "2025-12-17 21:50:18.457009", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002765", "end": "2025-12-17 21:49:47.780402", "msg": "", "rc": 0, "start": "2025-12-17 21:49:47.777637", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002538", "end": "2025-12-17 21:49:54.476204", "msg": "", "rc": 0, "start": "2025-12-17 21:49:54.473666", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003960", "end": "2025-12-17 18:50:18.680890", "msg": "", "rc": 0, "start": "2025-12-17 18:50:18.676930", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002900", "end": "2025-12-17 21:50:18.877189", "msg": "", "rc": 0, "start": "2025-12-17 21:50:18.874289", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004328", "end": "2025-12-17 21:50:19.323368", "msg": "", "rc": 0, "start": "2025-12-17 21:50:19.319040", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028214", "end": "2025-12-17 21:50:18.877230", "msg": "", "rc": 0, "start": "2025-12-17 21:50:18.849016", "stderr": "", "stderr_lines": [], "stdout": "35.0°C", "stdout_lines": ["35.0°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004153", "end": "2025-12-17 21:50:19.427725", "msg": "", "rc": 0, "start": "2025-12-17 21:50:19.423572", "stderr": "", "stderr_lines": [], "stdout": "0.42", "stdout_lines": ["0.42"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004145", "end": "2025-12-17 21:50:19.427577", "msg": "", "rc": 0, "start": "2025-12-17 21:50:19.423432", "stderr": "", "stderr_lines": [], "stdout": "0.44", "stdout_lines": ["0.44"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004658", "end": "2025-12-17 21:50:19.443515", "msg": "", "rc": 0, "start": "2025-12-17 21:50:19.438857", "stderr": "", "stderr_lines": [], "stdout": "1.05", "stdout_lines": ["1.05"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005849", "end": "2025-12-17 21:50:19.463251", "msg": "", "rc": 0, "start": "2025-12-17 21:50:19.457402", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005269", "end": "2025-12-17 21:50:19.480158", "msg": "", "rc": 0, "start": "2025-12-17 21:50:19.474889", "stderr": "", "stderr_lines": [], "stdout": "0.73", "stdout_lines": ["0.73"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004432", "end": "2025-12-17 21:49:53.137834", "msg": "", "rc": 0, "start": "2025-12-17 21:49:53.133402", "stderr": "", "stderr_lines": [], "stdout": "0.39", "stdout_lines": ["0.39"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005118", "end": "2025-12-17 21:49:46.577802", "msg": "", "rc": 0, "start": "2025-12-17 21:49:46.572684", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010142", "end": "2025-12-17 21:50:20.215505", "msg": "", "rc": 0, "start": "2025-12-17 21:50:20.205363", "stderr": "", "stderr_lines": [], "stdout": "0.41", "stdout_lines": ["0.41"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011289", "end": "2025-12-17 21:50:20.261983", "msg": "", "rc": 0, "start": "2025-12-17 21:50:20.250694", "stderr": "", "stderr_lines": [], "stdout": "0.33", "stdout_lines": ["0.33"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005774", "end": "2025-12-17 21:50:20.407976", "msg": "", "rc": 0, "start": "2025-12-17 21:50:20.402202", "stderr": "", "stderr_lines": [], "stdout": "0.15", "stdout_lines": ["0.15"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005523", "end": "2025-12-17 21:49:49.796032", "msg": "", "rc": 0, "start": "2025-12-17 21:49:49.790509", "stderr": "", "stderr_lines": [], "stdout": "0.40", "stdout_lines": ["0.40"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005694", "end": "2025-12-17 18:50:20.739432", "msg": "", "rc": 0, "start": "2025-12-17 18:50:20.733738", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004758", "end": "2025-12-17 21:49:56.543700", "msg": "", "rc": 0, "start": "2025-12-17 21:49:56.538942", "stderr": "", "stderr_lines": [], "stdout": "0.67", "stdout_lines": ["0.67"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005231", "end": "2025-12-17 21:50:20.856973", "msg": "", "rc": 0, "start": "2025-12-17 21:50:20.851742", "stderr": "", "stderr_lines": [], "stdout": "0.22", "stdout_lines": ["0.22"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.007624", "end": "2025-12-17 21:50:21.372239", "msg": "", "rc": 0, "start": "2025-12-17 21:50:21.364615", "stderr": "", "stderr_lines": [], "stdout": "1.57", "stdout_lines": ["1.57"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024534", "end": "2025-12-17 21:50:20.811952", "msg": "", "rc": 0, "start": "2025-12-17 21:50:20.787418", "stderr": "", "stderr_lines": [], "stdout": "0.21", "stdout_lines": ["0.21"]} + +TASK [Display health status] *************************************************** +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:50:11 up 22 days, 8:41, 1 user, load average: 0.30, 0.25, 0.16\nDisk Usage: 23%\nMemory Usage: 78.3%\nCPU Load: 0.42\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:50:11 up 3 days, 11:22, 2 users, load average: 0.48, 0.35, 0.31\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.44\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:50:11 up 22 days, 9:01, 1 user, load average: 1.14, 0.74, 0.70\nDisk Usage: 14%\nMemory Usage: 49.3%\nCPU Load: 1.05\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:50:11 up 22 days, 10:14, 1 user, load average: 0.71, 0.62, 0.61\nDisk Usage: 14%\nMemory Usage: 59.7%\nCPU Load: 0.73\nCPU Temp: 51.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:50:11 up 22 days, 11:00, 1 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:50:13 up 15 days, 11:16, 1 user, load average: 0.14, 0.11, 0.09\nDisk Usage: 21%\nMemory Usage: 20.1%\nCPU Load: 0.21\nCPU Temp: 35.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:50:12 up 194 days, 13:23, 1 user, load average: 0.36, 0.26, 0.23\nDisk Usage: 6%\nMemory Usage: 12.9%\nCPU Load: 0.33\nCPU Temp: 36.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:50:12 up 194 days, 13:23, 1 user, load average: 0.44, 0.22, 0.14\nDisk Usage: 3%\nMemory Usage: 6.7%\nCPU Load: 0.41\nCPU Temp: 30.2°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:49:45 up 11 days, 9:39, 0 user, load average: 0.10, 0.17, 0.16\nDisk Usage: 48%\nMemory Usage: 70.7%\nCPU Load: 0.39\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:49:38 up 18 days, 5:51, 0 user, load average: 0.10, 0.06, 0.00\nDisk Usage: 25%\nMemory Usage: 68.3%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:50:12 up 3 days, 11:21, 1 user, load average: 0.08, 0.09, 0.02\nDisk Usage: 1%\nMemory Usage: 35.6%\nCPU Load: 0.15\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:49:42 up 21 days, 43 min, 0 user, load average: 0.38, 0.40, 0.43\nDisk Usage: 28%\nMemory Usage: 27.2%\nCPU Load: 0.40\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:49:48 up 17 days, 11:05, 0 user, load average: 0.71, 0.29, 0.24\nDisk Usage: 76%\nMemory Usage: 51.5%\nCPU Load: 0.67\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 6:50PM up 22 days, 8:40, 1 user, load averages: 0.22, 0.20, 0.19\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:50:13 up 3 days, 11:21, 1 user, load average: 0.24, 0.14, 0.08\nDisk Usage: 79%\nMemory Usage: 13.9%\nCPU Load: 0.22\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:50:13 up 1:57, 1 user, load average: 1.36, 1.18, 1.17\nDisk Usage: 1%\nMemory Usage: 12.9%\nCPU Load: 1.57\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T02:50:22.205030+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_025522_3c9963_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_025522_3c9963_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..7793d90 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_025522_3c9963_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `b800b36d3b954f118a55ca509c384a87` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T02:55:00.000874+00:00 | +| **Fin** | 2025-12-18T02:55:21.969926+00:00 | +| **Durée** | 22.0s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003242", "end": "2025-12-17 21:55:11.528600", "msg": "", "rc": 0, "start": "2025-12-17 21:55:11.525358", "stderr": "", "stderr_lines": [], "stdout": " 21:55:11 up 22 days, 8:46, 1 user, load average: 0.26, 0.30, 0.20", "stdout_lines": [" 21:55:11 up 22 days, 8:46, 1 user, load average: 0.26, 0.30, 0.20"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003919", "end": "2025-12-17 21:55:11.540524", "msg": "", "rc": 0, "start": "2025-12-17 21:55:11.536605", "stderr": "", "stderr_lines": [], "stdout": " 21:55:11 up 22 days, 11:05, 1 user, load average: 0.00, 0.02, 0.00", "stdout_lines": [" 21:55:11 up 22 days, 11:05, 1 user, load average: 0.00, 0.02, 0.00"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003482", "end": "2025-12-17 21:55:11.544326", "msg": "", "rc": 0, "start": "2025-12-17 21:55:11.540844", "stderr": "", "stderr_lines": [], "stdout": " 21:55:11 up 22 days, 9:06, 2 users, load average: 0.80, 0.76, 0.72", "stdout_lines": [" 21:55:11 up 22 days, 9:06, 2 users, load average: 0.80, 0.76, 0.72"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002846", "end": "2025-12-17 21:55:11.570701", "msg": "", "rc": 0, "start": "2025-12-17 21:55:11.567855", "stderr": "", "stderr_lines": [], "stdout": " 21:55:11 up 3 days, 11:27, 2 users, load average: 0.45, 0.36, 0.31", "stdout_lines": [" 21:55:11 up 3 days, 11:27, 2 users, load average: 0.45, 0.36, 0.31"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002966", "end": "2025-12-17 21:54:45.209890", "msg": "", "rc": 0, "start": "2025-12-17 21:54:45.206924", "stderr": "", "stderr_lines": [], "stdout": " 21:54:45 up 11 days, 9:44, 0 user, load average: 0.17, 0.19, 0.18", "stdout_lines": [" 21:54:45 up 11 days, 9:44, 0 user, load average: 0.17, 0.19, 0.18"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008533", "end": "2025-12-17 21:55:12.210640", "msg": "", "rc": 0, "start": "2025-12-17 21:55:12.202107", "stderr": "", "stderr_lines": [], "stdout": " 21:55:12 up 194 days, 13:28, 1 user, load average: 0.07, 0.13, 0.12", "stdout_lines": [" 21:55:12 up 194 days, 13:28, 1 user, load average: 0.07, 0.13, 0.12"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009255", "end": "2025-12-17 21:55:12.241511", "msg": "", "rc": 0, "start": "2025-12-17 21:55:12.232256", "stderr": "", "stderr_lines": [], "stdout": " 21:55:12 up 194 days, 13:28, 1 user, load average: 0.22, 0.21, 0.20", "stdout_lines": [" 21:55:12 up 194 days, 13:28, 1 user, load average: 0.22, 0.21, 0.20"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003462", "end": "2025-12-17 21:54:39.084950", "msg": "", "rc": 0, "start": "2025-12-17 21:54:39.081488", "stderr": "", "stderr_lines": [], "stdout": " 21:54:39 up 18 days, 5:56, 0 user, load average: 0.25, 0.08, 0.02", "stdout_lines": [" 21:54:39 up 18 days, 5:56, 0 user, load average: 0.25, 0.08, 0.02"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004580", "end": "2025-12-17 21:55:12.575358", "msg": "", "rc": 0, "start": "2025-12-17 21:55:11.570778", "stderr": "", "stderr_lines": [], "stdout": " 21:55:11 up 22 days, 10:19, 1 user, load average: 0.72, 0.62, 0.61", "stdout_lines": [" 21:55:11 up 22 days, 10:19, 1 user, load average: 0.72, 0.62, 0.61"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004793", "end": "2025-12-17 21:55:12.720563", "msg": "", "rc": 0, "start": "2025-12-17 21:55:12.715770", "stderr": "", "stderr_lines": [], "stdout": " 21:55:12 up 3 days, 11:26, 1 user, load average: 0.23, 0.09, 0.03", "stdout_lines": [" 21:55:12 up 3 days, 11:26, 1 user, load average: 0.23, 0.09, 0.03"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003263", "end": "2025-12-17 21:54:41.994046", "msg": "", "rc": 0, "start": "2025-12-17 21:54:41.990783", "stderr": "", "stderr_lines": [], "stdout": " 21:54:41 up 21 days, 48 min, 0 user, load average: 0.43, 0.41, 0.42", "stdout_lines": [" 21:54:41 up 21 days, 48 min, 0 user, load average: 0.43, 0.41, 0.42"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004129", "end": "2025-12-17 18:55:12.988086", "msg": "", "rc": 0, "start": "2025-12-17 18:55:12.983957", "stderr": "", "stderr_lines": [], "stdout": " 6:55PM up 22 days, 8:45, 1 user, load averages: 0.14, 0.20, 0.18", "stdout_lines": [" 6:55PM up 22 days, 8:45, 1 user, load averages: 0.14, 0.20, 0.18"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.005244", "end": "2025-12-17 21:54:48.815297", "msg": "", "rc": 0, "start": "2025-12-17 21:54:48.810053", "stderr": "", "stderr_lines": [], "stdout": " 21:54:48 up 17 days, 11:10, 0 user, load average: 0.30, 0.31, 0.27", "stdout_lines": [" 21:54:48 up 17 days, 11:10, 0 user, load average: 0.30, 0.31, 0.27"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019373", "end": "2025-12-17 21:55:12.902290", "msg": "", "rc": 0, "start": "2025-12-17 21:55:12.882917", "stderr": "", "stderr_lines": [], "stdout": " 21:55:12 up 15 days, 11:21, 1 user, load average: 0.22, 0.12, 0.10", "stdout_lines": [" 21:55:12 up 15 days, 11:21, 1 user, load average: 0.22, 0.12, 0.10"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.007311", "end": "2025-12-17 21:55:13.159940", "msg": "", "rc": 0, "start": "2025-12-17 21:55:13.152629", "stderr": "", "stderr_lines": [], "stdout": " 21:55:13 up 2:03, 1 user, load average: 1.38, 1.22, 1.18", "stdout_lines": [" 21:55:13 up 2:03, 1 user, load average: 1.38, 1.22, 1.18"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003689", "end": "2025-12-17 21:55:13.143203", "msg": "", "rc": 0, "start": "2025-12-17 21:55:13.139514", "stderr": "", "stderr_lines": [], "stdout": " 21:55:13 up 3 days, 11:26, 1 user, load average: 0.00, 0.05, 0.06", "stdout_lines": [" 21:55:13 up 3 days, 11:26, 1 user, load average: 0.00, 0.05, 0.06"]} + +TASK [Get disk usage] ********************************************************** +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004207", "end": "2025-12-17 21:55:13.569445", "msg": "", "rc": 0, "start": "2025-12-17 21:55:13.565238", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004753", "end": "2025-12-17 21:55:13.584917", "msg": "", "rc": 0, "start": "2025-12-17 21:55:13.580164", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004881", "end": "2025-12-17 21:55:13.609326", "msg": "", "rc": 0, "start": "2025-12-17 21:55:13.604445", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006145", "end": "2025-12-17 21:55:13.618658", "msg": "", "rc": 0, "start": "2025-12-17 21:55:13.612513", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.067861", "end": "2025-12-17 21:55:13.914175", "msg": "", "rc": 0, "start": "2025-12-17 21:55:13.846314", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005241", "end": "2025-12-17 21:54:47.281603", "msg": "", "rc": 0, "start": "2025-12-17 21:54:47.276362", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010854", "end": "2025-12-17 21:55:14.314367", "msg": "", "rc": 0, "start": "2025-12-17 21:55:14.303513", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011824", "end": "2025-12-17 21:55:14.347896", "msg": "", "rc": 0, "start": "2025-12-17 21:55:14.336072", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005339", "end": "2025-12-17 21:54:40.958941", "msg": "", "rc": 0, "start": "2025-12-17 21:54:40.953602", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005726", "end": "2025-12-17 21:55:14.551231", "msg": "", "rc": 0, "start": "2025-12-17 21:55:14.545505", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006064", "end": "2025-12-17 18:55:14.853559", "msg": "", "rc": 0, "start": "2025-12-17 18:55:14.847495", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005276", "end": "2025-12-17 21:54:50.670958", "msg": "", "rc": 0, "start": "2025-12-17 21:54:50.665682", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005635", "end": "2025-12-17 21:54:44.070653", "msg": "", "rc": 0, "start": "2025-12-17 21:54:44.065018", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005323", "end": "2025-12-17 21:55:14.970577", "msg": "", "rc": 0, "start": "2025-12-17 21:55:14.965254", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025423", "end": "2025-12-17 21:55:14.955212", "msg": "", "rc": 0, "start": "2025-12-17 21:55:14.929789", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.018836", "end": "2025-12-17 21:55:15.227544", "msg": "", "rc": 0, "start": "2025-12-17 21:55:15.208708", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004252", "end": "2025-12-17 21:55:15.567424", "msg": "", "rc": 0, "start": "2025-12-17 21:55:15.563172", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004925", "end": "2025-12-17 21:55:15.582132", "msg": "", "rc": 0, "start": "2025-12-17 21:55:15.577207", "stderr": "", "stderr_lines": [], "stdout": "49.2%", "stdout_lines": ["49.2%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004290", "end": "2025-12-17 21:55:15.597878", "msg": "", "rc": 0, "start": "2025-12-17 21:55:15.593588", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005558", "end": "2025-12-17 21:55:15.612313", "msg": "", "rc": 0, "start": "2025-12-17 21:55:15.606755", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004551", "end": "2025-12-17 21:55:15.953380", "msg": "", "rc": 0, "start": "2025-12-17 21:55:15.948829", "stderr": "", "stderr_lines": [], "stdout": "78.3%", "stdout_lines": ["78.3%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004610", "end": "2025-12-17 21:54:49.281518", "msg": "", "rc": 0, "start": "2025-12-17 21:54:49.276908", "stderr": "", "stderr_lines": [], "stdout": "70.7%", "stdout_lines": ["70.7%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011010", "end": "2025-12-17 21:55:16.285121", "msg": "", "rc": 0, "start": "2025-12-17 21:55:16.274111", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011836", "end": "2025-12-17 21:55:16.291287", "msg": "", "rc": 0, "start": "2025-12-17 21:55:16.279451", "stderr": "", "stderr_lines": [], "stdout": "13.0%", "stdout_lines": ["13.0%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004360", "end": "2025-12-17 21:54:43.003220", "msg": "", "rc": 0, "start": "2025-12-17 21:54:42.998860", "stderr": "", "stderr_lines": [], "stdout": "68.3%", "stdout_lines": ["68.3%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005736", "end": "2025-12-17 21:55:16.558555", "msg": "", "rc": 0, "start": "2025-12-17 21:55:16.552819", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004509", "end": "2025-12-17 21:54:52.602812", "msg": "", "rc": 0, "start": "2025-12-17 21:54:52.598303", "stderr": "", "stderr_lines": [], "stdout": "51.3%", "stdout_lines": ["51.3%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003969", "end": "2025-12-17 21:54:46.034961", "msg": "", "rc": 0, "start": "2025-12-17 21:54:46.030992", "stderr": "", "stderr_lines": [], "stdout": "27.2%", "stdout_lines": ["27.2%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005229", "end": "2025-12-17 18:55:16.898219", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 18:55:16.892990", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005347", "end": "2025-12-17 21:55:16.981602", "msg": "", "rc": 0, "start": "2025-12-17 21:55:16.976255", "stderr": "", "stderr_lines": [], "stdout": "13.9%", "stdout_lines": ["13.9%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.008816", "end": "2025-12-17 21:55:17.201426", "msg": "", "rc": 0, "start": "2025-12-17 21:55:17.192610", "stderr": "", "stderr_lines": [], "stdout": "12.9%", "stdout_lines": ["12.9%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025774", "end": "2025-12-17 21:55:16.970709", "msg": "", "rc": 0, "start": "2025-12-17 21:55:16.944935", "stderr": "", "stderr_lines": [], "stdout": "20.8%", "stdout_lines": ["20.8%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004873", "end": "2025-12-17 21:55:17.512099", "msg": "", "rc": 0, "start": "2025-12-17 21:55:17.507226", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005658", "end": "2025-12-17 21:55:17.523910", "msg": "", "rc": 0, "start": "2025-12-17 21:55:17.518252", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003221", "end": "2025-12-17 21:55:17.544583", "msg": "", "rc": 0, "start": "2025-12-17 21:55:17.541362", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006354", "end": "2025-12-17 21:55:17.571372", "msg": "", "rc": 0, "start": "2025-12-17 21:55:17.565018", "stderr": "", "stderr_lines": [], "stdout": "52.0°C", "stdout_lines": ["52.0°C"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005540", "end": "2025-12-17 21:55:17.719352", "msg": "", "rc": 0, "start": "2025-12-17 21:55:17.713812", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002954", "end": "2025-12-17 21:54:51.248570", "msg": "", "rc": 0, "start": "2025-12-17 21:54:51.245616", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012551", "end": "2025-12-17 21:55:18.213101", "msg": "", "rc": 0, "start": "2025-12-17 21:55:18.200550", "stderr": "", "stderr_lines": [], "stdout": "30.7°C", "stdout_lines": ["30.7°C"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003086", "end": "2025-12-17 21:54:44.783461", "msg": "", "rc": 0, "start": "2025-12-17 21:54:44.780375", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012932", "end": "2025-12-17 21:55:18.251623", "msg": "", "rc": 0, "start": "2025-12-17 21:55:18.238691", "stderr": "", "stderr_lines": [], "stdout": "34.6°C", "stdout_lines": ["34.6°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003112", "end": "2025-12-17 21:55:18.531831", "msg": "", "rc": 0, "start": "2025-12-17 21:55:18.528719", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004129", "end": "2025-12-17 18:55:18.732604", "msg": "", "rc": 0, "start": "2025-12-17 18:55:18.728475", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002859", "end": "2025-12-17 21:54:54.548325", "msg": "", "rc": 0, "start": "2025-12-17 21:54:54.545466", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003402", "end": "2025-12-17 21:54:47.980005", "msg": "", "rc": 0, "start": "2025-12-17 21:54:47.976603", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003105", "end": "2025-12-17 21:55:18.944374", "msg": "", "rc": 0, "start": "2025-12-17 21:55:18.941269", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004225", "end": "2025-12-17 21:55:19.153191", "msg": "", "rc": 0, "start": "2025-12-17 21:55:19.148966", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.029067", "end": "2025-12-17 21:55:18.915825", "msg": "", "rc": 0, "start": "2025-12-17 21:55:18.886758", "stderr": "", "stderr_lines": [], "stdout": "34.5°C", "stdout_lines": ["34.5°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004222", "end": "2025-12-17 21:55:19.457829", "msg": "", "rc": 0, "start": "2025-12-17 21:55:19.453607", "stderr": "", "stderr_lines": [], "stdout": "0.41", "stdout_lines": ["0.41"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004607", "end": "2025-12-17 21:55:19.482545", "msg": "", "rc": 0, "start": "2025-12-17 21:55:19.477938", "stderr": "", "stderr_lines": [], "stdout": "0.74", "stdout_lines": ["0.74"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004999", "end": "2025-12-17 21:55:19.508093", "msg": "", "rc": 0, "start": "2025-12-17 21:55:19.503094", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005640", "end": "2025-12-17 21:55:19.518435", "msg": "", "rc": 0, "start": "2025-12-17 21:55:19.512795", "stderr": "", "stderr_lines": [], "stdout": "0.75", "stdout_lines": ["0.75"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004012", "end": "2025-12-17 21:55:19.737671", "msg": "", "rc": 0, "start": "2025-12-17 21:55:19.733659", "stderr": "", "stderr_lines": [], "stdout": "0.54", "stdout_lines": ["0.54"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004208", "end": "2025-12-17 21:54:53.148500", "msg": "", "rc": 0, "start": "2025-12-17 21:54:53.144292", "stderr": "", "stderr_lines": [], "stdout": "0.51", "stdout_lines": ["0.51"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005122", "end": "2025-12-17 21:54:46.786109", "msg": "", "rc": 0, "start": "2025-12-17 21:54:46.780987", "stderr": "", "stderr_lines": [], "stdout": "0.21", "stdout_lines": ["0.21"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010153", "end": "2025-12-17 21:55:20.242739", "msg": "", "rc": 0, "start": "2025-12-17 21:55:20.232586", "stderr": "", "stderr_lines": [], "stdout": "0.13", "stdout_lines": ["0.13"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011075", "end": "2025-12-17 21:55:20.273378", "msg": "", "rc": 0, "start": "2025-12-17 21:55:20.262303", "stderr": "", "stderr_lines": [], "stdout": "0.20", "stdout_lines": ["0.20"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005697", "end": "2025-12-17 21:55:20.425900", "msg": "", "rc": 0, "start": "2025-12-17 21:55:20.420203", "stderr": "", "stderr_lines": [], "stdout": "0.35", "stdout_lines": ["0.35"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005850", "end": "2025-12-17 18:55:20.733772", "msg": "", "rc": 0, "start": "2025-12-17 18:55:20.727922", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004566", "end": "2025-12-17 21:54:56.552208", "msg": "", "rc": 0, "start": "2025-12-17 21:54:56.547642", "stderr": "", "stderr_lines": [], "stdout": "0.25", "stdout_lines": ["0.25"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005056", "end": "2025-12-17 21:54:49.970684", "msg": "", "rc": 0, "start": "2025-12-17 21:54:49.965628", "stderr": "", "stderr_lines": [], "stdout": "0.44", "stdout_lines": ["0.44"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005222", "end": "2025-12-17 21:55:20.846260", "msg": "", "rc": 0, "start": "2025-12-17 21:55:20.841038", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024240", "end": "2025-12-17 21:55:20.849789", "msg": "", "rc": 0, "start": "2025-12-17 21:55:20.825549", "stderr": "", "stderr_lines": [], "stdout": "0.28", "stdout_lines": ["0.28"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.008044", "end": "2025-12-17 21:55:21.192776", "msg": "", "rc": 0, "start": "2025-12-17 21:55:21.184732", "stderr": "", "stderr_lines": [], "stdout": "1.43", "stdout_lines": ["1.43"]} + +TASK [Display health status] *************************************************** +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:55:11 up 22 days, 8:46, 1 user, load average: 0.26, 0.30, 0.20\nDisk Usage: 23%\nMemory Usage: 78.3%\nCPU Load: 0.54\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:55:11 up 3 days, 11:27, 2 users, load average: 0.45, 0.36, 0.31\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.41\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:55:11 up 22 days, 9:06, 2 users, load average: 0.80, 0.76, 0.72\nDisk Usage: 14%\nMemory Usage: 49.2%\nCPU Load: 0.74\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:55:11 up 22 days, 10:19, 1 user, load average: 0.72, 0.62, 0.61\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.75\nCPU Temp: 52.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:55:11 up 22 days, 11:05, 1 user, load average: 0.00, 0.02, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:55:12 up 15 days, 11:21, 1 user, load average: 0.22, 0.12, 0.10\nDisk Usage: 21%\nMemory Usage: 20.8%\nCPU Load: 0.28\nCPU Temp: 34.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:55:12 up 194 days, 13:28, 1 user, load average: 0.22, 0.21, 0.20\nDisk Usage: 6%\nMemory Usage: 13.0%\nCPU Load: 0.20\nCPU Temp: 34.6°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:55:12 up 194 days, 13:28, 1 user, load average: 0.07, 0.13, 0.12\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.13\nCPU Temp: 30.7°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:54:45 up 11 days, 9:44, 0 user, load average: 0.17, 0.19, 0.18\nDisk Usage: 48%\nMemory Usage: 70.7%\nCPU Load: 0.51\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:54:39 up 18 days, 5:56, 0 user, load average: 0.25, 0.08, 0.02\nDisk Usage: 25%\nMemory Usage: 68.3%\nCPU Load: 0.21\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:55:12 up 3 days, 11:26, 1 user, load average: 0.23, 0.09, 0.03\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.35\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:54:41 up 21 days, 48 min, 0 user, load average: 0.43, 0.41, 0.42\nDisk Usage: 28%\nMemory Usage: 27.2%\nCPU Load: 0.44\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:54:48 up 17 days, 11:10, 0 user, load average: 0.30, 0.31, 0.27\nDisk Usage: 76%\nMemory Usage: 51.3%\nCPU Load: 0.25\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 6:55PM up 22 days, 8:45, 1 user, load averages: 0.14, 0.20, 0.18\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:55:13 up 3 days, 11:26, 1 user, load average: 0.00, 0.05, 0.06\nDisk Usage: 79%\nMemory Usage: 13.9%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:55:13 up 2:03, 1 user, load average: 1.38, 1.22, 1.18\nDisk Usage: 1%\nMemory Usage: 12.9%\nCPU Load: 1.43\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T02:55:22.011933+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_030022_cc12a8_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_030022_cc12a8_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..016a565 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_030022_cc12a8_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `0516f6128798436483e2dccd986ec98c` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T03:00:00.000466+00:00 | +| **Fin** | 2025-12-18T03:00:22.825649+00:00 | +| **Durée** | 22.8s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003249", "end": "2025-12-17 22:00:11.844607", "msg": "", "rc": 0, "start": "2025-12-17 22:00:11.841358", "stderr": "", "stderr_lines": [], "stdout": " 22:00:11 up 22 days, 8:51, 1 user, load average: 0.41, 0.35, 0.25", "stdout_lines": [" 22:00:11 up 22 days, 8:51, 1 user, load average: 0.41, 0.35, 0.25"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003705", "end": "2025-12-17 22:00:11.862035", "msg": "", "rc": 0, "start": "2025-12-17 22:00:11.858330", "stderr": "", "stderr_lines": [], "stdout": " 22:00:11 up 22 days, 11:10, 1 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 22:00:11 up 22 days, 11:10, 1 user, load average: 0.00, 0.00, 0.00"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003027", "end": "2025-12-17 22:00:11.888092", "msg": "", "rc": 0, "start": "2025-12-17 22:00:11.885065", "stderr": "", "stderr_lines": [], "stdout": " 22:00:11 up 3 days, 11:32, 3 users, load average: 0.53, 0.36, 0.30", "stdout_lines": [" 22:00:11 up 3 days, 11:32, 3 users, load average: 0.53, 0.36, 0.30"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008519", "end": "2025-12-17 22:00:12.515129", "msg": "", "rc": 0, "start": "2025-12-17 22:00:12.506610", "stderr": "", "stderr_lines": [], "stdout": " 22:00:12 up 194 days, 13:33, 1 user, load average: 0.08, 0.11, 0.10", "stdout_lines": [" 22:00:12 up 194 days, 13:33, 1 user, load average: 0.08, 0.11, 0.10"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009287", "end": "2025-12-17 22:00:12.563561", "msg": "", "rc": 0, "start": "2025-12-17 22:00:12.554274", "stderr": "", "stderr_lines": [], "stdout": " 22:00:12 up 194 days, 13:33, 1 user, load average: 0.09, 0.16, 0.17", "stdout_lines": [" 22:00:12 up 194 days, 13:33, 1 user, load average: 0.09, 0.16, 0.17"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004303", "end": "2025-12-17 22:00:12.884627", "msg": "", "rc": 0, "start": "2025-12-17 22:00:11.880324", "stderr": "", "stderr_lines": [], "stdout": " 22:00:11 up 22 days, 9:11, 1 user, load average: 0.55, 0.59, 0.65", "stdout_lines": [" 22:00:11 up 22 days, 9:11, 1 user, load average: 0.55, 0.59, 0.65"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004461", "end": "2025-12-17 22:00:12.892416", "msg": "", "rc": 0, "start": "2025-12-17 22:00:11.887955", "stderr": "", "stderr_lines": [], "stdout": " 22:00:11 up 22 days, 10:24, 1 user, load average: 0.91, 0.68, 0.64", "stdout_lines": [" 22:00:11 up 22 days, 10:24, 1 user, load average: 0.91, 0.68, 0.64"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002947", "end": "2025-12-17 21:59:46.189486", "msg": "", "rc": 0, "start": "2025-12-17 21:59:46.186539", "stderr": "", "stderr_lines": [], "stdout": " 21:59:46 up 11 days, 9:49, 0 user, load average: 0.11, 0.14, 0.16", "stdout_lines": [" 21:59:46 up 11 days, 9:49, 0 user, load average: 0.11, 0.14, 0.16"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004232", "end": "2025-12-17 21:59:39.677000", "msg": "", "rc": 0, "start": "2025-12-17 21:59:39.672768", "stderr": "", "stderr_lines": [], "stdout": " 21:59:39 up 18 days, 6:01, 0 user, load average: 0.01, 0.04, 0.00", "stdout_lines": [" 21:59:39 up 18 days, 6:01, 0 user, load average: 0.01, 0.04, 0.00"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019572", "end": "2025-12-17 22:00:13.230206", "msg": "", "rc": 0, "start": "2025-12-17 22:00:13.210634", "stderr": "", "stderr_lines": [], "stdout": " 22:00:13 up 15 days, 11:26, 1 user, load average: 0.23, 0.16, 0.10", "stdout_lines": [" 22:00:13 up 15 days, 11:26, 1 user, load average: 0.23, 0.16, 0.10"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004846", "end": "2025-12-17 22:00:13.359064", "msg": "", "rc": 0, "start": "2025-12-17 22:00:13.354218", "stderr": "", "stderr_lines": [], "stdout": " 22:00:13 up 3 days, 11:31, 1 user, load average: 0.14, 0.09, 0.04", "stdout_lines": [" 22:00:13 up 3 days, 11:31, 1 user, load average: 0.14, 0.09, 0.04"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003072", "end": "2025-12-17 21:59:42.619270", "msg": "", "rc": 0, "start": "2025-12-17 21:59:42.616198", "stderr": "", "stderr_lines": [], "stdout": " 21:59:42 up 21 days, 54 min, 0 user, load average: 0.38, 0.45, 0.45", "stdout_lines": [" 21:59:42 up 21 days, 54 min, 0 user, load average: 0.38, 0.45, 0.45"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004123", "end": "2025-12-17 21:59:49.264482", "msg": "", "rc": 0, "start": "2025-12-17 21:59:49.260359", "stderr": "", "stderr_lines": [], "stdout": " 21:59:49 up 17 days, 11:15, 0 user, load average: 0.21, 0.25, 0.26", "stdout_lines": [" 21:59:49 up 17 days, 11:15, 0 user, load average: 0.21, 0.25, 0.26"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004169", "end": "2025-12-17 19:00:13.578482", "msg": "", "rc": 0, "start": "2025-12-17 19:00:13.574313", "stderr": "", "stderr_lines": [], "stdout": " 7:00PM up 22 days, 8:50, 1 user, load averages: 0.03, 0.12, 0.15", "stdout_lines": [" 7:00PM up 22 days, 8:50, 1 user, load averages: 0.03, 0.12, 0.15"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.007916", "end": "2025-12-17 22:00:13.949548", "msg": "", "rc": 0, "start": "2025-12-17 22:00:13.941632", "stderr": "", "stderr_lines": [], "stdout": " 22:00:13 up 2:08, 1 user, load average: 1.48, 1.21, 1.18", "stdout_lines": [" 22:00:13 up 2:08, 1 user, load average: 1.48, 1.21, 1.18"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003713", "end": "2025-12-17 22:00:13.763836", "msg": "", "rc": 0, "start": "2025-12-17 22:00:13.760123", "stderr": "", "stderr_lines": [], "stdout": " 22:00:13 up 3 days, 11:31, 1 user, load average: 0.00, 0.01, 0.03", "stdout_lines": [" 22:00:13 up 3 days, 11:31, 1 user, load average: 0.00, 0.01, 0.03"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004211", "end": "2025-12-17 22:00:14.187436", "msg": "", "rc": 0, "start": "2025-12-17 22:00:14.183225", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004069", "end": "2025-12-17 22:00:14.198628", "msg": "", "rc": 0, "start": "2025-12-17 22:00:14.194559", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005000", "end": "2025-12-17 22:00:14.194235", "msg": "", "rc": 0, "start": "2025-12-17 22:00:14.189235", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004486", "end": "2025-12-17 22:00:14.239201", "msg": "", "rc": 0, "start": "2025-12-17 22:00:14.234715", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005354", "end": "2025-12-17 22:00:14.246617", "msg": "", "rc": 0, "start": "2025-12-17 22:00:14.241263", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005760", "end": "2025-12-17 21:59:47.867780", "msg": "", "rc": 0, "start": "2025-12-17 21:59:47.862020", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005727", "end": "2025-12-17 21:59:41.312432", "msg": "", "rc": 0, "start": "2025-12-17 21:59:41.306705", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010690", "end": "2025-12-17 22:00:14.980973", "msg": "", "rc": 0, "start": "2025-12-17 22:00:14.970283", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011589", "end": "2025-12-17 22:00:15.017204", "msg": "", "rc": 0, "start": "2025-12-17 22:00:15.005615", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006255", "end": "2025-12-17 22:00:15.177126", "msg": "", "rc": 0, "start": "2025-12-17 22:00:15.170871", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005316", "end": "2025-12-17 21:59:44.491521", "msg": "", "rc": 0, "start": "2025-12-17 21:59:44.486205", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004741", "end": "2025-12-17 21:59:51.265329", "msg": "", "rc": 0, "start": "2025-12-17 21:59:51.260588", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006299", "end": "2025-12-17 19:00:15.476558", "msg": "", "rc": 0, "start": "2025-12-17 19:00:15.470259", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005504", "end": "2025-12-17 22:00:15.604891", "msg": "", "rc": 0, "start": "2025-12-17 22:00:15.599387", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.019689", "end": "2025-12-17 22:00:15.945779", "msg": "", "rc": 0, "start": "2025-12-17 22:00:15.926090", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.024863", "end": "2025-12-17 22:00:15.579534", "msg": "", "rc": 0, "start": "2025-12-17 22:00:15.554671", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004286", "end": "2025-12-17 22:00:16.098131", "msg": "", "rc": 0, "start": "2025-12-17 22:00:16.093845", "stderr": "", "stderr_lines": [], "stdout": "78.4%", "stdout_lines": ["78.4%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004127", "end": "2025-12-17 22:00:16.112892", "msg": "", "rc": 0, "start": "2025-12-17 22:00:16.108765", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004972", "end": "2025-12-17 22:00:16.137026", "msg": "", "rc": 0, "start": "2025-12-17 22:00:16.132054", "stderr": "", "stderr_lines": [], "stdout": "49.2%", "stdout_lines": ["49.2%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005084", "end": "2025-12-17 22:00:16.158427", "msg": "", "rc": 0, "start": "2025-12-17 22:00:16.153343", "stderr": "", "stderr_lines": [], "stdout": "9.1%", "stdout_lines": ["9.1%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005527", "end": "2025-12-17 22:00:16.176446", "msg": "", "rc": 0, "start": "2025-12-17 22:00:16.170919", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003464", "end": "2025-12-17 21:59:49.796696", "msg": "", "rc": 0, "start": "2025-12-17 21:59:49.793232", "stderr": "", "stderr_lines": [], "stdout": "70.6%", "stdout_lines": ["70.6%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004506", "end": "2025-12-17 21:59:43.247220", "msg": "", "rc": 0, "start": "2025-12-17 21:59:43.242714", "stderr": "", "stderr_lines": [], "stdout": "68.3%", "stdout_lines": ["68.3%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010893", "end": "2025-12-17 22:00:16.787293", "msg": "", "rc": 0, "start": "2025-12-17 22:00:16.776400", "stderr": "", "stderr_lines": [], "stdout": "6.9%", "stdout_lines": ["6.9%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011849", "end": "2025-12-17 22:00:16.822172", "msg": "", "rc": 0, "start": "2025-12-17 22:00:16.810323", "stderr": "", "stderr_lines": [], "stdout": "13.2%", "stdout_lines": ["13.2%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006059", "end": "2025-12-17 22:00:17.083459", "msg": "", "rc": 0, "start": "2025-12-17 22:00:17.077400", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003966", "end": "2025-12-17 21:59:46.422656", "msg": "", "rc": 0, "start": "2025-12-17 21:59:46.418690", "stderr": "", "stderr_lines": [], "stdout": "27.3%", "stdout_lines": ["27.3%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003675", "end": "2025-12-17 21:59:53.079592", "msg": "", "rc": 0, "start": "2025-12-17 21:59:53.075917", "stderr": "", "stderr_lines": [], "stdout": "51.7%", "stdout_lines": ["51.7%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005237", "end": "2025-12-17 19:00:17.278112", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 19:00:17.272875", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.008996", "end": "2025-12-17 22:00:17.924661", "msg": "", "rc": 0, "start": "2025-12-17 22:00:17.915665", "stderr": "", "stderr_lines": [], "stdout": "13.2%", "stdout_lines": ["13.2%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025537", "end": "2025-12-17 22:00:17.480705", "msg": "", "rc": 0, "start": "2025-12-17 22:00:17.455168", "stderr": "", "stderr_lines": [], "stdout": "20.4%", "stdout_lines": ["20.4%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005360", "end": "2025-12-17 22:00:17.629070", "msg": "", "rc": 0, "start": "2025-12-17 22:00:17.623710", "stderr": "", "stderr_lines": [], "stdout": "13.9%", "stdout_lines": ["13.9%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004935", "end": "2025-12-17 22:00:18.047602", "msg": "", "rc": 0, "start": "2025-12-17 22:00:18.042667", "stderr": "", "stderr_lines": [], "stdout": "47.0°C", "stdout_lines": ["47.0°C"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005363", "end": "2025-12-17 22:00:18.048712", "msg": "", "rc": 0, "start": "2025-12-17 22:00:18.043349", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005789", "end": "2025-12-17 22:00:18.070871", "msg": "", "rc": 0, "start": "2025-12-17 22:00:18.065082", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002974", "end": "2025-12-17 22:00:18.095869", "msg": "", "rc": 0, "start": "2025-12-17 22:00:18.092895", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006639", "end": "2025-12-17 22:00:18.113624", "msg": "", "rc": 0, "start": "2025-12-17 22:00:18.106985", "stderr": "", "stderr_lines": [], "stdout": "52.0°C", "stdout_lines": ["52.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002604", "end": "2025-12-17 21:59:51.744895", "msg": "", "rc": 0, "start": "2025-12-17 21:59:51.742291", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003050", "end": "2025-12-17 21:59:45.188549", "msg": "", "rc": 0, "start": "2025-12-17 21:59:45.185499", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011709", "end": "2025-12-17 22:00:18.742258", "msg": "", "rc": 0, "start": "2025-12-17 22:00:18.730549", "stderr": "", "stderr_lines": [], "stdout": "30.2°C", "stdout_lines": ["30.2°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012944", "end": "2025-12-17 22:00:18.790668", "msg": "", "rc": 0, "start": "2025-12-17 22:00:18.777724", "stderr": "", "stderr_lines": [], "stdout": "34.6°C", "stdout_lines": ["34.6°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004249", "end": "2025-12-17 22:00:19.196424", "msg": "", "rc": 0, "start": "2025-12-17 22:00:19.192175", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003964", "end": "2025-12-17 19:00:19.266335", "msg": "", "rc": 0, "start": "2025-12-17 19:00:19.262371", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002899", "end": "2025-12-17 21:59:55.079071", "msg": "", "rc": 0, "start": "2025-12-17 21:59:55.076172", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002844", "end": "2025-12-17 21:59:48.477018", "msg": "", "rc": 0, "start": "2025-12-17 21:59:48.474174", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004040", "end": "2025-12-17 22:00:19.923574", "msg": "", "rc": 0, "start": "2025-12-17 22:00:19.919534", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028935", "end": "2025-12-17 22:00:19.451525", "msg": "", "rc": 0, "start": "2025-12-17 22:00:19.422590", "stderr": "", "stderr_lines": [], "stdout": "35.1°C", "stdout_lines": ["35.1°C"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003374", "end": "2025-12-17 22:00:19.624071", "msg": "", "rc": 0, "start": "2025-12-17 22:00:19.620697", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} + +TASK [Get CPU load] ************************************************************ +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004010", "end": "2025-12-17 22:00:20.050076", "msg": "", "rc": 0, "start": "2025-12-17 22:00:20.046066", "stderr": "", "stderr_lines": [], "stdout": "0.64", "stdout_lines": ["0.64"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004245", "end": "2025-12-17 22:00:20.056098", "msg": "", "rc": 0, "start": "2025-12-17 22:00:20.051853", "stderr": "", "stderr_lines": [], "stdout": "0.35", "stdout_lines": ["0.35"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004782", "end": "2025-12-17 22:00:20.069769", "msg": "", "rc": 0, "start": "2025-12-17 22:00:20.064987", "stderr": "", "stderr_lines": [], "stdout": "0.59", "stdout_lines": ["0.59"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005615", "end": "2025-12-17 22:00:20.105594", "msg": "", "rc": 0, "start": "2025-12-17 22:00:20.099979", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005558", "end": "2025-12-17 22:00:20.110252", "msg": "", "rc": 0, "start": "2025-12-17 22:00:20.104694", "stderr": "", "stderr_lines": [], "stdout": "0.84", "stdout_lines": ["0.84"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004524", "end": "2025-12-17 21:59:53.741301", "msg": "", "rc": 0, "start": "2025-12-17 21:59:53.736777", "stderr": "", "stderr_lines": [], "stdout": "0.09", "stdout_lines": ["0.09"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005233", "end": "2025-12-17 21:59:47.180524", "msg": "", "rc": 0, "start": "2025-12-17 21:59:47.175291", "stderr": "", "stderr_lines": [], "stdout": "0.01", "stdout_lines": ["0.01"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010146", "end": "2025-12-17 22:00:20.819331", "msg": "", "rc": 0, "start": "2025-12-17 22:00:20.809185", "stderr": "", "stderr_lines": [], "stdout": "0.07", "stdout_lines": ["0.07"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011530", "end": "2025-12-17 22:00:20.861183", "msg": "", "rc": 0, "start": "2025-12-17 22:00:20.849653", "stderr": "", "stderr_lines": [], "stdout": "0.16", "stdout_lines": ["0.16"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005664", "end": "2025-12-17 22:00:21.051116", "msg": "", "rc": 0, "start": "2025-12-17 22:00:21.045452", "stderr": "", "stderr_lines": [], "stdout": "0.11", "stdout_lines": ["0.11"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004912", "end": "2025-12-17 21:59:50.367343", "msg": "", "rc": 0, "start": "2025-12-17 21:59:50.362431", "stderr": "", "stderr_lines": [], "stdout": "0.40", "stdout_lines": ["0.40"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004850", "end": "2025-12-17 21:59:57.118873", "msg": "", "rc": 0, "start": "2025-12-17 21:59:57.114023", "stderr": "", "stderr_lines": [], "stdout": "0.19", "stdout_lines": ["0.19"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005958", "end": "2025-12-17 19:00:21.328458", "msg": "", "rc": 0, "start": "2025-12-17 19:00:21.322500", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005888", "end": "2025-12-17 22:00:21.478624", "msg": "", "rc": 0, "start": "2025-12-17 22:00:21.472736", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.007967", "end": "2025-12-17 22:00:21.907268", "msg": "", "rc": 0, "start": "2025-12-17 22:00:21.899301", "stderr": "", "stderr_lines": [], "stdout": "1.52", "stdout_lines": ["1.52"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024578", "end": "2025-12-17 22:00:21.446597", "msg": "", "rc": 0, "start": "2025-12-17 22:00:21.422019", "stderr": "", "stderr_lines": [], "stdout": "0.29", "stdout_lines": ["0.29"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:00:11 up 3 days, 11:32, 3 users, load average: 0.53, 0.36, 0.30\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.64\nCPU Temp: 47.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:00:11 up 22 days, 8:51, 1 user, load average: 0.41, 0.35, 0.25\nDisk Usage: 23%\nMemory Usage: 78.4%\nCPU Load: 0.35\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:00:11 up 22 days, 9:11, 1 user, load average: 0.55, 0.59, 0.65\nDisk Usage: 14%\nMemory Usage: 49.2%\nCPU Load: 0.59\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:00:11 up 22 days, 10:24, 1 user, load average: 0.91, 0.68, 0.64\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.84\nCPU Temp: 52.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:00:11 up 22 days, 11:10, 1 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 9%\nMemory Usage: 9.1%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:00:13 up 15 days, 11:26, 1 user, load average: 0.23, 0.16, 0.10\nDisk Usage: 21%\nMemory Usage: 20.4%\nCPU Load: 0.29\nCPU Temp: 35.1°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:00:12 up 194 days, 13:33, 1 user, load average: 0.09, 0.16, 0.17\nDisk Usage: 6%\nMemory Usage: 13.2%\nCPU Load: 0.16\nCPU Temp: 34.6°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:00:12 up 194 days, 13:33, 1 user, load average: 0.08, 0.11, 0.10\nDisk Usage: 3%\nMemory Usage: 6.9%\nCPU Load: 0.07\nCPU Temp: 30.2°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:59:46 up 11 days, 9:49, 0 user, load average: 0.11, 0.14, 0.16\nDisk Usage: 48%\nMemory Usage: 70.6%\nCPU Load: 0.09\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:59:39 up 18 days, 6:01, 0 user, load average: 0.01, 0.04, 0.00\nDisk Usage: 25%\nMemory Usage: 68.3%\nCPU Load: 0.01\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:00:13 up 3 days, 11:31, 1 user, load average: 0.14, 0.09, 0.04\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.11\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:59:42 up 21 days, 54 min, 0 user, load average: 0.38, 0.45, 0.45\nDisk Usage: 28%\nMemory Usage: 27.3%\nCPU Load: 0.40\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 21:59:49 up 17 days, 11:15, 0 user, load average: 0.21, 0.25, 0.26\nDisk Usage: 76%\nMemory Usage: 51.7%\nCPU Load: 0.19\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 7:00PM up 22 days, 8:50, 1 user, load averages: 0.03, 0.12, 0.15\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:00:13 up 3 days, 11:31, 1 user, load average: 0.00, 0.01, 0.03\nDisk Usage: 79%\nMemory Usage: 13.9%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:00:13 up 2:08, 1 user, load average: 1.48, 1.21, 1.18\nDisk Usage: 1%\nMemory Usage: 13.2%\nCPU Load: 1.52\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T03:00:22.866512+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_030521_2308d5_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_030521_2308d5_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..f060dd1 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_030521_2308d5_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `4d672319158a440ebdee2bc39b24ba52` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T03:05:00.001383+00:00 | +| **Fin** | 2025-12-18T03:05:21.579371+00:00 | +| **Durée** | 21.6s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp2.i7.home] +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003296", "end": "2025-12-17 22:05:11.521676", "msg": "", "rc": 0, "start": "2025-12-17 22:05:11.518380", "stderr": "", "stderr_lines": [], "stdout": " 22:05:11 up 22 days, 8:56, 1 user, load average: 0.45, 0.37, 0.28", "stdout_lines": [" 22:05:11 up 22 days, 8:56, 1 user, load average: 0.45, 0.37, 0.28"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003858", "end": "2025-12-17 22:05:11.529599", "msg": "", "rc": 0, "start": "2025-12-17 22:05:11.525741", "stderr": "", "stderr_lines": [], "stdout": " 22:05:11 up 22 days, 9:16, 1 user, load average: 0.77, 0.68, 0.67", "stdout_lines": [" 22:05:11 up 22 days, 9:16, 1 user, load average: 0.77, 0.68, 0.67"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003903", "end": "2025-12-17 22:05:11.533622", "msg": "", "rc": 0, "start": "2025-12-17 22:05:11.529719", "stderr": "", "stderr_lines": [], "stdout": " 22:05:11 up 22 days, 11:15, 1 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 22:05:11 up 22 days, 11:15, 1 user, load average: 0.00, 0.00, 0.00"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002931", "end": "2025-12-17 22:05:11.562946", "msg": "", "rc": 0, "start": "2025-12-17 22:05:11.560015", "stderr": "", "stderr_lines": [], "stdout": " 22:05:11 up 3 days, 11:37, 3 users, load average: 0.30, 0.34, 0.30", "stdout_lines": [" 22:05:11 up 3 days, 11:37, 3 users, load average: 0.30, 0.34, 0.30"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.005055", "end": "2025-12-17 22:05:11.565586", "msg": "", "rc": 0, "start": "2025-12-17 22:05:11.560531", "stderr": "", "stderr_lines": [], "stdout": " 22:05:11 up 22 days, 10:29, 1 user, load average: 0.72, 0.70, 0.65", "stdout_lines": [" 22:05:11 up 22 days, 10:29, 1 user, load average: 0.72, 0.70, 0.65"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002819", "end": "2025-12-17 22:04:45.183064", "msg": "", "rc": 0, "start": "2025-12-17 22:04:45.180245", "stderr": "", "stderr_lines": [], "stdout": " 22:04:45 up 11 days, 9:54, 0 user, load average: 0.10, 0.23, 0.20", "stdout_lines": [" 22:04:45 up 11 days, 9:54, 0 user, load average: 0.10, 0.23, 0.20"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003784", "end": "2025-12-17 22:04:38.652000", "msg": "", "rc": 0, "start": "2025-12-17 22:04:38.648216", "stderr": "", "stderr_lines": [], "stdout": " 22:04:38 up 18 days, 6:06, 0 user, load average: 0.09, 0.05, 0.01", "stdout_lines": [" 22:04:38 up 18 days, 6:06, 0 user, load average: 0.09, 0.05, 0.01"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008342", "end": "2025-12-17 22:05:12.209632", "msg": "", "rc": 0, "start": "2025-12-17 22:05:12.201290", "stderr": "", "stderr_lines": [], "stdout": " 22:05:12 up 194 days, 13:38, 1 user, load average: 0.19, 0.12, 0.10", "stdout_lines": [" 22:05:12 up 194 days, 13:38, 1 user, load average: 0.19, 0.12, 0.10"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009391", "end": "2025-12-17 22:05:12.251742", "msg": "", "rc": 0, "start": "2025-12-17 22:05:12.242351", "stderr": "", "stderr_lines": [], "stdout": " 22:05:12 up 194 days, 13:38, 1 user, load average: 0.18, 0.16, 0.17", "stdout_lines": [" 22:05:12 up 194 days, 13:38, 1 user, load average: 0.18, 0.16, 0.17"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004806", "end": "2025-12-17 22:05:12.469750", "msg": "", "rc": 0, "start": "2025-12-17 22:05:12.464944", "stderr": "", "stderr_lines": [], "stdout": " 22:05:12 up 3 days, 11:36, 1 user, load average: 0.00, 0.03, 0.01", "stdout_lines": [" 22:05:12 up 3 days, 11:36, 1 user, load average: 0.00, 0.03, 0.01"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003383", "end": "2025-12-17 22:04:41.844352", "msg": "", "rc": 0, "start": "2025-12-17 22:04:41.840969", "stderr": "", "stderr_lines": [], "stdout": " 22:04:41 up 21 days, 58 min, 0 user, load average: 0.41, 0.42, 0.44", "stdout_lines": [" 22:04:41 up 21 days, 58 min, 0 user, load average: 0.41, 0.42, 0.44"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004397", "end": "2025-12-17 22:04:48.493981", "msg": "", "rc": 0, "start": "2025-12-17 22:04:48.489584", "stderr": "", "stderr_lines": [], "stdout": " 22:04:48 up 17 days, 11:20, 0 user, load average: 0.29, 0.26, 0.26", "stdout_lines": [" 22:04:48 up 17 days, 11:20, 0 user, load average: 0.29, 0.26, 0.26"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004180", "end": "2025-12-17 19:05:12.718917", "msg": "", "rc": 0, "start": "2025-12-17 19:05:12.714737", "stderr": "", "stderr_lines": [], "stdout": " 7:05PM up 22 days, 8:55, 1 user, load averages: 0.39, 0.27, 0.20", "stdout_lines": [" 7:05PM up 22 days, 8:55, 1 user, load averages: 0.39, 0.27, 0.20"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003694", "end": "2025-12-17 22:05:12.889014", "msg": "", "rc": 0, "start": "2025-12-17 22:05:12.885320", "stderr": "", "stderr_lines": [], "stdout": " 22:05:12 up 3 days, 11:36, 1 user, load average: 0.01, 0.02, 0.02", "stdout_lines": [" 22:05:12 up 3 days, 11:36, 1 user, load average: 0.01, 0.02, 0.02"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008983", "end": "2025-12-17 22:05:13.511860", "msg": "", "rc": 0, "start": "2025-12-17 22:05:13.502877", "stderr": "", "stderr_lines": [], "stdout": " 22:05:13 up 2:13, 1 user, load average: 1.13, 1.14, 1.16", "stdout_lines": [" 22:05:13 up 2:13, 1 user, load average: 1.13, 1.14, 1.16"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019545", "end": "2025-12-17 22:05:12.913601", "msg": "", "rc": 0, "start": "2025-12-17 22:05:12.894056", "stderr": "", "stderr_lines": [], "stdout": " 22:05:12 up 15 days, 11:31, 1 user, load average: 0.29, 0.16, 0.10", "stdout_lines": [" 22:05:12 up 15 days, 11:31, 1 user, load average: 0.29, 0.16, 0.10"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004125", "end": "2025-12-17 22:05:13.441654", "msg": "", "rc": 0, "start": "2025-12-17 22:05:13.437529", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004117", "end": "2025-12-17 22:05:13.468232", "msg": "", "rc": 0, "start": "2025-12-17 22:05:13.464115", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005033", "end": "2025-12-17 22:05:13.475651", "msg": "", "rc": 0, "start": "2025-12-17 22:05:13.470618", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005037", "end": "2025-12-17 22:05:13.485700", "msg": "", "rc": 0, "start": "2025-12-17 22:05:13.480663", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005872", "end": "2025-12-17 22:05:13.517228", "msg": "", "rc": 0, "start": "2025-12-17 22:05:13.511356", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005649", "end": "2025-12-17 22:04:47.153096", "msg": "", "rc": 0, "start": "2025-12-17 22:04:47.147447", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.007456", "end": "2025-12-17 22:04:40.611978", "msg": "", "rc": 0, "start": "2025-12-17 22:04:40.604522", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010400", "end": "2025-12-17 22:05:14.208409", "msg": "", "rc": 0, "start": "2025-12-17 22:05:14.198009", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011643", "end": "2025-12-17 22:05:14.240988", "msg": "", "rc": 0, "start": "2025-12-17 22:05:14.229345", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005759", "end": "2025-12-17 22:05:14.449234", "msg": "", "rc": 0, "start": "2025-12-17 22:05:14.443475", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005501", "end": "2025-12-17 22:04:43.809965", "msg": "", "rc": 0, "start": "2025-12-17 22:04:43.804464", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005445", "end": "2025-12-17 19:05:14.707517", "msg": "", "rc": 0, "start": "2025-12-17 19:05:14.702072", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005523", "end": "2025-12-17 22:04:50.502528", "msg": "", "rc": 0, "start": "2025-12-17 22:04:50.497005", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005320", "end": "2025-12-17 22:05:14.906302", "msg": "", "rc": 0, "start": "2025-12-17 22:05:14.900982", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.020328", "end": "2025-12-17 22:05:14.975526", "msg": "", "rc": 0, "start": "2025-12-17 22:05:14.955198", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025562", "end": "2025-12-17 22:05:14.842380", "msg": "", "rc": 0, "start": "2025-12-17 22:05:14.816818", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004467", "end": "2025-12-17 22:05:15.387639", "msg": "", "rc": 0, "start": "2025-12-17 22:05:15.383172", "stderr": "", "stderr_lines": [], "stdout": "78.4%", "stdout_lines": ["78.4%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004194", "end": "2025-12-17 22:05:15.387741", "msg": "", "rc": 0, "start": "2025-12-17 22:05:15.383547", "stderr": "", "stderr_lines": [], "stdout": "22.7%", "stdout_lines": ["22.7%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005134", "end": "2025-12-17 22:05:15.414682", "msg": "", "rc": 0, "start": "2025-12-17 22:05:15.409548", "stderr": "", "stderr_lines": [], "stdout": "49.4%", "stdout_lines": ["49.4%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004451", "end": "2025-12-17 22:05:15.434008", "msg": "", "rc": 0, "start": "2025-12-17 22:05:15.429557", "stderr": "", "stderr_lines": [], "stdout": "9.1%", "stdout_lines": ["9.1%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005391", "end": "2025-12-17 22:05:15.448377", "msg": "", "rc": 0, "start": "2025-12-17 22:05:15.442986", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003803", "end": "2025-12-17 22:04:49.078025", "msg": "", "rc": 0, "start": "2025-12-17 22:04:49.074222", "stderr": "", "stderr_lines": [], "stdout": "70.4%", "stdout_lines": ["70.4%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004474", "end": "2025-12-17 22:04:42.505889", "msg": "", "rc": 0, "start": "2025-12-17 22:04:42.501415", "stderr": "", "stderr_lines": [], "stdout": "68.2%", "stdout_lines": ["68.2%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011337", "end": "2025-12-17 22:05:16.077118", "msg": "", "rc": 0, "start": "2025-12-17 22:05:16.065781", "stderr": "", "stderr_lines": [], "stdout": "6.9%", "stdout_lines": ["6.9%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011930", "end": "2025-12-17 22:05:16.115811", "msg": "", "rc": 0, "start": "2025-12-17 22:05:16.103881", "stderr": "", "stderr_lines": [], "stdout": "12.7%", "stdout_lines": ["12.7%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005833", "end": "2025-12-17 22:05:16.351884", "msg": "", "rc": 0, "start": "2025-12-17 22:05:16.346051", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004577", "end": "2025-12-17 22:04:45.678392", "msg": "", "rc": 0, "start": "2025-12-17 22:04:45.673815", "stderr": "", "stderr_lines": [], "stdout": "27.2%", "stdout_lines": ["27.2%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004965", "end": "2025-12-17 22:04:52.373215", "msg": "", "rc": 0, "start": "2025-12-17 22:04:52.368250", "stderr": "", "stderr_lines": [], "stdout": "52.0%", "stdout_lines": ["52.0%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004989", "end": "2025-12-17 19:05:16.580737", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 19:05:16.575748", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005395", "end": "2025-12-17 22:05:16.777767", "msg": "", "rc": 0, "start": "2025-12-17 22:05:16.772372", "stderr": "", "stderr_lines": [], "stdout": "13.9%", "stdout_lines": ["13.9%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.009583", "end": "2025-12-17 22:05:16.891587", "msg": "", "rc": 0, "start": "2025-12-17 22:05:16.882004", "stderr": "", "stderr_lines": [], "stdout": "13.2%", "stdout_lines": ["13.2%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.026371", "end": "2025-12-17 22:05:16.788046", "msg": "", "rc": 0, "start": "2025-12-17 22:05:16.761675", "stderr": "", "stderr_lines": [], "stdout": "20.0%", "stdout_lines": ["20.0%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005325", "end": "2025-12-17 22:05:17.309836", "msg": "", "rc": 0, "start": "2025-12-17 22:05:17.304511", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004909", "end": "2025-12-17 22:05:17.316262", "msg": "", "rc": 0, "start": "2025-12-17 22:05:17.311353", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005723", "end": "2025-12-17 22:05:17.342490", "msg": "", "rc": 0, "start": "2025-12-17 22:05:17.336767", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003226", "end": "2025-12-17 22:05:17.370298", "msg": "", "rc": 0, "start": "2025-12-17 22:05:17.367072", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006009", "end": "2025-12-17 22:05:17.375213", "msg": "", "rc": 0, "start": "2025-12-17 22:05:17.369204", "stderr": "", "stderr_lines": [], "stdout": "52.0°C", "stdout_lines": ["52.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002686", "end": "2025-12-17 22:04:50.999180", "msg": "", "rc": 0, "start": "2025-12-17 22:04:50.996494", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002928", "end": "2025-12-17 22:04:44.447216", "msg": "", "rc": 0, "start": "2025-12-17 22:04:44.444288", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011929", "end": "2025-12-17 22:05:17.997804", "msg": "", "rc": 0, "start": "2025-12-17 22:05:17.985875", "stderr": "", "stderr_lines": [], "stdout": "31.2°C", "stdout_lines": ["31.2°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012805", "end": "2025-12-17 22:05:18.026848", "msg": "", "rc": 0, "start": "2025-12-17 22:05:18.014043", "stderr": "", "stderr_lines": [], "stdout": "35.0°C", "stdout_lines": ["35.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003211", "end": "2025-12-17 22:05:18.296876", "msg": "", "rc": 0, "start": "2025-12-17 22:05:18.293665", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003008", "end": "2025-12-17 22:04:47.642945", "msg": "", "rc": 0, "start": "2025-12-17 22:04:47.639937", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003913", "end": "2025-12-17 19:05:18.500041", "msg": "", "rc": 0, "start": "2025-12-17 19:05:18.496128", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002523", "end": "2025-12-17 22:04:54.307414", "msg": "", "rc": 0, "start": "2025-12-17 22:04:54.304891", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002910", "end": "2025-12-17 22:05:18.712252", "msg": "", "rc": 0, "start": "2025-12-17 22:05:18.709342", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004594", "end": "2025-12-17 22:05:18.861036", "msg": "", "rc": 0, "start": "2025-12-17 22:05:18.856442", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028678", "end": "2025-12-17 22:05:18.694558", "msg": "", "rc": 0, "start": "2025-12-17 22:05:18.665880", "stderr": "", "stderr_lines": [], "stdout": "34.1°C", "stdout_lines": ["34.1°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004274", "end": "2025-12-17 22:05:19.212236", "msg": "", "rc": 0, "start": "2025-12-17 22:05:19.207962", "stderr": "", "stderr_lines": [], "stdout": "0.53", "stdout_lines": ["0.53"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004304", "end": "2025-12-17 22:05:19.239939", "msg": "", "rc": 0, "start": "2025-12-17 22:05:19.235635", "stderr": "", "stderr_lines": [], "stdout": "0.36", "stdout_lines": ["0.36"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005738", "end": "2025-12-17 22:05:19.267797", "msg": "", "rc": 0, "start": "2025-12-17 22:05:19.262059", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004942", "end": "2025-12-17 22:05:19.279637", "msg": "", "rc": 0, "start": "2025-12-17 22:05:19.274695", "stderr": "", "stderr_lines": [], "stdout": "1.03", "stdout_lines": ["1.03"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005554", "end": "2025-12-17 22:05:19.283885", "msg": "", "rc": 0, "start": "2025-12-17 22:05:19.278331", "stderr": "", "stderr_lines": [], "stdout": "0.90", "stdout_lines": ["0.90"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004154", "end": "2025-12-17 22:04:52.901642", "msg": "", "rc": 0, "start": "2025-12-17 22:04:52.897488", "stderr": "", "stderr_lines": [], "stdout": "0.09", "stdout_lines": ["0.09"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005517", "end": "2025-12-17 22:04:46.347428", "msg": "", "rc": 0, "start": "2025-12-17 22:04:46.341911", "stderr": "", "stderr_lines": [], "stdout": "0.15", "stdout_lines": ["0.15"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010225", "end": "2025-12-17 22:05:20.016373", "msg": "", "rc": 0, "start": "2025-12-17 22:05:20.006148", "stderr": "", "stderr_lines": [], "stdout": "0.25", "stdout_lines": ["0.25"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011144", "end": "2025-12-17 22:05:20.051286", "msg": "", "rc": 0, "start": "2025-12-17 22:05:20.040142", "stderr": "", "stderr_lines": [], "stdout": "0.16", "stdout_lines": ["0.16"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005575", "end": "2025-12-17 22:05:20.189563", "msg": "", "rc": 0, "start": "2025-12-17 22:05:20.183988", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005070", "end": "2025-12-17 22:04:49.520815", "msg": "", "rc": 0, "start": "2025-12-17 22:04:49.515745", "stderr": "", "stderr_lines": [], "stdout": "0.42", "stdout_lines": ["0.42"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005906", "end": "2025-12-17 19:05:20.511161", "msg": "", "rc": 0, "start": "2025-12-17 19:05:20.505255", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004193", "end": "2025-12-17 22:04:56.313108", "msg": "", "rc": 0, "start": "2025-12-17 22:04:56.308915", "stderr": "", "stderr_lines": [], "stdout": "0.24", "stdout_lines": ["0.24"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005239", "end": "2025-12-17 22:05:20.609965", "msg": "", "rc": 0, "start": "2025-12-17 22:05:20.604726", "stderr": "", "stderr_lines": [], "stdout": "0.01", "stdout_lines": ["0.01"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.007902", "end": "2025-12-17 22:05:20.760217", "msg": "", "rc": 0, "start": "2025-12-17 22:05:20.752315", "stderr": "", "stderr_lines": [], "stdout": "1.19", "stdout_lines": ["1.19"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024254", "end": "2025-12-17 22:05:20.594587", "msg": "", "rc": 0, "start": "2025-12-17 22:05:20.570333", "stderr": "", "stderr_lines": [], "stdout": "0.34", "stdout_lines": ["0.34"]} + +TASK [Display health status] *************************************************** +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:05:11 up 22 days, 8:56, 1 user, load average: 0.45, 0.37, 0.28\nDisk Usage: 23%\nMemory Usage: 78.4%\nCPU Load: 0.53\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:05:11 up 3 days, 11:37, 3 users, load average: 0.30, 0.34, 0.30\nDisk Usage: 22%\nMemory Usage: 22.7%\nCPU Load: 0.36\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:05:11 up 22 days, 9:16, 1 user, load average: 0.77, 0.68, 0.67\nDisk Usage: 14%\nMemory Usage: 49.4%\nCPU Load: 1.03\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:05:11 up 22 days, 10:29, 1 user, load average: 0.72, 0.70, 0.65\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.90\nCPU Temp: 52.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:05:11 up 22 days, 11:15, 1 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 9%\nMemory Usage: 9.1%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:05:12 up 15 days, 11:31, 1 user, load average: 0.29, 0.16, 0.10\nDisk Usage: 21%\nMemory Usage: 20.0%\nCPU Load: 0.34\nCPU Temp: 34.1°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:05:12 up 194 days, 13:38, 1 user, load average: 0.18, 0.16, 0.17\nDisk Usage: 6%\nMemory Usage: 12.7%\nCPU Load: 0.16\nCPU Temp: 35.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:05:12 up 194 days, 13:38, 1 user, load average: 0.19, 0.12, 0.10\nDisk Usage: 3%\nMemory Usage: 6.9%\nCPU Load: 0.25\nCPU Temp: 31.2°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:04:45 up 11 days, 9:54, 0 user, load average: 0.10, 0.23, 0.20\nDisk Usage: 48%\nMemory Usage: 70.4%\nCPU Load: 0.09\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:04:38 up 18 days, 6:06, 0 user, load average: 0.09, 0.05, 0.01\nDisk Usage: 25%\nMemory Usage: 68.2%\nCPU Load: 0.15\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:05:12 up 3 days, 11:36, 1 user, load average: 0.00, 0.03, 0.01\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:04:41 up 21 days, 58 min, 0 user, load average: 0.41, 0.42, 0.44\nDisk Usage: 28%\nMemory Usage: 27.2%\nCPU Load: 0.42\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 7:05PM up 22 days, 8:55, 1 user, load averages: 0.39, 0.27, 0.20\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:04:48 up 17 days, 11:20, 0 user, load average: 0.29, 0.26, 0.26\nDisk Usage: 76%\nMemory Usage: 52.0%\nCPU Load: 0.24\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:05:12 up 3 days, 11:36, 1 user, load average: 0.01, 0.02, 0.02\nDisk Usage: 79%\nMemory Usage: 13.9%\nCPU Load: 0.01\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:05:13 up 2:13, 1 user, load average: 1.13, 1.14, 1.16\nDisk Usage: 1%\nMemory Usage: 13.2%\nCPU Load: 1.19\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T03:05:21.615058+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_031022_52d48f_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_031022_52d48f_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..b8774e8 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_031022_52d48f_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `4586cbacba914999bf11e4a2d7f13484` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T03:10:00.000401+00:00 | +| **Fin** | 2025-12-18T03:10:22.366417+00:00 | +| **Durée** | 22.4s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003222", "end": "2025-12-17 22:10:11.828231", "msg": "", "rc": 0, "start": "2025-12-17 22:10:11.825009", "stderr": "", "stderr_lines": [], "stdout": " 22:10:11 up 22 days, 9:01, 1 user, load average: 1.05, 0.73, 0.45", "stdout_lines": [" 22:10:11 up 22 days, 9:01, 1 user, load average: 1.05, 0.73, 0.45"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003823", "end": "2025-12-17 22:10:11.840311", "msg": "", "rc": 0, "start": "2025-12-17 22:10:11.836488", "stderr": "", "stderr_lines": [], "stdout": " 22:10:11 up 22 days, 11:20, 1 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 22:10:11 up 22 days, 11:20, 1 user, load average: 0.00, 0.00, 0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003993", "end": "2025-12-17 22:10:11.858486", "msg": "", "rc": 0, "start": "2025-12-17 22:10:11.854493", "stderr": "", "stderr_lines": [], "stdout": " 22:10:11 up 22 days, 10:34, 1 user, load average: 0.65, 0.71, 0.67", "stdout_lines": [" 22:10:11 up 22 days, 10:34, 1 user, load average: 0.65, 0.71, 0.67"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002943", "end": "2025-12-17 22:10:11.870756", "msg": "", "rc": 0, "start": "2025-12-17 22:10:11.867813", "stderr": "", "stderr_lines": [], "stdout": " 22:10:11 up 3 days, 11:42, 3 users, load average: 0.36, 0.30, 0.28", "stdout_lines": [" 22:10:11 up 3 days, 11:42, 3 users, load average: 0.36, 0.30, 0.28"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002862", "end": "2025-12-17 22:09:45.521502", "msg": "", "rc": 0, "start": "2025-12-17 22:09:45.518640", "stderr": "", "stderr_lines": [], "stdout": " 22:09:45 up 11 days, 9:59, 0 user, load average: 0.03, 0.16, 0.17", "stdout_lines": [" 22:09:45 up 11 days, 9:59, 0 user, load average: 0.03, 0.16, 0.17"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008391", "end": "2025-12-17 22:10:12.536425", "msg": "", "rc": 0, "start": "2025-12-17 22:10:12.528034", "stderr": "", "stderr_lines": [], "stdout": " 22:10:12 up 194 days, 13:43, 1 user, load average: 0.10, 0.17, 0.12", "stdout_lines": [" 22:10:12 up 194 days, 13:43, 1 user, load average: 0.10, 0.17, 0.12"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009195", "end": "2025-12-17 22:10:12.566914", "msg": "", "rc": 0, "start": "2025-12-17 22:10:12.557719", "stderr": "", "stderr_lines": [], "stdout": " 22:10:12 up 194 days, 13:43, 1 user, load average: 0.29, 0.22, 0.19", "stdout_lines": [" 22:10:12 up 194 days, 13:43, 1 user, load average: 0.29, 0.22, 0.19"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004375", "end": "2025-12-17 22:10:12.843109", "msg": "", "rc": 0, "start": "2025-12-17 22:10:11.838734", "stderr": "", "stderr_lines": [], "stdout": " 22:10:11 up 22 days, 9:21, 1 user, load average: 0.87, 0.72, 0.68", "stdout_lines": [" 22:10:11 up 22 days, 9:21, 1 user, load average: 0.87, 0.72, 0.68"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003901", "end": "2025-12-17 22:09:39.397320", "msg": "", "rc": 0, "start": "2025-12-17 22:09:39.393419", "stderr": "", "stderr_lines": [], "stdout": " 22:09:39 up 18 days, 6:11, 0 user, load average: 0.18, 0.07, 0.01", "stdout_lines": [" 22:09:39 up 18 days, 6:11, 0 user, load average: 0.18, 0.07, 0.01"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004712", "end": "2025-12-17 22:10:13.029139", "msg": "", "rc": 0, "start": "2025-12-17 22:10:13.024427", "stderr": "", "stderr_lines": [], "stdout": " 22:10:13 up 3 days, 11:41, 1 user, load average: 0.28, 0.07, 0.02", "stdout_lines": [" 22:10:13 up 3 days, 11:41, 1 user, load average: 0.28, 0.07, 0.02"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003514", "end": "2025-12-17 22:09:42.368069", "msg": "", "rc": 0, "start": "2025-12-17 22:09:42.364555", "stderr": "", "stderr_lines": [], "stdout": " 22:09:42 up 21 days, 1:04, 0 user, load average: 0.41, 0.44, 0.45", "stdout_lines": [" 22:09:42 up 21 days, 1:04, 0 user, load average: 0.41, 0.44, 0.45"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004366", "end": "2025-12-17 19:10:13.296527", "msg": "", "rc": 0, "start": "2025-12-17 19:10:13.292161", "stderr": "", "stderr_lines": [], "stdout": " 7:10PM up 22 days, 9 hrs, 1 user, load averages: 0.22, 0.20, 0.17", "stdout_lines": [" 7:10PM up 22 days, 9 hrs, 1 user, load averages: 0.22, 0.20, 0.17"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002793", "end": "2025-12-17 22:09:49.094130", "msg": "", "rc": 0, "start": "2025-12-17 22:09:49.091337", "stderr": "", "stderr_lines": [], "stdout": " 22:09:49 up 17 days, 11:25, 0 user, load average: 0.13, 0.19, 0.23", "stdout_lines": [" 22:09:49 up 17 days, 11:25, 0 user, load average: 0.13, 0.19, 0.23"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019318", "end": "2025-12-17 22:10:13.232393", "msg": "", "rc": 0, "start": "2025-12-17 22:10:13.213075", "stderr": "", "stderr_lines": [], "stdout": " 22:10:13 up 15 days, 11:36, 1 user, load average: 0.22, 0.15, 0.10", "stdout_lines": [" 22:10:13 up 15 days, 11:36, 1 user, load average: 0.22, 0.15, 0.10"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003725", "end": "2025-12-17 22:10:13.446609", "msg": "", "rc": 0, "start": "2025-12-17 22:10:13.442884", "stderr": "", "stderr_lines": [], "stdout": " 22:10:13 up 3 days, 11:41, 1 user, load average: 0.04, 0.05, 0.02", "stdout_lines": [" 22:10:13 up 3 days, 11:41, 1 user, load average: 0.04, 0.05, 0.02"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.006617", "end": "2025-12-17 22:10:13.748305", "msg": "", "rc": 0, "start": "2025-12-17 22:10:13.741688", "stderr": "", "stderr_lines": [], "stdout": " 22:10:13 up 2:18, 1 user, load average: 1.21, 1.16, 1.15", "stdout_lines": [" 22:10:13 up 2:18, 1 user, load average: 1.21, 1.16, 1.15"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004334", "end": "2025-12-17 22:10:13.898433", "msg": "", "rc": 0, "start": "2025-12-17 22:10:13.894099", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004649", "end": "2025-12-17 22:10:13.927254", "msg": "", "rc": 0, "start": "2025-12-17 22:10:13.922605", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004256", "end": "2025-12-17 22:10:13.931029", "msg": "", "rc": 0, "start": "2025-12-17 22:10:13.926773", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005007", "end": "2025-12-17 22:10:13.953621", "msg": "", "rc": 0, "start": "2025-12-17 22:10:13.948614", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005685", "end": "2025-12-17 22:10:13.991051", "msg": "", "rc": 0, "start": "2025-12-17 22:10:13.985366", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005041", "end": "2025-12-17 22:09:47.578713", "msg": "", "rc": 0, "start": "2025-12-17 22:09:47.573672", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.009116", "end": "2025-12-17 22:09:41.056606", "msg": "", "rc": 0, "start": "2025-12-17 22:09:41.047490", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010504", "end": "2025-12-17 22:10:14.660731", "msg": "", "rc": 0, "start": "2025-12-17 22:10:14.650227", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011610", "end": "2025-12-17 22:10:14.672953", "msg": "", "rc": 0, "start": "2025-12-17 22:10:14.661343", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005730", "end": "2025-12-17 22:10:14.857469", "msg": "", "rc": 0, "start": "2025-12-17 22:10:14.851739", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005364", "end": "2025-12-17 22:09:44.257228", "msg": "", "rc": 0, "start": "2025-12-17 22:09:44.251864", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005496", "end": "2025-12-17 19:10:15.135735", "msg": "", "rc": 0, "start": "2025-12-17 19:10:15.130239", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004596", "end": "2025-12-17 22:09:50.962528", "msg": "", "rc": 0, "start": "2025-12-17 22:09:50.957932", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005547", "end": "2025-12-17 22:10:15.268374", "msg": "", "rc": 0, "start": "2025-12-17 22:10:15.262827", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025173", "end": "2025-12-17 22:10:15.288453", "msg": "", "rc": 0, "start": "2025-12-17 22:10:15.263280", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.019835", "end": "2025-12-17 22:10:15.701219", "msg": "", "rc": 0, "start": "2025-12-17 22:10:15.681384", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004040", "end": "2025-12-17 22:10:15.834657", "msg": "", "rc": 0, "start": "2025-12-17 22:10:15.830617", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004292", "end": "2025-12-17 22:10:15.828126", "msg": "", "rc": 0, "start": "2025-12-17 22:10:15.823834", "stderr": "", "stderr_lines": [], "stdout": "78.4%", "stdout_lines": ["78.4%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004673", "end": "2025-12-17 22:10:15.850207", "msg": "", "rc": 0, "start": "2025-12-17 22:10:15.845534", "stderr": "", "stderr_lines": [], "stdout": "49.2%", "stdout_lines": ["49.2%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004751", "end": "2025-12-17 22:10:15.872020", "msg": "", "rc": 0, "start": "2025-12-17 22:10:15.867269", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006587", "end": "2025-12-17 22:10:15.904499", "msg": "", "rc": 0, "start": "2025-12-17 22:10:15.897912", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003968", "end": "2025-12-17 22:09:49.510179", "msg": "", "rc": 0, "start": "2025-12-17 22:09:49.506211", "stderr": "", "stderr_lines": [], "stdout": "70.4%", "stdout_lines": ["70.4%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004712", "end": "2025-12-17 22:09:42.988199", "msg": "", "rc": 0, "start": "2025-12-17 22:09:42.983487", "stderr": "", "stderr_lines": [], "stdout": "68.2%", "stdout_lines": ["68.2%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011084", "end": "2025-12-17 22:10:16.524016", "msg": "", "rc": 0, "start": "2025-12-17 22:10:16.512932", "stderr": "", "stderr_lines": [], "stdout": "6.9%", "stdout_lines": ["6.9%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011803", "end": "2025-12-17 22:10:16.554652", "msg": "", "rc": 0, "start": "2025-12-17 22:10:16.542849", "stderr": "", "stderr_lines": [], "stdout": "13.3%", "stdout_lines": ["13.3%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005904", "end": "2025-12-17 22:10:16.802649", "msg": "", "rc": 0, "start": "2025-12-17 22:10:16.796745", "stderr": "", "stderr_lines": [], "stdout": "35.6%", "stdout_lines": ["35.6%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003904", "end": "2025-12-17 22:09:52.798604", "msg": "", "rc": 0, "start": "2025-12-17 22:09:52.794700", "stderr": "", "stderr_lines": [], "stdout": "51.1%", "stdout_lines": ["51.1%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005118", "end": "2025-12-17 19:10:17.020174", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 19:10:17.015056", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004185", "end": "2025-12-17 22:09:46.172920", "msg": "", "rc": 0, "start": "2025-12-17 22:09:46.168735", "stderr": "", "stderr_lines": [], "stdout": "27.3%", "stdout_lines": ["27.3%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005398", "end": "2025-12-17 22:10:17.222129", "msg": "", "rc": 0, "start": "2025-12-17 22:10:17.216731", "stderr": "", "stderr_lines": [], "stdout": "14.1%", "stdout_lines": ["14.1%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.007758", "end": "2025-12-17 22:10:17.596356", "msg": "", "rc": 0, "start": "2025-12-17 22:10:17.588598", "stderr": "", "stderr_lines": [], "stdout": "13.0%", "stdout_lines": ["13.0%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.026965", "end": "2025-12-17 22:10:17.228289", "msg": "", "rc": 0, "start": "2025-12-17 22:10:17.201324", "stderr": "", "stderr_lines": [], "stdout": "20.0%", "stdout_lines": ["20.0%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004984", "end": "2025-12-17 22:10:17.774558", "msg": "", "rc": 0, "start": "2025-12-17 22:10:17.769574", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005473", "end": "2025-12-17 22:10:17.775474", "msg": "", "rc": 0, "start": "2025-12-17 22:10:17.770001", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006564", "end": "2025-12-17 22:10:17.787893", "msg": "", "rc": 0, "start": "2025-12-17 22:10:17.781329", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003089", "end": "2025-12-17 22:10:17.797871", "msg": "", "rc": 0, "start": "2025-12-17 22:10:17.794782", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006354", "end": "2025-12-17 22:10:17.832745", "msg": "", "rc": 0, "start": "2025-12-17 22:10:17.826391", "stderr": "", "stderr_lines": [], "stdout": "52.0°C", "stdout_lines": ["52.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003393", "end": "2025-12-17 22:09:51.466958", "msg": "", "rc": 0, "start": "2025-12-17 22:09:51.463565", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003877", "end": "2025-12-17 22:09:44.875885", "msg": "", "rc": 0, "start": "2025-12-17 22:09:44.872008", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011728", "end": "2025-12-17 22:10:18.449302", "msg": "", "rc": 0, "start": "2025-12-17 22:10:18.437574", "stderr": "", "stderr_lines": [], "stdout": "29.7°C", "stdout_lines": ["29.7°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012979", "end": "2025-12-17 22:10:18.501160", "msg": "", "rc": 0, "start": "2025-12-17 22:10:18.488181", "stderr": "", "stderr_lines": [], "stdout": "34.6°C", "stdout_lines": ["34.6°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003117", "end": "2025-12-17 22:10:18.759226", "msg": "", "rc": 0, "start": "2025-12-17 22:10:18.756109", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002909", "end": "2025-12-17 22:09:48.040420", "msg": "", "rc": 0, "start": "2025-12-17 22:09:48.037511", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002406", "end": "2025-12-17 22:09:54.735979", "msg": "", "rc": 0, "start": "2025-12-17 22:09:54.733573", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003917", "end": "2025-12-17 19:10:18.961947", "msg": "", "rc": 0, "start": "2025-12-17 19:10:18.958030", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004992", "end": "2025-12-17 22:10:19.496599", "msg": "", "rc": 0, "start": "2025-12-17 22:10:19.491607", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002919", "end": "2025-12-17 22:10:19.180408", "msg": "", "rc": 0, "start": "2025-12-17 22:10:19.177489", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028542", "end": "2025-12-17 22:10:19.166323", "msg": "", "rc": 0, "start": "2025-12-17 22:10:19.137781", "stderr": "", "stderr_lines": [], "stdout": "33.7°C", "stdout_lines": ["33.7°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004271", "end": "2025-12-17 22:10:19.681012", "msg": "", "rc": 0, "start": "2025-12-17 22:10:19.676741", "stderr": "", "stderr_lines": [], "stdout": "0.89", "stdout_lines": ["0.89"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004209", "end": "2025-12-17 22:10:19.705655", "msg": "", "rc": 0, "start": "2025-12-17 22:10:19.701446", "stderr": "", "stderr_lines": [], "stdout": "0.33", "stdout_lines": ["0.33"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004986", "end": "2025-12-17 22:10:19.719907", "msg": "", "rc": 0, "start": "2025-12-17 22:10:19.714921", "stderr": "", "stderr_lines": [], "stdout": "0.88", "stdout_lines": ["0.88"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005117", "end": "2025-12-17 22:10:19.735866", "msg": "", "rc": 0, "start": "2025-12-17 22:10:19.730749", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005561", "end": "2025-12-17 22:10:19.742126", "msg": "", "rc": 0, "start": "2025-12-17 22:10:19.736565", "stderr": "", "stderr_lines": [], "stdout": "0.76", "stdout_lines": ["0.76"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005051", "end": "2025-12-17 22:09:53.385614", "msg": "", "rc": 0, "start": "2025-12-17 22:09:53.380563", "stderr": "", "stderr_lines": [], "stdout": "0.02", "stdout_lines": ["0.02"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005482", "end": "2025-12-17 22:09:46.804617", "msg": "", "rc": 0, "start": "2025-12-17 22:09:46.799135", "stderr": "", "stderr_lines": [], "stdout": "0.23", "stdout_lines": ["0.23"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010067", "end": "2025-12-17 22:10:20.494098", "msg": "", "rc": 0, "start": "2025-12-17 22:10:20.484031", "stderr": "", "stderr_lines": [], "stdout": "0.16", "stdout_lines": ["0.16"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011125", "end": "2025-12-17 22:10:20.490505", "msg": "", "rc": 0, "start": "2025-12-17 22:10:20.479380", "stderr": "", "stderr_lines": [], "stdout": "0.27", "stdout_lines": ["0.27"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006163", "end": "2025-12-17 22:10:20.674073", "msg": "", "rc": 0, "start": "2025-12-17 22:10:20.667910", "stderr": "", "stderr_lines": [], "stdout": "0.23", "stdout_lines": ["0.23"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004970", "end": "2025-12-17 22:09:49.965433", "msg": "", "rc": 0, "start": "2025-12-17 22:09:49.960463", "stderr": "", "stderr_lines": [], "stdout": "0.42", "stdout_lines": ["0.42"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005773", "end": "2025-12-17 19:10:20.962570", "msg": "", "rc": 0, "start": "2025-12-17 19:10:20.956797", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004251", "end": "2025-12-17 22:09:56.818730", "msg": "", "rc": 0, "start": "2025-12-17 22:09:56.814479", "stderr": "", "stderr_lines": [], "stdout": "0.19", "stdout_lines": ["0.19"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.007905", "end": "2025-12-17 22:10:21.451779", "msg": "", "rc": 0, "start": "2025-12-17 22:10:21.443874", "stderr": "", "stderr_lines": [], "stdout": "1.50", "stdout_lines": ["1.50"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005375", "end": "2025-12-17 22:10:21.098815", "msg": "", "rc": 0, "start": "2025-12-17 22:10:21.093440", "stderr": "", "stderr_lines": [], "stdout": "0.12", "stdout_lines": ["0.12"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024295", "end": "2025-12-17 22:10:21.065319", "msg": "", "rc": 0, "start": "2025-12-17 22:10:21.041024", "stderr": "", "stderr_lines": [], "stdout": "0.20", "stdout_lines": ["0.20"]} + +TASK [Display health status] *************************************************** +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:10:11 up 22 days, 9:01, 1 user, load average: 1.05, 0.73, 0.45\nDisk Usage: 23%\nMemory Usage: 78.4%\nCPU Load: 0.89\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:10:11 up 3 days, 11:42, 3 users, load average: 0.36, 0.30, 0.28\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.33\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:10:11 up 22 days, 9:21, 1 user, load average: 0.87, 0.72, 0.68\nDisk Usage: 14%\nMemory Usage: 49.2%\nCPU Load: 0.88\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:10:11 up 22 days, 10:34, 1 user, load average: 0.65, 0.71, 0.67\nDisk Usage: 14%\nMemory Usage: 59.7%\nCPU Load: 0.76\nCPU Temp: 52.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:10:11 up 22 days, 11:20, 1 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:10:13 up 15 days, 11:36, 1 user, load average: 0.22, 0.15, 0.10\nDisk Usage: 21%\nMemory Usage: 20.0%\nCPU Load: 0.20\nCPU Temp: 33.7°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:10:12 up 194 days, 13:43, 1 user, load average: 0.29, 0.22, 0.19\nDisk Usage: 6%\nMemory Usage: 13.3%\nCPU Load: 0.27\nCPU Temp: 34.6°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:10:12 up 194 days, 13:43, 1 user, load average: 0.10, 0.17, 0.12\nDisk Usage: 3%\nMemory Usage: 6.9%\nCPU Load: 0.16\nCPU Temp: 29.7°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:09:45 up 11 days, 9:59, 0 user, load average: 0.03, 0.16, 0.17\nDisk Usage: 48%\nMemory Usage: 70.4%\nCPU Load: 0.02\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:09:39 up 18 days, 6:11, 0 user, load average: 0.18, 0.07, 0.01\nDisk Usage: 25%\nMemory Usage: 68.2%\nCPU Load: 0.23\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:10:13 up 3 days, 11:41, 1 user, load average: 0.28, 0.07, 0.02\nDisk Usage: 1%\nMemory Usage: 35.6%\nCPU Load: 0.23\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:09:42 up 21 days, 1:04, 0 user, load average: 0.41, 0.44, 0.45\nDisk Usage: 28%\nMemory Usage: 27.3%\nCPU Load: 0.42\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:09:49 up 17 days, 11:25, 0 user, load average: 0.13, 0.19, 0.23\nDisk Usage: 76%\nMemory Usage: 51.1%\nCPU Load: 0.19\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 7:10PM up 22 days, 9 hrs, 1 user, load averages: 0.22, 0.20, 0.17\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:10:13 up 3 days, 11:41, 1 user, load average: 0.04, 0.05, 0.02\nDisk Usage: 79%\nMemory Usage: 14.1%\nCPU Load: 0.12\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:10:13 up 2:18, 1 user, load average: 1.21, 1.16, 1.15\nDisk Usage: 1%\nMemory Usage: 13.0%\nCPU Load: 1.50\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T03:10:22.405543+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_031521_990e47_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_031521_990e47_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..91cc8ef --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_031521_990e47_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `1f3c85b7552548b4b2a4f85ee601ed23` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T03:15:00.002254+00:00 | +| **Fin** | 2025-12-18T03:15:21.757100+00:00 | +| **Durée** | 21.8s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003302", "end": "2025-12-17 22:15:11.616100", "msg": "", "rc": 0, "start": "2025-12-17 22:15:11.612798", "stderr": "", "stderr_lines": [], "stdout": " 22:15:11 up 22 days, 9:26, 1 user, load average: 0.66, 0.67, 0.66", "stdout_lines": [" 22:15:11 up 22 days, 9:26, 1 user, load average: 0.66, 0.67, 0.66"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003736", "end": "2025-12-17 22:15:11.621833", "msg": "", "rc": 0, "start": "2025-12-17 22:15:11.618097", "stderr": "", "stderr_lines": [], "stdout": " 22:15:11 up 22 days, 11:25, 1 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 22:15:11 up 22 days, 11:25, 1 user, load average: 0.00, 0.00, 0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004093", "end": "2025-12-17 22:15:11.637013", "msg": "", "rc": 0, "start": "2025-12-17 22:15:11.632920", "stderr": "", "stderr_lines": [], "stdout": " 22:15:11 up 22 days, 10:39, 1 user, load average: 0.63, 0.64, 0.65", "stdout_lines": [" 22:15:11 up 22 days, 10:39, 1 user, load average: 0.63, 0.64, 0.65"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002937", "end": "2025-12-17 22:15:11.656095", "msg": "", "rc": 0, "start": "2025-12-17 22:15:11.653158", "stderr": "", "stderr_lines": [], "stdout": " 22:15:11 up 3 days, 11:47, 3 users, load average: 0.41, 0.43, 0.34", "stdout_lines": [" 22:15:11 up 3 days, 11:47, 3 users, load average: 0.41, 0.43, 0.34"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003002", "end": "2025-12-17 22:14:45.284473", "msg": "", "rc": 0, "start": "2025-12-17 22:14:45.281471", "stderr": "", "stderr_lines": [], "stdout": " 22:14:45 up 11 days, 10:04, 0 user, load average: 0.18, 0.18, 0.17", "stdout_lines": [" 22:14:45 up 11 days, 10:04, 0 user, load average: 0.18, 0.18, 0.17"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008420", "end": "2025-12-17 22:15:12.288028", "msg": "", "rc": 0, "start": "2025-12-17 22:15:12.279608", "stderr": "", "stderr_lines": [], "stdout": " 22:15:12 up 194 days, 13:48, 1 user, load average: 0.14, 0.14, 0.11", "stdout_lines": [" 22:15:12 up 194 days, 13:48, 1 user, load average: 0.14, 0.14, 0.11"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009696", "end": "2025-12-17 22:15:12.339277", "msg": "", "rc": 0, "start": "2025-12-17 22:15:12.329581", "stderr": "", "stderr_lines": [], "stdout": " 22:15:12 up 194 days, 13:48, 1 user, load average: 0.16, 0.17, 0.18", "stdout_lines": [" 22:15:12 up 194 days, 13:48, 1 user, load average: 0.16, 0.17, 0.18"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004508", "end": "2025-12-17 22:15:12.609920", "msg": "", "rc": 0, "start": "2025-12-17 22:15:11.605412", "stderr": "", "stderr_lines": [], "stdout": " 22:15:11 up 22 days, 9:06, 1 user, load average: 0.38, 0.49, 0.42", "stdout_lines": [" 22:15:11 up 22 days, 9:06, 1 user, load average: 0.38, 0.49, 0.42"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003563", "end": "2025-12-17 22:14:39.158472", "msg": "", "rc": 0, "start": "2025-12-17 22:14:39.154909", "stderr": "", "stderr_lines": [], "stdout": " 22:14:39 up 18 days, 6:16, 0 user, load average: 0.04, 0.06, 0.01", "stdout_lines": [" 22:14:39 up 18 days, 6:16, 0 user, load average: 0.04, 0.06, 0.01"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004771", "end": "2025-12-17 22:15:12.804369", "msg": "", "rc": 0, "start": "2025-12-17 22:15:12.799598", "stderr": "", "stderr_lines": [], "stdout": " 22:15:12 up 3 days, 11:46, 1 user, load average: 0.01, 0.06, 0.02", "stdout_lines": [" 22:15:12 up 3 days, 11:46, 1 user, load average: 0.01, 0.06, 0.02"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003498", "end": "2025-12-17 22:14:42.072841", "msg": "", "rc": 0, "start": "2025-12-17 22:14:42.069343", "stderr": "", "stderr_lines": [], "stdout": " 22:14:42 up 21 days, 1:08, 0 user, load average: 0.49, 0.45, 0.45", "stdout_lines": [" 22:14:42 up 21 days, 1:08, 0 user, load average: 0.49, 0.45, 0.45"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004225", "end": "2025-12-17 19:15:13.052146", "msg": "", "rc": 0, "start": "2025-12-17 19:15:13.047921", "stderr": "", "stderr_lines": [], "stdout": " 7:15PM up 22 days, 9:05, 1 user, load averages: 0.26, 0.19, 0.17", "stdout_lines": [" 7:15PM up 22 days, 9:05, 1 user, load averages: 0.26, 0.19, 0.17"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002857", "end": "2025-12-17 22:14:48.849806", "msg": "", "rc": 0, "start": "2025-12-17 22:14:48.846949", "stderr": "", "stderr_lines": [], "stdout": " 22:14:48 up 17 days, 11:30, 0 user, load average: 0.25, 0.17, 0.19", "stdout_lines": [" 22:14:48 up 17 days, 11:30, 0 user, load average: 0.25, 0.17, 0.19"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019369", "end": "2025-12-17 22:15:13.002878", "msg": "", "rc": 0, "start": "2025-12-17 22:15:12.983509", "stderr": "", "stderr_lines": [], "stdout": " 22:15:12 up 15 days, 11:41, 1 user, load average: 0.30, 0.16, 0.10", "stdout_lines": [" 22:15:12 up 15 days, 11:41, 1 user, load average: 0.30, 0.16, 0.10"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008004", "end": "2025-12-17 22:15:13.674238", "msg": "", "rc": 0, "start": "2025-12-17 22:15:13.666234", "stderr": "", "stderr_lines": [], "stdout": " 22:15:13 up 2:23, 1 user, load average: 1.08, 1.14, 1.16", "stdout_lines": [" 22:15:13 up 2:23, 1 user, load average: 1.08, 1.14, 1.16"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003708", "end": "2025-12-17 22:15:13.218030", "msg": "", "rc": 0, "start": "2025-12-17 22:15:13.214322", "stderr": "", "stderr_lines": [], "stdout": " 22:15:13 up 3 days, 11:46, 1 user, load average: 0.25, 0.11, 0.03", "stdout_lines": [" 22:15:13 up 3 days, 11:46, 1 user, load average: 0.25, 0.11, 0.03"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004222", "end": "2025-12-17 22:15:13.636692", "msg": "", "rc": 0, "start": "2025-12-17 22:15:13.632470", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004118", "end": "2025-12-17 22:15:13.637873", "msg": "", "rc": 0, "start": "2025-12-17 22:15:13.633755", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004670", "end": "2025-12-17 22:15:13.657896", "msg": "", "rc": 0, "start": "2025-12-17 22:15:13.653226", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004976", "end": "2025-12-17 22:15:13.684065", "msg": "", "rc": 0, "start": "2025-12-17 22:15:13.679089", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005570", "end": "2025-12-17 22:15:13.693539", "msg": "", "rc": 0, "start": "2025-12-17 22:15:13.687969", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005135", "end": "2025-12-17 22:14:47.304793", "msg": "", "rc": 0, "start": "2025-12-17 22:14:47.299658", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005275", "end": "2025-12-17 22:14:40.748553", "msg": "", "rc": 0, "start": "2025-12-17 22:14:40.743278", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010635", "end": "2025-12-17 22:15:14.385375", "msg": "", "rc": 0, "start": "2025-12-17 22:15:14.374740", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.012290", "end": "2025-12-17 22:15:14.406697", "msg": "", "rc": 0, "start": "2025-12-17 22:15:14.394407", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005666", "end": "2025-12-17 22:15:14.599485", "msg": "", "rc": 0, "start": "2025-12-17 22:15:14.593819", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006457", "end": "2025-12-17 22:14:43.971881", "msg": "", "rc": 0, "start": "2025-12-17 22:14:43.965424", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005430", "end": "2025-12-17 19:15:14.875317", "msg": "", "rc": 0, "start": "2025-12-17 19:15:14.869887", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004495", "end": "2025-12-17 22:14:50.675723", "msg": "", "rc": 0, "start": "2025-12-17 22:14:50.671228", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005514", "end": "2025-12-17 22:15:15.026357", "msg": "", "rc": 0, "start": "2025-12-17 22:15:15.020843", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.018870", "end": "2025-12-17 22:15:15.634145", "msg": "", "rc": 0, "start": "2025-12-17 22:15:15.615275", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.024758", "end": "2025-12-17 22:15:15.022045", "msg": "", "rc": 0, "start": "2025-12-17 22:15:14.997287", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004171", "end": "2025-12-17 22:15:15.552607", "msg": "", "rc": 0, "start": "2025-12-17 22:15:15.548436", "stderr": "", "stderr_lines": [], "stdout": "78.3%", "stdout_lines": ["78.3%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004264", "end": "2025-12-17 22:15:15.564887", "msg": "", "rc": 0, "start": "2025-12-17 22:15:15.560623", "stderr": "", "stderr_lines": [], "stdout": "22.7%", "stdout_lines": ["22.7%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004791", "end": "2025-12-17 22:15:15.563789", "msg": "", "rc": 0, "start": "2025-12-17 22:15:15.558998", "stderr": "", "stderr_lines": [], "stdout": "49.2%", "stdout_lines": ["49.2%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005018", "end": "2025-12-17 22:15:15.598367", "msg": "", "rc": 0, "start": "2025-12-17 22:15:15.593349", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005976", "end": "2025-12-17 22:15:15.637187", "msg": "", "rc": 0, "start": "2025-12-17 22:15:15.631211", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003808", "end": "2025-12-17 22:14:49.261608", "msg": "", "rc": 0, "start": "2025-12-17 22:14:49.257800", "stderr": "", "stderr_lines": [], "stdout": "70.5%", "stdout_lines": ["70.5%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004192", "end": "2025-12-17 22:14:42.713946", "msg": "", "rc": 0, "start": "2025-12-17 22:14:42.709754", "stderr": "", "stderr_lines": [], "stdout": "68.3%", "stdout_lines": ["68.3%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010736", "end": "2025-12-17 22:15:16.254072", "msg": "", "rc": 0, "start": "2025-12-17 22:15:16.243336", "stderr": "", "stderr_lines": [], "stdout": "6.9%", "stdout_lines": ["6.9%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011720", "end": "2025-12-17 22:15:16.285386", "msg": "", "rc": 0, "start": "2025-12-17 22:15:16.273666", "stderr": "", "stderr_lines": [], "stdout": "13.2%", "stdout_lines": ["13.2%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005739", "end": "2025-12-17 22:15:16.554389", "msg": "", "rc": 0, "start": "2025-12-17 22:15:16.548650", "stderr": "", "stderr_lines": [], "stdout": "35.7%", "stdout_lines": ["35.7%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005002", "end": "2025-12-17 19:15:16.740853", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 19:15:16.735851", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003871", "end": "2025-12-17 22:14:52.529691", "msg": "", "rc": 0, "start": "2025-12-17 22:14:52.525820", "stderr": "", "stderr_lines": [], "stdout": "51.0%", "stdout_lines": ["51.0%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004394", "end": "2025-12-17 22:14:45.903087", "msg": "", "rc": 0, "start": "2025-12-17 22:14:45.898693", "stderr": "", "stderr_lines": [], "stdout": "26.7%", "stdout_lines": ["26.7%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005919", "end": "2025-12-17 22:15:16.979057", "msg": "", "rc": 0, "start": "2025-12-17 22:15:16.973138", "stderr": "", "stderr_lines": [], "stdout": "14.0%", "stdout_lines": ["14.0%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.008229", "end": "2025-12-17 22:15:17.046378", "msg": "", "rc": 0, "start": "2025-12-17 22:15:17.038149", "stderr": "", "stderr_lines": [], "stdout": "13.1%", "stdout_lines": ["13.1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.026079", "end": "2025-12-17 22:15:16.949387", "msg": "", "rc": 0, "start": "2025-12-17 22:15:16.923308", "stderr": "", "stderr_lines": [], "stdout": "20.6%", "stdout_lines": ["20.6%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005443", "end": "2025-12-17 22:15:17.470331", "msg": "", "rc": 0, "start": "2025-12-17 22:15:17.464888", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005006", "end": "2025-12-17 22:15:17.479142", "msg": "", "rc": 0, "start": "2025-12-17 22:15:17.474136", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006330", "end": "2025-12-17 22:15:17.485188", "msg": "", "rc": 0, "start": "2025-12-17 22:15:17.478858", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003284", "end": "2025-12-17 22:15:17.514793", "msg": "", "rc": 0, "start": "2025-12-17 22:15:17.511509", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006661", "end": "2025-12-17 22:15:17.547652", "msg": "", "rc": 0, "start": "2025-12-17 22:15:17.540991", "stderr": "", "stderr_lines": [], "stdout": "52.0°C", "stdout_lines": ["52.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002967", "end": "2025-12-17 22:14:51.126406", "msg": "", "rc": 0, "start": "2025-12-17 22:14:51.123439", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003488", "end": "2025-12-17 22:14:44.610815", "msg": "", "rc": 0, "start": "2025-12-17 22:14:44.607327", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012063", "end": "2025-12-17 22:15:18.134668", "msg": "", "rc": 0, "start": "2025-12-17 22:15:18.122605", "stderr": "", "stderr_lines": [], "stdout": "30.7°C", "stdout_lines": ["30.7°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012842", "end": "2025-12-17 22:15:18.191796", "msg": "", "rc": 0, "start": "2025-12-17 22:15:18.178954", "stderr": "", "stderr_lines": [], "stdout": "34.1°C", "stdout_lines": ["34.1°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003252", "end": "2025-12-17 22:15:18.417772", "msg": "", "rc": 0, "start": "2025-12-17 22:15:18.414520", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002751", "end": "2025-12-17 22:14:54.428631", "msg": "", "rc": 0, "start": "2025-12-17 22:14:54.425880", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003947", "end": "2025-12-17 19:15:18.659315", "msg": "", "rc": 0, "start": "2025-12-17 19:15:18.655368", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002997", "end": "2025-12-17 22:14:47.806208", "msg": "", "rc": 0, "start": "2025-12-17 22:14:47.803211", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002953", "end": "2025-12-17 22:15:18.838672", "msg": "", "rc": 0, "start": "2025-12-17 22:15:18.835719", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003917", "end": "2025-12-17 22:15:18.984273", "msg": "", "rc": 0, "start": "2025-12-17 22:15:18.980356", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028634", "end": "2025-12-17 22:15:18.850024", "msg": "", "rc": 0, "start": "2025-12-17 22:15:18.821390", "stderr": "", "stderr_lines": [], "stdout": "34.3°C", "stdout_lines": ["34.3°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004243", "end": "2025-12-17 22:15:19.384466", "msg": "", "rc": 0, "start": "2025-12-17 22:15:19.380223", "stderr": "", "stderr_lines": [], "stdout": "0.38", "stdout_lines": ["0.38"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004149", "end": "2025-12-17 22:15:19.385169", "msg": "", "rc": 0, "start": "2025-12-17 22:15:19.381020", "stderr": "", "stderr_lines": [], "stdout": "0.39", "stdout_lines": ["0.39"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004851", "end": "2025-12-17 22:15:19.424743", "msg": "", "rc": 0, "start": "2025-12-17 22:15:19.419892", "stderr": "", "stderr_lines": [], "stdout": "0.93", "stdout_lines": ["0.93"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004949", "end": "2025-12-17 22:15:19.431979", "msg": "", "rc": 0, "start": "2025-12-17 22:15:19.427030", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005715", "end": "2025-12-17 22:15:19.446498", "msg": "", "rc": 0, "start": "2025-12-17 22:15:19.440783", "stderr": "", "stderr_lines": [], "stdout": "0.82", "stdout_lines": ["0.82"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004377", "end": "2025-12-17 22:14:53.069198", "msg": "", "rc": 0, "start": "2025-12-17 22:14:53.064821", "stderr": "", "stderr_lines": [], "stdout": "0.23", "stdout_lines": ["0.23"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004864", "end": "2025-12-17 22:14:46.507372", "msg": "", "rc": 0, "start": "2025-12-17 22:14:46.502508", "stderr": "", "stderr_lines": [], "stdout": "0.04", "stdout_lines": ["0.04"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010414", "end": "2025-12-17 22:15:20.174073", "msg": "", "rc": 0, "start": "2025-12-17 22:15:20.163659", "stderr": "", "stderr_lines": [], "stdout": "0.12", "stdout_lines": ["0.12"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011094", "end": "2025-12-17 22:15:20.227662", "msg": "", "rc": 0, "start": "2025-12-17 22:15:20.216568", "stderr": "", "stderr_lines": [], "stdout": "0.14", "stdout_lines": ["0.14"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005604", "end": "2025-12-17 22:15:20.365859", "msg": "", "rc": 0, "start": "2025-12-17 22:15:20.360255", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005169", "end": "2025-12-17 22:14:49.674869", "msg": "", "rc": 0, "start": "2025-12-17 22:14:49.669700", "stderr": "", "stderr_lines": [], "stdout": "0.64", "stdout_lines": ["0.64"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004427", "end": "2025-12-17 22:14:56.452468", "msg": "", "rc": 0, "start": "2025-12-17 22:14:56.448041", "stderr": "", "stderr_lines": [], "stdout": "0.21", "stdout_lines": ["0.21"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006624", "end": "2025-12-17 19:15:20.699665", "msg": "", "rc": 0, "start": "2025-12-17 19:15:20.693041", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005342", "end": "2025-12-17 22:15:20.798999", "msg": "", "rc": 0, "start": "2025-12-17 22:15:20.793657", "stderr": "", "stderr_lines": [], "stdout": "0.23", "stdout_lines": ["0.23"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.009013", "end": "2025-12-17 22:15:20.919626", "msg": "", "rc": 0, "start": "2025-12-17 22:15:20.910613", "stderr": "", "stderr_lines": [], "stdout": "1.29", "stdout_lines": ["1.29"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024552", "end": "2025-12-17 22:15:20.784126", "msg": "", "rc": 0, "start": "2025-12-17 22:15:20.759574", "stderr": "", "stderr_lines": [], "stdout": "0.35", "stdout_lines": ["0.35"]} + +TASK [Display health status] *************************************************** +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:15:11 up 22 days, 9:06, 1 user, load average: 0.38, 0.49, 0.42\nDisk Usage: 23%\nMemory Usage: 78.3%\nCPU Load: 0.39\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:15:11 up 3 days, 11:47, 3 users, load average: 0.41, 0.43, 0.34\nDisk Usage: 22%\nMemory Usage: 22.7%\nCPU Load: 0.38\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:15:11 up 22 days, 9:26, 1 user, load average: 0.66, 0.67, 0.66\nDisk Usage: 14%\nMemory Usage: 49.2%\nCPU Load: 0.93\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:15:11 up 22 days, 10:39, 1 user, load average: 0.63, 0.64, 0.65\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.82\nCPU Temp: 52.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:15:11 up 22 days, 11:25, 1 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:15:12 up 15 days, 11:41, 1 user, load average: 0.30, 0.16, 0.10\nDisk Usage: 21%\nMemory Usage: 20.6%\nCPU Load: 0.35\nCPU Temp: 34.3°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:15:12 up 194 days, 13:48, 1 user, load average: 0.16, 0.17, 0.18\nDisk Usage: 6%\nMemory Usage: 13.2%\nCPU Load: 0.14\nCPU Temp: 34.1°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:15:12 up 194 days, 13:48, 1 user, load average: 0.14, 0.14, 0.11\nDisk Usage: 3%\nMemory Usage: 6.9%\nCPU Load: 0.12\nCPU Temp: 30.7°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:14:45 up 11 days, 10:04, 0 user, load average: 0.18, 0.18, 0.17\nDisk Usage: 48%\nMemory Usage: 70.5%\nCPU Load: 0.23\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:14:39 up 18 days, 6:16, 0 user, load average: 0.04, 0.06, 0.01\nDisk Usage: 25%\nMemory Usage: 68.3%\nCPU Load: 0.04\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:15:12 up 3 days, 11:46, 1 user, load average: 0.01, 0.06, 0.02\nDisk Usage: 1%\nMemory Usage: 35.7%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:14:42 up 21 days, 1:08, 0 user, load average: 0.49, 0.45, 0.45\nDisk Usage: 28%\nMemory Usage: 26.7%\nCPU Load: 0.64\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:14:48 up 17 days, 11:30, 0 user, load average: 0.25, 0.17, 0.19\nDisk Usage: 76%\nMemory Usage: 51.0%\nCPU Load: 0.21\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 7:15PM up 22 days, 9:05, 1 user, load averages: 0.26, 0.19, 0.17\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:15:13 up 3 days, 11:46, 1 user, load average: 0.25, 0.11, 0.03\nDisk Usage: 79%\nMemory Usage: 14.0%\nCPU Load: 0.23\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:15:13 up 2:23, 1 user, load average: 1.08, 1.14, 1.16\nDisk Usage: 1%\nMemory Usage: 13.1%\nCPU Load: 1.29\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T03:15:21.796072+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_032021_44b936_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_032021_44b936_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..793474f --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_032021_44b936_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `dc7611e3df884b999f0c911c6b4b72e0` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T03:20:00.001070+00:00 | +| **Fin** | 2025-12-18T03:20:21.375751+00:00 | +| **Durée** | 21.4s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [dev.prod.home] +ok: [hp.truenas.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003271", "end": "2025-12-17 22:20:11.190695", "msg": "", "rc": 0, "start": "2025-12-17 22:20:11.187424", "stderr": "", "stderr_lines": [], "stdout": " 22:20:11 up 22 days, 9:11, 1 user, load average: 0.33, 0.43, 0.43", "stdout_lines": [" 22:20:11 up 22 days, 9:11, 1 user, load average: 0.33, 0.43, 0.43"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003190", "end": "2025-12-17 22:20:11.194386", "msg": "", "rc": 0, "start": "2025-12-17 22:20:11.191196", "stderr": "", "stderr_lines": [], "stdout": " 22:20:11 up 22 days, 9:31, 1 user, load average: 0.70, 0.68, 0.66", "stdout_lines": [" 22:20:11 up 22 days, 9:31, 1 user, load average: 0.70, 0.68, 0.66"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003414", "end": "2025-12-17 22:20:11.203057", "msg": "", "rc": 0, "start": "2025-12-17 22:20:11.199643", "stderr": "", "stderr_lines": [], "stdout": " 22:20:11 up 22 days, 11:30, 1 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 22:20:11 up 22 days, 11:30, 1 user, load average: 0.00, 0.00, 0.00"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002857", "end": "2025-12-17 22:20:11.230199", "msg": "", "rc": 0, "start": "2025-12-17 22:20:11.227342", "stderr": "", "stderr_lines": [], "stdout": " 22:20:11 up 3 days, 11:52, 3 users, load average: 0.27, 0.28, 0.29", "stdout_lines": [" 22:20:11 up 3 days, 11:52, 3 users, load average: 0.27, 0.28, 0.29"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004128", "end": "2025-12-17 22:20:11.222522", "msg": "", "rc": 0, "start": "2025-12-17 22:20:11.218394", "stderr": "", "stderr_lines": [], "stdout": " 22:20:11 up 22 days, 10:44, 1 user, load average: 0.65, 0.73, 0.69", "stdout_lines": [" 22:20:11 up 22 days, 10:44, 1 user, load average: 0.65, 0.73, 0.69"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003065", "end": "2025-12-17 22:19:44.857663", "msg": "", "rc": 0, "start": "2025-12-17 22:19:44.854598", "stderr": "", "stderr_lines": [], "stdout": " 22:19:44 up 11 days, 10:09, 0 user, load average: 0.21, 0.18, 0.18", "stdout_lines": [" 22:19:44 up 11 days, 10:09, 0 user, load average: 0.21, 0.18, 0.18"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003362", "end": "2025-12-17 22:19:38.294132", "msg": "", "rc": 0, "start": "2025-12-17 22:19:38.290770", "stderr": "", "stderr_lines": [], "stdout": " 22:19:38 up 18 days, 6:21, 0 user, load average: 0.37, 0.16, 0.04", "stdout_lines": [" 22:19:38 up 18 days, 6:21, 0 user, load average: 0.37, 0.16, 0.04"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008655", "end": "2025-12-17 22:20:11.881297", "msg": "", "rc": 0, "start": "2025-12-17 22:20:11.872642", "stderr": "", "stderr_lines": [], "stdout": " 22:20:11 up 194 days, 13:53, 1 user, load average: 0.34, 0.16, 0.11", "stdout_lines": [" 22:20:11 up 194 days, 13:53, 1 user, load average: 0.34, 0.16, 0.11"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.010220", "end": "2025-12-17 22:20:11.925243", "msg": "", "rc": 0, "start": "2025-12-17 22:20:11.915023", "stderr": "", "stderr_lines": [], "stdout": " 22:20:11 up 194 days, 13:53, 1 user, load average: 0.46, 0.22, 0.19", "stdout_lines": [" 22:20:11 up 194 days, 13:53, 1 user, load average: 0.46, 0.22, 0.19"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004941", "end": "2025-12-17 22:20:12.151475", "msg": "", "rc": 0, "start": "2025-12-17 22:20:12.146534", "stderr": "", "stderr_lines": [], "stdout": " 22:20:12 up 3 days, 11:51, 1 user, load average: 0.00, 0.02, 0.00", "stdout_lines": [" 22:20:12 up 3 days, 11:51, 1 user, load average: 0.00, 0.02, 0.00"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003168", "end": "2025-12-17 22:19:41.453278", "msg": "", "rc": 0, "start": "2025-12-17 22:19:41.450110", "stderr": "", "stderr_lines": [], "stdout": " 22:19:41 up 21 days, 1:13, 0 user, load average: 1.99, 0.89, 0.60", "stdout_lines": [" 22:19:41 up 21 days, 1:13, 0 user, load average: 1.99, 0.89, 0.60"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003177", "end": "2025-12-17 22:19:48.149848", "msg": "", "rc": 0, "start": "2025-12-17 22:19:48.146671", "stderr": "", "stderr_lines": [], "stdout": " 22:19:48 up 17 days, 11:35, 0 user, load average: 0.30, 0.27, 0.22", "stdout_lines": [" 22:19:48 up 17 days, 11:35, 0 user, load average: 0.30, 0.27, 0.22"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004279", "end": "2025-12-17 19:20:12.384314", "msg": "", "rc": 0, "start": "2025-12-17 19:20:12.380035", "stderr": "", "stderr_lines": [], "stdout": " 7:20PM up 22 days, 9:09, 1 user, load averages: 0.32, 0.27, 0.20", "stdout_lines": [" 7:20PM up 22 days, 9:09, 1 user, load averages: 0.32, 0.27, 0.20"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003666", "end": "2025-12-17 22:20:12.566192", "msg": "", "rc": 0, "start": "2025-12-17 22:20:12.562526", "stderr": "", "stderr_lines": [], "stdout": " 22:20:12 up 3 days, 11:51, 1 user, load average: 0.00, 0.04, 0.01", "stdout_lines": [" 22:20:12 up 3 days, 11:51, 1 user, load average: 0.00, 0.04, 0.01"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008405", "end": "2025-12-17 22:20:12.799795", "msg": "", "rc": 0, "start": "2025-12-17 22:20:12.791390", "stderr": "", "stderr_lines": [], "stdout": " 22:20:12 up 2:28, 1 user, load average: 1.20, 1.14, 1.15", "stdout_lines": [" 22:20:12 up 2:28, 1 user, load average: 1.20, 1.14, 1.15"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019514", "end": "2025-12-17 22:20:12.578202", "msg": "", "rc": 0, "start": "2025-12-17 22:20:12.558688", "stderr": "", "stderr_lines": [], "stdout": " 22:20:12 up 15 days, 11:46, 1 user, load average: 0.14, 0.12, 0.09", "stdout_lines": [" 22:20:12 up 15 days, 11:46, 1 user, load average: 0.14, 0.12, 0.09"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004112", "end": "2025-12-17 22:20:13.093677", "msg": "", "rc": 0, "start": "2025-12-17 22:20:13.089565", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004097", "end": "2025-12-17 22:20:13.118492", "msg": "", "rc": 0, "start": "2025-12-17 22:20:13.114395", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004843", "end": "2025-12-17 22:20:13.132520", "msg": "", "rc": 0, "start": "2025-12-17 22:20:13.127677", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004708", "end": "2025-12-17 22:20:13.137107", "msg": "", "rc": 0, "start": "2025-12-17 22:20:13.132399", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005547", "end": "2025-12-17 22:20:13.152340", "msg": "", "rc": 0, "start": "2025-12-17 22:20:13.146793", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005037", "end": "2025-12-17 22:19:46.781968", "msg": "", "rc": 0, "start": "2025-12-17 22:19:46.776931", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005601", "end": "2025-12-17 22:19:40.210818", "msg": "", "rc": 0, "start": "2025-12-17 22:19:40.205217", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010702", "end": "2025-12-17 22:20:13.850215", "msg": "", "rc": 0, "start": "2025-12-17 22:20:13.839513", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011636", "end": "2025-12-17 22:20:13.877953", "msg": "", "rc": 0, "start": "2025-12-17 22:20:13.866317", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005792", "end": "2025-12-17 22:20:14.081313", "msg": "", "rc": 0, "start": "2025-12-17 22:20:14.075521", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005547", "end": "2025-12-17 22:19:43.393056", "msg": "", "rc": 0, "start": "2025-12-17 22:19:43.387509", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005280", "end": "2025-12-17 19:20:14.345207", "msg": "", "rc": 0, "start": "2025-12-17 19:20:14.339927", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006038", "end": "2025-12-17 22:19:50.134710", "msg": "", "rc": 0, "start": "2025-12-17 22:19:50.128672", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005443", "end": "2025-12-17 22:20:14.500257", "msg": "", "rc": 0, "start": "2025-12-17 22:20:14.494814", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.019441", "end": "2025-12-17 22:20:14.769187", "msg": "", "rc": 0, "start": "2025-12-17 22:20:14.749746", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025093", "end": "2025-12-17 22:20:14.479971", "msg": "", "rc": 0, "start": "2025-12-17 22:20:14.454878", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004275", "end": "2025-12-17 22:20:15.006704", "msg": "", "rc": 0, "start": "2025-12-17 22:20:15.002429", "stderr": "", "stderr_lines": [], "stdout": "78.2%", "stdout_lines": ["78.2%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004113", "end": "2025-12-17 22:20:15.031491", "msg": "", "rc": 0, "start": "2025-12-17 22:20:15.027378", "stderr": "", "stderr_lines": [], "stdout": "22.7%", "stdout_lines": ["22.7%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005201", "end": "2025-12-17 22:20:15.038036", "msg": "", "rc": 0, "start": "2025-12-17 22:20:15.032835", "stderr": "", "stderr_lines": [], "stdout": "49.1%", "stdout_lines": ["49.1%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004747", "end": "2025-12-17 22:20:15.044730", "msg": "", "rc": 0, "start": "2025-12-17 22:20:15.039983", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005492", "end": "2025-12-17 22:20:15.056877", "msg": "", "rc": 0, "start": "2025-12-17 22:20:15.051385", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003839", "end": "2025-12-17 22:19:48.679078", "msg": "", "rc": 0, "start": "2025-12-17 22:19:48.675239", "stderr": "", "stderr_lines": [], "stdout": "70.5%", "stdout_lines": ["70.5%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004402", "end": "2025-12-17 22:19:42.104148", "msg": "", "rc": 0, "start": "2025-12-17 22:19:42.099746", "stderr": "", "stderr_lines": [], "stdout": "68.3%", "stdout_lines": ["68.3%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011034", "end": "2025-12-17 22:20:15.695076", "msg": "", "rc": 0, "start": "2025-12-17 22:20:15.684042", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011552", "end": "2025-12-17 22:20:15.746766", "msg": "", "rc": 0, "start": "2025-12-17 22:20:15.735214", "stderr": "", "stderr_lines": [], "stdout": "13.1%", "stdout_lines": ["13.1%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005994", "end": "2025-12-17 22:20:16.003302", "msg": "", "rc": 0, "start": "2025-12-17 22:20:15.997308", "stderr": "", "stderr_lines": [], "stdout": "35.6%", "stdout_lines": ["35.6%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004076", "end": "2025-12-17 22:19:45.295495", "msg": "", "rc": 0, "start": "2025-12-17 22:19:45.291419", "stderr": "", "stderr_lines": [], "stdout": "27.6%", "stdout_lines": ["27.6%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005109", "end": "2025-12-17 19:20:16.215622", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 19:20:16.210513", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003854", "end": "2025-12-17 22:19:51.998005", "msg": "", "rc": 0, "start": "2025-12-17 22:19:51.994151", "stderr": "", "stderr_lines": [], "stdout": "50.7%", "stdout_lines": ["50.7%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005446", "end": "2025-12-17 22:20:16.449356", "msg": "", "rc": 0, "start": "2025-12-17 22:20:16.443910", "stderr": "", "stderr_lines": [], "stdout": "13.9%", "stdout_lines": ["13.9%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010004", "end": "2025-12-17 22:20:16.698518", "msg": "", "rc": 0, "start": "2025-12-17 22:20:16.688514", "stderr": "", "stderr_lines": [], "stdout": "13.1%", "stdout_lines": ["13.1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025818", "end": "2025-12-17 22:20:16.387160", "msg": "", "rc": 0, "start": "2025-12-17 22:20:16.361342", "stderr": "", "stderr_lines": [], "stdout": "20.4%", "stdout_lines": ["20.4%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005399", "end": "2025-12-17 22:20:16.902279", "msg": "", "rc": 0, "start": "2025-12-17 22:20:16.896880", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004881", "end": "2025-12-17 22:20:16.930266", "msg": "", "rc": 0, "start": "2025-12-17 22:20:16.925385", "stderr": "", "stderr_lines": [], "stdout": "45.0°C", "stdout_lines": ["45.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003412", "end": "2025-12-17 22:20:16.949043", "msg": "", "rc": 0, "start": "2025-12-17 22:20:16.945631", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006199", "end": "2025-12-17 22:20:16.939028", "msg": "", "rc": 0, "start": "2025-12-17 22:20:16.932829", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006576", "end": "2025-12-17 22:20:16.982932", "msg": "", "rc": 0, "start": "2025-12-17 22:20:16.976356", "stderr": "", "stderr_lines": [], "stdout": "52.0°C", "stdout_lines": ["52.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002421", "end": "2025-12-17 22:19:50.591637", "msg": "", "rc": 0, "start": "2025-12-17 22:19:50.589216", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003282", "end": "2025-12-17 22:19:44.087549", "msg": "", "rc": 0, "start": "2025-12-17 22:19:44.084267", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011901", "end": "2025-12-17 22:20:17.602472", "msg": "", "rc": 0, "start": "2025-12-17 22:20:17.590571", "stderr": "", "stderr_lines": [], "stdout": "31.2°C", "stdout_lines": ["31.2°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013145", "end": "2025-12-17 22:20:17.666599", "msg": "", "rc": 0, "start": "2025-12-17 22:20:17.653454", "stderr": "", "stderr_lines": [], "stdout": "35.5°C", "stdout_lines": ["35.5°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003207", "end": "2025-12-17 22:20:17.873865", "msg": "", "rc": 0, "start": "2025-12-17 22:20:17.870658", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004000", "end": "2025-12-17 19:20:18.126241", "msg": "", "rc": 0, "start": "2025-12-17 19:20:18.122241", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002924", "end": "2025-12-17 22:19:53.912821", "msg": "", "rc": 0, "start": "2025-12-17 22:19:53.909897", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003040", "end": "2025-12-17 22:19:47.290794", "msg": "", "rc": 0, "start": "2025-12-17 22:19:47.287754", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002913", "end": "2025-12-17 22:20:18.294357", "msg": "", "rc": 0, "start": "2025-12-17 22:20:18.291444", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004369", "end": "2025-12-17 22:20:18.686136", "msg": "", "rc": 0, "start": "2025-12-17 22:20:18.681767", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028486", "end": "2025-12-17 22:20:18.293529", "msg": "", "rc": 0, "start": "2025-12-17 22:20:18.265043", "stderr": "", "stderr_lines": [], "stdout": "34.1°C", "stdout_lines": ["34.1°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004244", "end": "2025-12-17 22:20:18.806208", "msg": "", "rc": 0, "start": "2025-12-17 22:20:18.801964", "stderr": "", "stderr_lines": [], "stdout": "0.28", "stdout_lines": ["0.28"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004084", "end": "2025-12-17 22:20:18.827574", "msg": "", "rc": 0, "start": "2025-12-17 22:20:18.823490", "stderr": "", "stderr_lines": [], "stdout": "0.25", "stdout_lines": ["0.25"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004878", "end": "2025-12-17 22:20:18.829944", "msg": "", "rc": 0, "start": "2025-12-17 22:20:18.825066", "stderr": "", "stderr_lines": [], "stdout": "0.81", "stdout_lines": ["0.81"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005407", "end": "2025-12-17 22:20:18.867361", "msg": "", "rc": 0, "start": "2025-12-17 22:20:18.861954", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005483", "end": "2025-12-17 22:20:18.891293", "msg": "", "rc": 0, "start": "2025-12-17 22:20:18.885810", "stderr": "", "stderr_lines": [], "stdout": "0.68", "stdout_lines": ["0.68"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004505", "end": "2025-12-17 22:19:52.487601", "msg": "", "rc": 0, "start": "2025-12-17 22:19:52.483096", "stderr": "", "stderr_lines": [], "stdout": "0.27", "stdout_lines": ["0.27"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005188", "end": "2025-12-17 22:19:45.965074", "msg": "", "rc": 0, "start": "2025-12-17 22:19:45.959886", "stderr": "", "stderr_lines": [], "stdout": "0.34", "stdout_lines": ["0.34"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010772", "end": "2025-12-17 22:20:19.579374", "msg": "", "rc": 0, "start": "2025-12-17 22:20:19.568602", "stderr": "", "stderr_lines": [], "stdout": "0.68", "stdout_lines": ["0.68"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011109", "end": "2025-12-17 22:20:19.636337", "msg": "", "rc": 0, "start": "2025-12-17 22:20:19.625228", "stderr": "", "stderr_lines": [], "stdout": "0.39", "stdout_lines": ["0.39"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005791", "end": "2025-12-17 22:20:19.772363", "msg": "", "rc": 0, "start": "2025-12-17 22:20:19.766572", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005079", "end": "2025-12-17 22:19:49.162741", "msg": "", "rc": 0, "start": "2025-12-17 22:19:49.157662", "stderr": "", "stderr_lines": [], "stdout": "2.08", "stdout_lines": ["2.08"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004617", "end": "2025-12-17 22:19:55.870472", "msg": "", "rc": 0, "start": "2025-12-17 22:19:55.865855", "stderr": "", "stderr_lines": [], "stdout": "0.33", "stdout_lines": ["0.33"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006007", "end": "2025-12-17 19:20:20.110386", "msg": "", "rc": 0, "start": "2025-12-17 19:20:20.104379", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005488", "end": "2025-12-17 22:20:20.193108", "msg": "", "rc": 0, "start": "2025-12-17 22:20:20.187620", "stderr": "", "stderr_lines": [], "stdout": "0.07", "stdout_lines": ["0.07"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.008395", "end": "2025-12-17 22:20:20.608202", "msg": "", "rc": 0, "start": "2025-12-17 22:20:20.599807", "stderr": "", "stderr_lines": [], "stdout": "1.26", "stdout_lines": ["1.26"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.025001", "end": "2025-12-17 22:20:20.178880", "msg": "", "rc": 0, "start": "2025-12-17 22:20:20.153879", "stderr": "", "stderr_lines": [], "stdout": "0.20", "stdout_lines": ["0.20"]} + +TASK [Display health status] *************************************************** +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:20:11 up 22 days, 9:11, 1 user, load average: 0.33, 0.43, 0.43\nDisk Usage: 23%\nMemory Usage: 78.2%\nCPU Load: 0.28\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:20:11 up 3 days, 11:52, 3 users, load average: 0.27, 0.28, 0.29\nDisk Usage: 22%\nMemory Usage: 22.7%\nCPU Load: 0.25\nCPU Temp: 45.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:20:11 up 22 days, 9:31, 1 user, load average: 0.70, 0.68, 0.66\nDisk Usage: 14%\nMemory Usage: 49.1%\nCPU Load: 0.81\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:20:11 up 22 days, 10:44, 1 user, load average: 0.65, 0.73, 0.69\nDisk Usage: 14%\nMemory Usage: 59.7%\nCPU Load: 0.68\nCPU Temp: 52.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:20:11 up 22 days, 11:30, 1 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:20:12 up 15 days, 11:46, 1 user, load average: 0.14, 0.12, 0.09\nDisk Usage: 21%\nMemory Usage: 20.4%\nCPU Load: 0.20\nCPU Temp: 34.1°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:20:11 up 194 days, 13:53, 1 user, load average: 0.46, 0.22, 0.19\nDisk Usage: 6%\nMemory Usage: 13.1%\nCPU Load: 0.39\nCPU Temp: 35.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:20:11 up 194 days, 13:53, 1 user, load average: 0.34, 0.16, 0.11\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.68\nCPU Temp: 31.2°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:19:44 up 11 days, 10:09, 0 user, load average: 0.21, 0.18, 0.18\nDisk Usage: 48%\nMemory Usage: 70.5%\nCPU Load: 0.27\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:19:38 up 18 days, 6:21, 0 user, load average: 0.37, 0.16, 0.04\nDisk Usage: 25%\nMemory Usage: 68.3%\nCPU Load: 0.34\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:20:12 up 3 days, 11:51, 1 user, load average: 0.00, 0.02, 0.00\nDisk Usage: 1%\nMemory Usage: 35.6%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:19:41 up 21 days, 1:13, 0 user, load average: 1.99, 0.89, 0.60\nDisk Usage: 28%\nMemory Usage: 27.6%\nCPU Load: 2.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:19:48 up 17 days, 11:35, 0 user, load average: 0.30, 0.27, 0.22\nDisk Usage: 76%\nMemory Usage: 50.7%\nCPU Load: 0.33\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 7:20PM up 22 days, 9:09, 1 user, load averages: 0.32, 0.27, 0.20\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:20:12 up 3 days, 11:51, 1 user, load average: 0.00, 0.04, 0.01\nDisk Usage: 79%\nMemory Usage: 13.9%\nCPU Load: 0.07\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:20:12 up 2:28, 1 user, load average: 1.20, 1.14, 1.15\nDisk Usage: 1%\nMemory Usage: 13.1%\nCPU Load: 1.26\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T03:20:21.416396+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_032521_77e533_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_032521_77e533_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..ca15d9c --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_032521_77e533_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `247247b3137d4bb59dc38cda843355e7` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T03:25:00.001274+00:00 | +| **Fin** | 2025-12-18T03:25:21.821959+00:00 | +| **Durée** | 21.8s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.4gb.home] +ok: [raspi.8gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003326", "end": "2025-12-17 22:25:11.727602", "msg": "", "rc": 0, "start": "2025-12-17 22:25:11.724276", "stderr": "", "stderr_lines": [], "stdout": " 22:25:11 up 22 days, 9:16, 1 user, load average: 0.44, 0.41, 0.42", "stdout_lines": [" 22:25:11 up 22 days, 9:16, 1 user, load average: 0.44, 0.41, 0.42"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003201", "end": "2025-12-17 22:25:11.734354", "msg": "", "rc": 0, "start": "2025-12-17 22:25:11.731153", "stderr": "", "stderr_lines": [], "stdout": " 22:25:11 up 22 days, 9:36, 1 user, load average: 0.40, 0.64, 0.66", "stdout_lines": [" 22:25:11 up 22 days, 9:36, 1 user, load average: 0.40, 0.64, 0.66"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004211", "end": "2025-12-17 22:25:11.740607", "msg": "", "rc": 0, "start": "2025-12-17 22:25:11.736396", "stderr": "", "stderr_lines": [], "stdout": " 22:25:11 up 22 days, 11:35, 1 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 22:25:11 up 22 days, 11:35, 1 user, load average: 0.00, 0.00, 0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003935", "end": "2025-12-17 22:25:11.756035", "msg": "", "rc": 0, "start": "2025-12-17 22:25:11.752100", "stderr": "", "stderr_lines": [], "stdout": " 22:25:11 up 22 days, 10:49, 1 user, load average: 0.61, 0.65, 0.67", "stdout_lines": [" 22:25:11 up 22 days, 10:49, 1 user, load average: 0.61, 0.65, 0.67"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002986", "end": "2025-12-17 22:25:11.769682", "msg": "", "rc": 0, "start": "2025-12-17 22:25:11.766696", "stderr": "", "stderr_lines": [], "stdout": " 22:25:11 up 3 days, 11:57, 3 users, load average: 0.29, 0.21, 0.25", "stdout_lines": [" 22:25:11 up 3 days, 11:57, 3 users, load average: 0.29, 0.21, 0.25"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002850", "end": "2025-12-17 22:24:45.386886", "msg": "", "rc": 0, "start": "2025-12-17 22:24:45.384036", "stderr": "", "stderr_lines": [], "stdout": " 22:24:45 up 11 days, 10:14, 0 user, load average: 0.08, 0.14, 0.16", "stdout_lines": [" 22:24:45 up 11 days, 10:14, 0 user, load average: 0.08, 0.14, 0.16"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003209", "end": "2025-12-17 22:24:38.822939", "msg": "", "rc": 0, "start": "2025-12-17 22:24:38.819730", "stderr": "", "stderr_lines": [], "stdout": " 22:24:38 up 18 days, 6:26, 0 user, load average: 0.14, 0.14, 0.06", "stdout_lines": [" 22:24:38 up 18 days, 6:26, 0 user, load average: 0.14, 0.14, 0.06"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008341", "end": "2025-12-17 22:25:12.405886", "msg": "", "rc": 0, "start": "2025-12-17 22:25:12.397545", "stderr": "", "stderr_lines": [], "stdout": " 22:25:12 up 194 days, 13:58, 1 user, load average: 0.27, 0.18, 0.12", "stdout_lines": [" 22:25:12 up 194 days, 13:58, 1 user, load average: 0.27, 0.18, 0.12"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009324", "end": "2025-12-17 22:25:12.463045", "msg": "", "rc": 0, "start": "2025-12-17 22:25:12.453721", "stderr": "", "stderr_lines": [], "stdout": " 22:25:12 up 194 days, 13:58, 1 user, load average: 0.37, 0.25, 0.20", "stdout_lines": [" 22:25:12 up 194 days, 13:58, 1 user, load average: 0.37, 0.25, 0.20"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004786", "end": "2025-12-17 22:25:12.687612", "msg": "", "rc": 0, "start": "2025-12-17 22:25:12.682826", "stderr": "", "stderr_lines": [], "stdout": " 22:25:12 up 3 days, 11:56, 1 user, load average: 0.09, 0.04, 0.01", "stdout_lines": [" 22:25:12 up 3 days, 11:56, 1 user, load average: 0.09, 0.04, 0.01"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003602", "end": "2025-12-17 22:24:42.003639", "msg": "", "rc": 0, "start": "2025-12-17 22:24:42.000037", "stderr": "", "stderr_lines": [], "stdout": " 22:24:42 up 21 days, 1:18, 0 user, load average: 0.59, 0.77, 0.63", "stdout_lines": [" 22:24:42 up 21 days, 1:18, 0 user, load average: 0.59, 0.77, 0.63"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003326", "end": "2025-12-17 22:24:48.689166", "msg": "", "rc": 0, "start": "2025-12-17 22:24:48.685840", "stderr": "", "stderr_lines": [], "stdout": " 22:24:48 up 17 days, 11:40, 0 user, load average: 0.33, 0.29, 0.24", "stdout_lines": [" 22:24:48 up 17 days, 11:40, 0 user, load average: 0.33, 0.29, 0.24"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004175", "end": "2025-12-17 19:25:12.929049", "msg": "", "rc": 0, "start": "2025-12-17 19:25:12.924874", "stderr": "", "stderr_lines": [], "stdout": " 7:25PM up 22 days, 9:15, 1 user, load averages: 0.34, 0.26, 0.20", "stdout_lines": [" 7:25PM up 22 days, 9:15, 1 user, load averages: 0.34, 0.26, 0.20"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003748", "end": "2025-12-17 22:25:13.111179", "msg": "", "rc": 0, "start": "2025-12-17 22:25:13.107431", "stderr": "", "stderr_lines": [], "stdout": " 22:25:13 up 3 days, 11:56, 1 user, load average: 0.00, 0.01, 0.00", "stdout_lines": [" 22:25:13 up 3 days, 11:56, 1 user, load average: 0.00, 0.01, 0.00"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008223", "end": "2025-12-17 22:25:13.629438", "msg": "", "rc": 0, "start": "2025-12-17 22:25:13.621215", "stderr": "", "stderr_lines": [], "stdout": " 22:25:13 up 2:33, 1 user, load average: 1.17, 1.12, 1.14", "stdout_lines": [" 22:25:13 up 2:33, 1 user, load average: 1.17, 1.12, 1.14"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019392", "end": "2025-12-17 22:25:13.115885", "msg": "", "rc": 0, "start": "2025-12-17 22:25:13.096493", "stderr": "", "stderr_lines": [], "stdout": " 22:25:13 up 15 days, 11:51, 1 user, load average: 0.22, 0.13, 0.10", "stdout_lines": [" 22:25:13 up 15 days, 11:51, 1 user, load average: 0.22, 0.13, 0.10"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004262", "end": "2025-12-17 22:25:13.658387", "msg": "", "rc": 0, "start": "2025-12-17 22:25:13.654125", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004770", "end": "2025-12-17 22:25:13.680800", "msg": "", "rc": 0, "start": "2025-12-17 22:25:13.676030", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004097", "end": "2025-12-17 22:25:13.688059", "msg": "", "rc": 0, "start": "2025-12-17 22:25:13.683962", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005863", "end": "2025-12-17 22:25:13.708105", "msg": "", "rc": 0, "start": "2025-12-17 22:25:13.702242", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005073", "end": "2025-12-17 22:25:13.712987", "msg": "", "rc": 0, "start": "2025-12-17 22:25:13.707914", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005628", "end": "2025-12-17 22:24:47.339693", "msg": "", "rc": 0, "start": "2025-12-17 22:24:47.334065", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005472", "end": "2025-12-17 22:24:40.757297", "msg": "", "rc": 0, "start": "2025-12-17 22:24:40.751825", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010582", "end": "2025-12-17 22:25:14.411936", "msg": "", "rc": 0, "start": "2025-12-17 22:25:14.401354", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011727", "end": "2025-12-17 22:25:14.490202", "msg": "", "rc": 0, "start": "2025-12-17 22:25:14.478475", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005632", "end": "2025-12-17 22:25:14.642849", "msg": "", "rc": 0, "start": "2025-12-17 22:25:14.637217", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005514", "end": "2025-12-17 22:24:43.923913", "msg": "", "rc": 0, "start": "2025-12-17 22:24:43.918399", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004719", "end": "2025-12-17 22:24:50.693126", "msg": "", "rc": 0, "start": "2025-12-17 22:24:50.688407", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005312", "end": "2025-12-17 19:25:14.963737", "msg": "", "rc": 0, "start": "2025-12-17 19:25:14.958425", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005423", "end": "2025-12-17 22:25:15.074442", "msg": "", "rc": 0, "start": "2025-12-17 22:25:15.069019", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.021072", "end": "2025-12-17 22:25:15.564453", "msg": "", "rc": 0, "start": "2025-12-17 22:25:15.543381", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025270", "end": "2025-12-17 22:25:15.047976", "msg": "", "rc": 0, "start": "2025-12-17 22:25:15.022706", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004213", "end": "2025-12-17 22:25:15.573800", "msg": "", "rc": 0, "start": "2025-12-17 22:25:15.569587", "stderr": "", "stderr_lines": [], "stdout": "78.5%", "stdout_lines": ["78.5%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004311", "end": "2025-12-17 22:25:15.594691", "msg": "", "rc": 0, "start": "2025-12-17 22:25:15.590380", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004743", "end": "2025-12-17 22:25:15.595474", "msg": "", "rc": 0, "start": "2025-12-17 22:25:15.590731", "stderr": "", "stderr_lines": [], "stdout": "49.1%", "stdout_lines": ["49.1%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005059", "end": "2025-12-17 22:25:15.621800", "msg": "", "rc": 0, "start": "2025-12-17 22:25:15.616741", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005669", "end": "2025-12-17 22:25:15.626518", "msg": "", "rc": 0, "start": "2025-12-17 22:25:15.620849", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003789", "end": "2025-12-17 22:24:49.283637", "msg": "", "rc": 0, "start": "2025-12-17 22:24:49.279848", "stderr": "", "stderr_lines": [], "stdout": "70.5%", "stdout_lines": ["70.5%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004469", "end": "2025-12-17 22:24:42.699491", "msg": "", "rc": 0, "start": "2025-12-17 22:24:42.695022", "stderr": "", "stderr_lines": [], "stdout": "68.4%", "stdout_lines": ["68.4%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010899", "end": "2025-12-17 22:25:16.270718", "msg": "", "rc": 0, "start": "2025-12-17 22:25:16.259819", "stderr": "", "stderr_lines": [], "stdout": "6.7%", "stdout_lines": ["6.7%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012016", "end": "2025-12-17 22:25:16.312055", "msg": "", "rc": 0, "start": "2025-12-17 22:25:16.300039", "stderr": "", "stderr_lines": [], "stdout": "12.7%", "stdout_lines": ["12.7%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005926", "end": "2025-12-17 22:25:16.585433", "msg": "", "rc": 0, "start": "2025-12-17 22:25:16.579507", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004397", "end": "2025-12-17 22:24:45.863653", "msg": "", "rc": 0, "start": "2025-12-17 22:24:45.859256", "stderr": "", "stderr_lines": [], "stdout": "27.7%", "stdout_lines": ["27.7%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005076", "end": "2025-12-17 19:25:16.769039", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 19:25:16.763963", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003691", "end": "2025-12-17 22:24:52.564111", "msg": "", "rc": 0, "start": "2025-12-17 22:24:52.560420", "stderr": "", "stderr_lines": [], "stdout": "49.7%", "stdout_lines": ["49.7%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005317", "end": "2025-12-17 22:25:17.020846", "msg": "", "rc": 0, "start": "2025-12-17 22:25:17.015529", "stderr": "", "stderr_lines": [], "stdout": "13.9%", "stdout_lines": ["13.9%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.009271", "end": "2025-12-17 22:25:17.515475", "msg": "", "rc": 0, "start": "2025-12-17 22:25:17.506204", "stderr": "", "stderr_lines": [], "stdout": "13.1%", "stdout_lines": ["13.1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025505", "end": "2025-12-17 22:25:16.964814", "msg": "", "rc": 0, "start": "2025-12-17 22:25:16.939309", "stderr": "", "stderr_lines": [], "stdout": "20.7%", "stdout_lines": ["20.7%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005787", "end": "2025-12-17 22:25:17.494229", "msg": "", "rc": 0, "start": "2025-12-17 22:25:17.488442", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004959", "end": "2025-12-17 22:25:17.501026", "msg": "", "rc": 0, "start": "2025-12-17 22:25:17.496067", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005847", "end": "2025-12-17 22:25:17.518085", "msg": "", "rc": 0, "start": "2025-12-17 22:25:17.512238", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002859", "end": "2025-12-17 22:25:17.529229", "msg": "", "rc": 0, "start": "2025-12-17 22:25:17.526370", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006254", "end": "2025-12-17 22:25:17.547396", "msg": "", "rc": 0, "start": "2025-12-17 22:25:17.541142", "stderr": "", "stderr_lines": [], "stdout": "51.5°C", "stdout_lines": ["51.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002869", "end": "2025-12-17 22:24:51.179371", "msg": "", "rc": 0, "start": "2025-12-17 22:24:51.176502", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002905", "end": "2025-12-17 22:24:44.619339", "msg": "", "rc": 0, "start": "2025-12-17 22:24:44.616434", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011942", "end": "2025-12-17 22:25:18.213408", "msg": "", "rc": 0, "start": "2025-12-17 22:25:18.201466", "stderr": "", "stderr_lines": [], "stdout": "31.2°C", "stdout_lines": ["31.2°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012967", "end": "2025-12-17 22:25:18.261651", "msg": "", "rc": 0, "start": "2025-12-17 22:25:18.248684", "stderr": "", "stderr_lines": [], "stdout": "35.0°C", "stdout_lines": ["35.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003146", "end": "2025-12-17 22:25:18.482293", "msg": "", "rc": 0, "start": "2025-12-17 22:25:18.479147", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003029", "end": "2025-12-17 22:24:47.853341", "msg": "", "rc": 0, "start": "2025-12-17 22:24:47.850312", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003864", "end": "2025-12-17 19:25:18.757460", "msg": "", "rc": 0, "start": "2025-12-17 19:25:18.753596", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003182", "end": "2025-12-17 22:24:54.546882", "msg": "", "rc": 0, "start": "2025-12-17 22:24:54.543700", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002863", "end": "2025-12-17 22:25:18.903152", "msg": "", "rc": 0, "start": "2025-12-17 22:25:18.900289", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005204", "end": "2025-12-17 22:25:19.529716", "msg": "", "rc": 0, "start": "2025-12-17 22:25:19.524512", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028688", "end": "2025-12-17 22:25:18.919552", "msg": "", "rc": 0, "start": "2025-12-17 22:25:18.890864", "stderr": "", "stderr_lines": [], "stdout": "34.4°C", "stdout_lines": ["34.4°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004498", "end": "2025-12-17 22:25:19.468296", "msg": "", "rc": 0, "start": "2025-12-17 22:25:19.463798", "stderr": "", "stderr_lines": [], "stdout": "0.44", "stdout_lines": ["0.44"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004151", "end": "2025-12-17 22:25:19.473280", "msg": "", "rc": 0, "start": "2025-12-17 22:25:19.469129", "stderr": "", "stderr_lines": [], "stdout": "0.43", "stdout_lines": ["0.43"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005255", "end": "2025-12-17 22:25:19.509198", "msg": "", "rc": 0, "start": "2025-12-17 22:25:19.503943", "stderr": "", "stderr_lines": [], "stdout": "0.45", "stdout_lines": ["0.45"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005113", "end": "2025-12-17 22:25:19.514220", "msg": "", "rc": 0, "start": "2025-12-17 22:25:19.509107", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005669", "end": "2025-12-17 22:25:19.547774", "msg": "", "rc": 0, "start": "2025-12-17 22:25:19.542105", "stderr": "", "stderr_lines": [], "stdout": "0.56", "stdout_lines": ["0.56"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004192", "end": "2025-12-17 22:24:53.143935", "msg": "", "rc": 0, "start": "2025-12-17 22:24:53.139743", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005345", "end": "2025-12-17 22:24:46.623762", "msg": "", "rc": 0, "start": "2025-12-17 22:24:46.618417", "stderr": "", "stderr_lines": [], "stdout": "0.20", "stdout_lines": ["0.20"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010433", "end": "2025-12-17 22:25:20.258164", "msg": "", "rc": 0, "start": "2025-12-17 22:25:20.247731", "stderr": "", "stderr_lines": [], "stdout": "0.23", "stdout_lines": ["0.23"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011395", "end": "2025-12-17 22:25:20.272458", "msg": "", "rc": 0, "start": "2025-12-17 22:25:20.261063", "stderr": "", "stderr_lines": [], "stdout": "0.40", "stdout_lines": ["0.40"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005624", "end": "2025-12-17 22:25:20.456912", "msg": "", "rc": 0, "start": "2025-12-17 22:25:20.451288", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004984", "end": "2025-12-17 22:24:49.824178", "msg": "", "rc": 0, "start": "2025-12-17 22:24:49.819194", "stderr": "", "stderr_lines": [], "stdout": "0.66", "stdout_lines": ["0.66"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005795", "end": "2025-12-17 19:25:20.752870", "msg": "", "rc": 0, "start": "2025-12-17 19:25:20.747075", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004403", "end": "2025-12-17 22:24:56.551696", "msg": "", "rc": 0, "start": "2025-12-17 22:24:56.547293", "stderr": "", "stderr_lines": [], "stdout": "0.28", "stdout_lines": ["0.28"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005303", "end": "2025-12-17 22:25:20.897017", "msg": "", "rc": 0, "start": "2025-12-17 22:25:20.891714", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024334", "end": "2025-12-17 22:25:20.848549", "msg": "", "rc": 0, "start": "2025-12-17 22:25:20.824215", "stderr": "", "stderr_lines": [], "stdout": "0.26", "stdout_lines": ["0.26"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.008339", "end": "2025-12-17 22:25:21.043330", "msg": "", "rc": 0, "start": "2025-12-17 22:25:21.034991", "stderr": "", "stderr_lines": [], "stdout": "1.16", "stdout_lines": ["1.16"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:25:11 up 3 days, 11:57, 3 users, load average: 0.29, 0.21, 0.25\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.43\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:25:11 up 22 days, 9:36, 1 user, load average: 0.40, 0.64, 0.66\nDisk Usage: 14%\nMemory Usage: 49.1%\nCPU Load: 0.45\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:25:11 up 22 days, 9:16, 1 user, load average: 0.44, 0.41, 0.42\nDisk Usage: 23%\nMemory Usage: 78.5%\nCPU Load: 0.44\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:25:11 up 22 days, 10:49, 1 user, load average: 0.61, 0.65, 0.67\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.56\nCPU Temp: 51.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:25:11 up 22 days, 11:35, 1 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:25:13 up 15 days, 11:51, 1 user, load average: 0.22, 0.13, 0.10\nDisk Usage: 21%\nMemory Usage: 20.7%\nCPU Load: 0.26\nCPU Temp: 34.4°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:25:12 up 194 days, 13:58, 1 user, load average: 0.37, 0.25, 0.20\nDisk Usage: 6%\nMemory Usage: 12.7%\nCPU Load: 0.40\nCPU Temp: 35.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:25:12 up 194 days, 13:58, 1 user, load average: 0.27, 0.18, 0.12\nDisk Usage: 3%\nMemory Usage: 6.7%\nCPU Load: 0.23\nCPU Temp: 31.2°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:24:45 up 11 days, 10:14, 0 user, load average: 0.08, 0.14, 0.16\nDisk Usage: 48%\nMemory Usage: 70.5%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:24:38 up 18 days, 6:26, 0 user, load average: 0.14, 0.14, 0.06\nDisk Usage: 25%\nMemory Usage: 68.4%\nCPU Load: 0.20\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:25:12 up 3 days, 11:56, 1 user, load average: 0.09, 0.04, 0.01\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:24:42 up 21 days, 1:18, 0 user, load average: 0.59, 0.77, 0.63\nDisk Usage: 28%\nMemory Usage: 27.7%\nCPU Load: 0.66\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:24:48 up 17 days, 11:40, 0 user, load average: 0.33, 0.29, 0.24\nDisk Usage: 76%\nMemory Usage: 49.7%\nCPU Load: 0.28\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 7:25PM up 22 days, 9:15, 1 user, load averages: 0.34, 0.26, 0.20\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:25:13 up 3 days, 11:56, 1 user, load average: 0.00, 0.01, 0.00\nDisk Usage: 79%\nMemory Usage: 13.9%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:25:13 up 2:33, 1 user, load average: 1.17, 1.12, 1.14\nDisk Usage: 1%\nMemory Usage: 13.1%\nCPU Load: 1.16\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T03:25:21.870639+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_033021_10398b_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_033021_10398b_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..ecee82a --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_033021_10398b_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `4039b2493462413691a714c883c095b1` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T03:30:00.001376+00:00 | +| **Fin** | 2025-12-18T03:30:21.343980+00:00 | +| **Durée** | 21.3s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003917", "end": "2025-12-17 22:30:11.086271", "msg": "", "rc": 0, "start": "2025-12-17 22:30:11.082354", "stderr": "", "stderr_lines": [], "stdout": " 22:30:11 up 22 days, 11:40, 1 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 22:30:11 up 22 days, 11:40, 1 user, load average: 0.00, 0.00, 0.00"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003391", "end": "2025-12-17 22:30:11.080307", "msg": "", "rc": 0, "start": "2025-12-17 22:30:11.076916", "stderr": "", "stderr_lines": [], "stdout": " 22:30:11 up 22 days, 9:41, 1 user, load average: 1.05, 0.85, 0.74", "stdout_lines": [" 22:30:11 up 22 days, 9:41, 1 user, load average: 1.05, 0.85, 0.74"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003785", "end": "2025-12-17 22:30:11.098123", "msg": "", "rc": 0, "start": "2025-12-17 22:30:11.094338", "stderr": "", "stderr_lines": [], "stdout": " 22:30:11 up 22 days, 10:54, 1 user, load average: 0.54, 0.68, 0.68", "stdout_lines": [" 22:30:11 up 22 days, 10:54, 1 user, load average: 0.54, 0.68, 0.68"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003026", "end": "2025-12-17 22:30:11.117643", "msg": "", "rc": 0, "start": "2025-12-17 22:30:11.114617", "stderr": "", "stderr_lines": [], "stdout": " 22:30:11 up 3 days, 12:02, 3 users, load average: 0.11, 0.14, 0.21", "stdout_lines": [" 22:30:11 up 3 days, 12:02, 3 users, load average: 0.11, 0.14, 0.21"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002923", "end": "2025-12-17 22:29:44.723112", "msg": "", "rc": 0, "start": "2025-12-17 22:29:44.720189", "stderr": "", "stderr_lines": [], "stdout": " 22:29:44 up 11 days, 10:19, 0 user, load average: 0.05, 0.09, 0.13", "stdout_lines": [" 22:29:44 up 11 days, 10:19, 0 user, load average: 0.05, 0.09, 0.13"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008378", "end": "2025-12-17 22:30:11.765628", "msg": "", "rc": 0, "start": "2025-12-17 22:30:11.757250", "stderr": "", "stderr_lines": [], "stdout": " 22:30:11 up 194 days, 14:03, 1 user, load average: 0.27, 0.15, 0.11", "stdout_lines": [" 22:30:11 up 194 days, 14:03, 1 user, load average: 0.27, 0.15, 0.11"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.010068", "end": "2025-12-17 22:30:11.793938", "msg": "", "rc": 0, "start": "2025-12-17 22:30:11.783870", "stderr": "", "stderr_lines": [], "stdout": " 22:30:11 up 194 days, 14:03, 1 user, load average: 0.48, 0.25, 0.20", "stdout_lines": [" 22:30:11 up 194 days, 14:03, 1 user, load average: 0.48, 0.25, 0.20"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004204", "end": "2025-12-17 22:30:12.065248", "msg": "", "rc": 0, "start": "2025-12-17 22:30:11.061044", "stderr": "", "stderr_lines": [], "stdout": " 22:30:11 up 22 days, 9:21, 1 user, load average: 0.44, 0.48, 0.45", "stdout_lines": [" 22:30:11 up 22 days, 9:21, 1 user, load average: 0.44, 0.48, 0.45"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003512", "end": "2025-12-17 22:29:38.584414", "msg": "", "rc": 0, "start": "2025-12-17 22:29:38.580902", "stderr": "", "stderr_lines": [], "stdout": " 22:29:38 up 18 days, 6:31, 0 user, load average: 0.14, 0.29, 0.17", "stdout_lines": [" 22:29:38 up 18 days, 6:31, 0 user, load average: 0.14, 0.29, 0.17"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004774", "end": "2025-12-17 22:30:12.271425", "msg": "", "rc": 0, "start": "2025-12-17 22:30:12.266651", "stderr": "", "stderr_lines": [], "stdout": " 22:30:12 up 3 days, 12:01, 1 user, load average: 0.02, 0.02, 0.00", "stdout_lines": [" 22:30:12 up 3 days, 12:01, 1 user, load average: 0.02, 0.02, 0.00"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003229", "end": "2025-12-17 22:29:41.500337", "msg": "", "rc": 0, "start": "2025-12-17 22:29:41.497108", "stderr": "", "stderr_lines": [], "stdout": " 22:29:41 up 21 days, 1:23, 0 user, load average: 0.50, 0.62, 0.61", "stdout_lines": [" 22:29:41 up 21 days, 1:23, 0 user, load average: 0.50, 0.62, 0.61"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004125", "end": "2025-12-17 19:30:12.511376", "msg": "", "rc": 0, "start": "2025-12-17 19:30:12.507251", "stderr": "", "stderr_lines": [], "stdout": " 7:30PM up 22 days, 9:19, 1 user, load averages: 0.33, 0.32, 0.24", "stdout_lines": [" 7:30PM up 22 days, 9:19, 1 user, load averages: 0.33, 0.32, 0.24"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003158", "end": "2025-12-17 22:29:48.308037", "msg": "", "rc": 0, "start": "2025-12-17 22:29:48.304879", "stderr": "", "stderr_lines": [], "stdout": " 22:29:48 up 17 days, 11:45, 0 user, load average: 0.84, 0.58, 0.37", "stdout_lines": [" 22:29:48 up 17 days, 11:45, 0 user, load average: 0.84, 0.58, 0.37"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019580", "end": "2025-12-17 22:30:12.464936", "msg": "", "rc": 0, "start": "2025-12-17 22:30:12.445356", "stderr": "", "stderr_lines": [], "stdout": " 22:30:12 up 15 days, 11:56, 1 user, load average: 0.27, 0.15, 0.10", "stdout_lines": [" 22:30:12 up 15 days, 11:56, 1 user, load average: 0.27, 0.15, 0.10"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003681", "end": "2025-12-17 22:30:12.692530", "msg": "", "rc": 0, "start": "2025-12-17 22:30:12.688849", "stderr": "", "stderr_lines": [], "stdout": " 22:30:12 up 3 days, 12:01, 1 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 22:30:12 up 3 days, 12:01, 1 user, load average: 0.00, 0.00, 0.00"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.007882", "end": "2025-12-17 22:30:12.839941", "msg": "", "rc": 0, "start": "2025-12-17 22:30:12.832059", "stderr": "", "stderr_lines": [], "stdout": " 22:30:12 up 2:38, 1 user, load average: 1.17, 1.12, 1.13", "stdout_lines": [" 22:30:12 up 2:38, 1 user, load average: 1.17, 1.12, 1.13"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004100", "end": "2025-12-17 22:30:13.087440", "msg": "", "rc": 0, "start": "2025-12-17 22:30:13.083340", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004140", "end": "2025-12-17 22:30:13.121024", "msg": "", "rc": 0, "start": "2025-12-17 22:30:13.116884", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004810", "end": "2025-12-17 22:30:13.136531", "msg": "", "rc": 0, "start": "2025-12-17 22:30:13.131721", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004650", "end": "2025-12-17 22:30:13.138793", "msg": "", "rc": 0, "start": "2025-12-17 22:30:13.134143", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005565", "end": "2025-12-17 22:30:13.151041", "msg": "", "rc": 0, "start": "2025-12-17 22:30:13.145476", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005204", "end": "2025-12-17 22:29:46.767484", "msg": "", "rc": 0, "start": "2025-12-17 22:29:46.762280", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005537", "end": "2025-12-17 22:29:40.199646", "msg": "", "rc": 0, "start": "2025-12-17 22:29:40.194109", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010571", "end": "2025-12-17 22:30:13.843683", "msg": "", "rc": 0, "start": "2025-12-17 22:30:13.833112", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011297", "end": "2025-12-17 22:30:13.853851", "msg": "", "rc": 0, "start": "2025-12-17 22:30:13.842554", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005724", "end": "2025-12-17 22:30:14.075047", "msg": "", "rc": 0, "start": "2025-12-17 22:30:14.069323", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005129", "end": "2025-12-17 22:29:43.365276", "msg": "", "rc": 0, "start": "2025-12-17 22:29:43.360147", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005352", "end": "2025-12-17 19:30:14.306993", "msg": "", "rc": 0, "start": "2025-12-17 19:30:14.301641", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005289", "end": "2025-12-17 22:29:50.122439", "msg": "", "rc": 0, "start": "2025-12-17 22:29:50.117150", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005355", "end": "2025-12-17 22:30:14.493704", "msg": "", "rc": 0, "start": "2025-12-17 22:30:14.488349", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.019891", "end": "2025-12-17 22:30:14.714889", "msg": "", "rc": 0, "start": "2025-12-17 22:30:14.694998", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025296", "end": "2025-12-17 22:30:14.472725", "msg": "", "rc": 0, "start": "2025-12-17 22:30:14.447429", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004460", "end": "2025-12-17 22:30:14.990325", "msg": "", "rc": 0, "start": "2025-12-17 22:30:14.985865", "stderr": "", "stderr_lines": [], "stdout": "78.3%", "stdout_lines": ["78.3%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004084", "end": "2025-12-17 22:30:15.019359", "msg": "", "rc": 0, "start": "2025-12-17 22:30:15.015275", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004965", "end": "2025-12-17 22:30:15.029754", "msg": "", "rc": 0, "start": "2025-12-17 22:30:15.024789", "stderr": "", "stderr_lines": [], "stdout": "49.2%", "stdout_lines": ["49.2%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004867", "end": "2025-12-17 22:30:15.040900", "msg": "", "rc": 0, "start": "2025-12-17 22:30:15.036033", "stderr": "", "stderr_lines": [], "stdout": "8.9%", "stdout_lines": ["8.9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005334", "end": "2025-12-17 22:30:15.056219", "msg": "", "rc": 0, "start": "2025-12-17 22:30:15.050885", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003631", "end": "2025-12-17 22:29:48.652143", "msg": "", "rc": 0, "start": "2025-12-17 22:29:48.648512", "stderr": "", "stderr_lines": [], "stdout": "70.6%", "stdout_lines": ["70.6%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004236", "end": "2025-12-17 22:29:42.080360", "msg": "", "rc": 0, "start": "2025-12-17 22:29:42.076124", "stderr": "", "stderr_lines": [], "stdout": "69.2%", "stdout_lines": ["69.2%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010904", "end": "2025-12-17 22:30:15.690343", "msg": "", "rc": 0, "start": "2025-12-17 22:30:15.679439", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012226", "end": "2025-12-17 22:30:15.733692", "msg": "", "rc": 0, "start": "2025-12-17 22:30:15.721466", "stderr": "", "stderr_lines": [], "stdout": "13.1%", "stdout_lines": ["13.1%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005766", "end": "2025-12-17 22:30:15.961636", "msg": "", "rc": 0, "start": "2025-12-17 22:30:15.955870", "stderr": "", "stderr_lines": [], "stdout": "35.6%", "stdout_lines": ["35.6%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004140", "end": "2025-12-17 22:29:45.253272", "msg": "", "rc": 0, "start": "2025-12-17 22:29:45.249132", "stderr": "", "stderr_lines": [], "stdout": "27.3%", "stdout_lines": ["27.3%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004105", "end": "2025-12-17 22:29:51.958301", "msg": "", "rc": 0, "start": "2025-12-17 22:29:51.954196", "stderr": "", "stderr_lines": [], "stdout": "49.5%", "stdout_lines": ["49.5%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005098", "end": "2025-12-17 19:30:16.194545", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 19:30:16.189447", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005435", "end": "2025-12-17 22:30:16.383648", "msg": "", "rc": 0, "start": "2025-12-17 22:30:16.378213", "stderr": "", "stderr_lines": [], "stdout": "14.0%", "stdout_lines": ["14.0%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.009037", "end": "2025-12-17 22:30:16.606302", "msg": "", "rc": 0, "start": "2025-12-17 22:30:16.597265", "stderr": "", "stderr_lines": [], "stdout": "13.2%", "stdout_lines": ["13.2%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025902", "end": "2025-12-17 22:30:16.375852", "msg": "", "rc": 0, "start": "2025-12-17 22:30:16.349950", "stderr": "", "stderr_lines": [], "stdout": "19.6%", "stdout_lines": ["19.6%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005290", "end": "2025-12-17 22:30:16.899787", "msg": "", "rc": 0, "start": "2025-12-17 22:30:16.894497", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004936", "end": "2025-12-17 22:30:16.919890", "msg": "", "rc": 0, "start": "2025-12-17 22:30:16.914954", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003429", "end": "2025-12-17 22:30:16.942852", "msg": "", "rc": 0, "start": "2025-12-17 22:30:16.939423", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005133", "end": "2025-12-17 22:30:16.949707", "msg": "", "rc": 0, "start": "2025-12-17 22:30:16.944574", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006516", "end": "2025-12-17 22:30:16.964483", "msg": "", "rc": 0, "start": "2025-12-17 22:30:16.957967", "stderr": "", "stderr_lines": [], "stdout": "51.5°C", "stdout_lines": ["51.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002716", "end": "2025-12-17 22:29:50.580925", "msg": "", "rc": 0, "start": "2025-12-17 22:29:50.578209", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003028", "end": "2025-12-17 22:29:44.001118", "msg": "", "rc": 0, "start": "2025-12-17 22:29:43.998090", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011895", "end": "2025-12-17 22:30:17.589494", "msg": "", "rc": 0, "start": "2025-12-17 22:30:17.577599", "stderr": "", "stderr_lines": [], "stdout": "29.7°C", "stdout_lines": ["29.7°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013039", "end": "2025-12-17 22:30:17.634392", "msg": "", "rc": 0, "start": "2025-12-17 22:30:17.621353", "stderr": "", "stderr_lines": [], "stdout": "34.6°C", "stdout_lines": ["34.6°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003256", "end": "2025-12-17 22:30:17.876675", "msg": "", "rc": 0, "start": "2025-12-17 22:30:17.873419", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003114", "end": "2025-12-17 22:29:47.184800", "msg": "", "rc": 0, "start": "2025-12-17 22:29:47.181686", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004025", "end": "2025-12-17 19:30:18.097572", "msg": "", "rc": 0, "start": "2025-12-17 19:30:18.093547", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003109", "end": "2025-12-17 22:29:53.901743", "msg": "", "rc": 0, "start": "2025-12-17 22:29:53.898634", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002856", "end": "2025-12-17 22:30:18.289813", "msg": "", "rc": 0, "start": "2025-12-17 22:30:18.286957", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004152", "end": "2025-12-17 22:30:18.596891", "msg": "", "rc": 0, "start": "2025-12-17 22:30:18.592739", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028374", "end": "2025-12-17 22:30:18.281090", "msg": "", "rc": 0, "start": "2025-12-17 22:30:18.252716", "stderr": "", "stderr_lines": [], "stdout": "35.0°C", "stdout_lines": ["35.0°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004036", "end": "2025-12-17 22:30:18.792456", "msg": "", "rc": 0, "start": "2025-12-17 22:30:18.788420", "stderr": "", "stderr_lines": [], "stdout": "0.38", "stdout_lines": ["0.38"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004105", "end": "2025-12-17 22:30:18.818153", "msg": "", "rc": 0, "start": "2025-12-17 22:30:18.814048", "stderr": "", "stderr_lines": [], "stdout": "0.18", "stdout_lines": ["0.18"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004880", "end": "2025-12-17 22:30:18.829286", "msg": "", "rc": 0, "start": "2025-12-17 22:30:18.824406", "stderr": "", "stderr_lines": [], "stdout": "0.89", "stdout_lines": ["0.89"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005137", "end": "2025-12-17 22:30:18.848833", "msg": "", "rc": 0, "start": "2025-12-17 22:30:18.843696", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005549", "end": "2025-12-17 22:30:18.876317", "msg": "", "rc": 0, "start": "2025-12-17 22:30:18.870768", "stderr": "", "stderr_lines": [], "stdout": "0.58", "stdout_lines": ["0.58"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004915", "end": "2025-12-17 22:29:52.470848", "msg": "", "rc": 0, "start": "2025-12-17 22:29:52.465933", "stderr": "", "stderr_lines": [], "stdout": "0.13", "stdout_lines": ["0.13"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004941", "end": "2025-12-17 22:29:45.930517", "msg": "", "rc": 0, "start": "2025-12-17 22:29:45.925576", "stderr": "", "stderr_lines": [], "stdout": "0.13", "stdout_lines": ["0.13"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010217", "end": "2025-12-17 22:30:19.579600", "msg": "", "rc": 0, "start": "2025-12-17 22:30:19.569383", "stderr": "", "stderr_lines": [], "stdout": "0.22", "stdout_lines": ["0.22"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011426", "end": "2025-12-17 22:30:19.602722", "msg": "", "rc": 0, "start": "2025-12-17 22:30:19.591296", "stderr": "", "stderr_lines": [], "stdout": "0.41", "stdout_lines": ["0.41"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005657", "end": "2025-12-17 22:30:19.768136", "msg": "", "rc": 0, "start": "2025-12-17 22:30:19.762479", "stderr": "", "stderr_lines": [], "stdout": "0.02", "stdout_lines": ["0.02"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005502", "end": "2025-12-17 22:29:49.107562", "msg": "", "rc": 0, "start": "2025-12-17 22:29:49.102060", "stderr": "", "stderr_lines": [], "stdout": "0.46", "stdout_lines": ["0.46"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005941", "end": "2025-12-17 19:30:20.054892", "msg": "", "rc": 0, "start": "2025-12-17 19:30:20.048951", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004320", "end": "2025-12-17 22:29:55.856452", "msg": "", "rc": 0, "start": "2025-12-17 22:29:55.852132", "stderr": "", "stderr_lines": [], "stdout": "0.71", "stdout_lines": ["0.71"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005355", "end": "2025-12-17 22:30:20.196357", "msg": "", "rc": 0, "start": "2025-12-17 22:30:20.191002", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.007662", "end": "2025-12-17 22:30:20.534808", "msg": "", "rc": 0, "start": "2025-12-17 22:30:20.527146", "stderr": "", "stderr_lines": [], "stdout": "1.16", "stdout_lines": ["1.16"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.023780", "end": "2025-12-17 22:30:20.177752", "msg": "", "rc": 0, "start": "2025-12-17 22:30:20.153972", "stderr": "", "stderr_lines": [], "stdout": "0.30", "stdout_lines": ["0.30"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:30:11 up 3 days, 12:02, 3 users, load average: 0.11, 0.14, 0.21\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.18\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:30:11 up 22 days, 9:21, 1 user, load average: 0.44, 0.48, 0.45\nDisk Usage: 23%\nMemory Usage: 78.3%\nCPU Load: 0.38\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:30:11 up 22 days, 9:41, 1 user, load average: 1.05, 0.85, 0.74\nDisk Usage: 14%\nMemory Usage: 49.2%\nCPU Load: 0.89\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:30:11 up 22 days, 10:54, 1 user, load average: 0.54, 0.68, 0.68\nDisk Usage: 14%\nMemory Usage: 59.7%\nCPU Load: 0.58\nCPU Temp: 51.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:30:11 up 22 days, 11:40, 1 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 9%\nMemory Usage: 8.9%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:30:12 up 15 days, 11:56, 1 user, load average: 0.27, 0.15, 0.10\nDisk Usage: 21%\nMemory Usage: 19.6%\nCPU Load: 0.30\nCPU Temp: 35.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:30:11 up 194 days, 14:03, 1 user, load average: 0.48, 0.25, 0.20\nDisk Usage: 6%\nMemory Usage: 13.1%\nCPU Load: 0.41\nCPU Temp: 34.6°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:30:11 up 194 days, 14:03, 1 user, load average: 0.27, 0.15, 0.11\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.22\nCPU Temp: 29.7°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:29:44 up 11 days, 10:19, 0 user, load average: 0.05, 0.09, 0.13\nDisk Usage: 48%\nMemory Usage: 70.6%\nCPU Load: 0.13\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:29:38 up 18 days, 6:31, 0 user, load average: 0.14, 0.29, 0.17\nDisk Usage: 25%\nMemory Usage: 69.2%\nCPU Load: 0.13\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:30:12 up 3 days, 12:01, 1 user, load average: 0.02, 0.02, 0.00\nDisk Usage: 1%\nMemory Usage: 35.6%\nCPU Load: 0.02\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:29:41 up 21 days, 1:23, 0 user, load average: 0.50, 0.62, 0.61\nDisk Usage: 28%\nMemory Usage: 27.3%\nCPU Load: 0.46\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:29:48 up 17 days, 11:45, 0 user, load average: 0.84, 0.58, 0.37\nDisk Usage: 76%\nMemory Usage: 49.5%\nCPU Load: 0.71\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 7:30PM up 22 days, 9:19, 1 user, load averages: 0.33, 0.32, 0.24\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:30:12 up 3 days, 12:01, 1 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 79%\nMemory Usage: 14.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:30:12 up 2:38, 1 user, load average: 1.17, 1.12, 1.13\nDisk Usage: 1%\nMemory Usage: 13.2%\nCPU Load: 1.16\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T03:30:21.391723+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_033522_8767f6_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_033522_8767f6_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..a162eea --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_033522_8767f6_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `51e74107ecea4103b4846c160913e596` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T03:35:00.001393+00:00 | +| **Fin** | 2025-12-18T03:35:22.594603+00:00 | +| **Durée** | 22.6s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [dev.prod.home] +ok: [hp.truenas.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003381", "end": "2025-12-17 22:35:11.702764", "msg": "", "rc": 0, "start": "2025-12-17 22:35:11.699383", "stderr": "", "stderr_lines": [], "stdout": " 22:35:11 up 22 days, 9:26, 1 user, load average: 0.53, 0.45, 0.45", "stdout_lines": [" 22:35:11 up 22 days, 9:26, 1 user, load average: 0.53, 0.45, 0.45"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003729", "end": "2025-12-17 22:35:11.716198", "msg": "", "rc": 0, "start": "2025-12-17 22:35:11.712469", "stderr": "", "stderr_lines": [], "stdout": " 22:35:11 up 22 days, 11:45, 1 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 22:35:11 up 22 days, 11:45, 1 user, load average: 0.00, 0.00, 0.00"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003339", "end": "2025-12-17 22:35:11.715343", "msg": "", "rc": 0, "start": "2025-12-17 22:35:11.712004", "stderr": "", "stderr_lines": [], "stdout": " 22:35:11 up 22 days, 9:46, 1 user, load average: 1.23, 0.88, 0.77", "stdout_lines": [" 22:35:11 up 22 days, 9:46, 1 user, load average: 1.23, 0.88, 0.77"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004051", "end": "2025-12-17 22:35:11.733632", "msg": "", "rc": 0, "start": "2025-12-17 22:35:11.729581", "stderr": "", "stderr_lines": [], "stdout": " 22:35:11 up 22 days, 10:59, 1 user, load average: 0.94, 0.71, 0.69", "stdout_lines": [" 22:35:11 up 22 days, 10:59, 1 user, load average: 0.94, 0.71, 0.69"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002838", "end": "2025-12-17 22:35:11.748137", "msg": "", "rc": 0, "start": "2025-12-17 22:35:11.745299", "stderr": "", "stderr_lines": [], "stdout": " 22:35:11 up 3 days, 12:07, 3 users, load average: 0.28, 0.23, 0.22", "stdout_lines": [" 22:35:11 up 3 days, 12:07, 3 users, load average: 0.28, 0.23, 0.22"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002810", "end": "2025-12-17 22:34:45.335819", "msg": "", "rc": 0, "start": "2025-12-17 22:34:45.333009", "stderr": "", "stderr_lines": [], "stdout": " 22:34:45 up 11 days, 10:24, 0 user, load average: 0.02, 0.07, 0.10", "stdout_lines": [" 22:34:45 up 11 days, 10:24, 0 user, load average: 0.02, 0.07, 0.10"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003282", "end": "2025-12-17 22:34:38.774204", "msg": "", "rc": 0, "start": "2025-12-17 22:34:38.770922", "stderr": "", "stderr_lines": [], "stdout": " 22:34:38 up 18 days, 6:36, 0 user, load average: 0.09, 0.14, 0.13", "stdout_lines": [" 22:34:38 up 18 days, 6:36, 0 user, load average: 0.09, 0.14, 0.13"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008425", "end": "2025-12-17 22:35:12.376743", "msg": "", "rc": 0, "start": "2025-12-17 22:35:12.368318", "stderr": "", "stderr_lines": [], "stdout": " 22:35:12 up 194 days, 14:08, 1 user, load average: 0.16, 0.12, 0.09", "stdout_lines": [" 22:35:12 up 194 days, 14:08, 1 user, load average: 0.16, 0.12, 0.09"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009289", "end": "2025-12-17 22:35:12.417453", "msg": "", "rc": 0, "start": "2025-12-17 22:35:12.408164", "stderr": "", "stderr_lines": [], "stdout": " 22:35:12 up 194 days, 14:08, 1 user, load average: 0.29, 0.22, 0.19", "stdout_lines": [" 22:35:12 up 194 days, 14:08, 1 user, load average: 0.29, 0.22, 0.19"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004744", "end": "2025-12-17 22:35:12.647525", "msg": "", "rc": 0, "start": "2025-12-17 22:35:12.642781", "stderr": "", "stderr_lines": [], "stdout": " 22:35:12 up 3 days, 12:06, 1 user, load average: 0.07, 0.05, 0.01", "stdout_lines": [" 22:35:12 up 3 days, 12:06, 1 user, load average: 0.07, 0.05, 0.01"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003354", "end": "2025-12-17 22:34:41.952859", "msg": "", "rc": 0, "start": "2025-12-17 22:34:41.949505", "stderr": "", "stderr_lines": [], "stdout": " 22:34:41 up 21 days, 1:28, 0 user, load average: 0.53, 0.58, 0.61", "stdout_lines": [" 22:34:41 up 21 days, 1:28, 0 user, load average: 0.53, 0.58, 0.61"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004128", "end": "2025-12-17 19:35:12.878373", "msg": "", "rc": 0, "start": "2025-12-17 19:35:12.874245", "stderr": "", "stderr_lines": [], "stdout": " 7:35PM up 22 days, 9:25, 1 user, load averages: 0.48, 0.34, 0.27", "stdout_lines": [" 7:35PM up 22 days, 9:25, 1 user, load averages: 0.48, 0.34, 0.27"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003026", "end": "2025-12-17 22:34:48.649883", "msg": "", "rc": 0, "start": "2025-12-17 22:34:48.646857", "stderr": "", "stderr_lines": [], "stdout": " 22:34:48 up 17 days, 11:50, 0 user, load average: 0.83, 0.66, 0.45", "stdout_lines": [" 22:34:48 up 17 days, 11:50, 0 user, load average: 0.83, 0.66, 0.45"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008513", "end": "2025-12-17 22:35:13.503015", "msg": "", "rc": 0, "start": "2025-12-17 22:35:13.494502", "stderr": "", "stderr_lines": [], "stdout": " 22:35:13 up 2:43, 1 user, load average: 1.43, 1.18, 1.13", "stdout_lines": [" 22:35:13 up 2:43, 1 user, load average: 1.43, 1.18, 1.13"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019429", "end": "2025-12-17 22:35:13.079459", "msg": "", "rc": 0, "start": "2025-12-17 22:35:13.060030", "stderr": "", "stderr_lines": [], "stdout": " 22:35:13 up 15 days, 12:01, 1 user, load average: 0.28, 0.16, 0.10", "stdout_lines": [" 22:35:13 up 15 days, 12:01, 1 user, load average: 0.28, 0.16, 0.10"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.005004", "end": "2025-12-17 22:35:14.069200", "msg": "", "rc": 0, "start": "2025-12-17 22:35:13.064196", "stderr": "", "stderr_lines": [], "stdout": " 22:35:13 up 3 days, 12:06, 1 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 22:35:13 up 3 days, 12:06, 1 user, load average: 0.00, 0.00, 0.00"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004148", "end": "2025-12-17 22:35:14.478862", "msg": "", "rc": 0, "start": "2025-12-17 22:35:14.474714", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004308", "end": "2025-12-17 22:35:14.507897", "msg": "", "rc": 0, "start": "2025-12-17 22:35:14.503589", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004844", "end": "2025-12-17 22:35:14.528436", "msg": "", "rc": 0, "start": "2025-12-17 22:35:14.523592", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004710", "end": "2025-12-17 22:35:14.533350", "msg": "", "rc": 0, "start": "2025-12-17 22:35:14.528640", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006274", "end": "2025-12-17 22:35:14.543733", "msg": "", "rc": 0, "start": "2025-12-17 22:35:14.537459", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005074", "end": "2025-12-17 22:34:48.166306", "msg": "", "rc": 0, "start": "2025-12-17 22:34:48.161232", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005270", "end": "2025-12-17 22:34:41.581950", "msg": "", "rc": 0, "start": "2025-12-17 22:34:41.576680", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010506", "end": "2025-12-17 22:35:15.289346", "msg": "", "rc": 0, "start": "2025-12-17 22:35:15.278840", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011365", "end": "2025-12-17 22:35:15.329345", "msg": "", "rc": 0, "start": "2025-12-17 22:35:15.317980", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005849", "end": "2025-12-17 22:35:15.481609", "msg": "", "rc": 0, "start": "2025-12-17 22:35:15.475760", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005321", "end": "2025-12-17 22:34:44.757560", "msg": "", "rc": 0, "start": "2025-12-17 22:34:44.752239", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005403", "end": "2025-12-17 19:35:15.794452", "msg": "", "rc": 0, "start": "2025-12-17 19:35:15.789049", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005045", "end": "2025-12-17 22:34:51.579862", "msg": "", "rc": 0, "start": "2025-12-17 22:34:51.574817", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005423", "end": "2025-12-17 22:35:15.915569", "msg": "", "rc": 0, "start": "2025-12-17 22:35:15.910146", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.019067", "end": "2025-12-17 22:35:16.356067", "msg": "", "rc": 0, "start": "2025-12-17 22:35:16.337000", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025517", "end": "2025-12-17 22:35:15.927514", "msg": "", "rc": 0, "start": "2025-12-17 22:35:15.901997", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004490", "end": "2025-12-17 22:35:16.462936", "msg": "", "rc": 0, "start": "2025-12-17 22:35:16.458446", "stderr": "", "stderr_lines": [], "stdout": "78.4%", "stdout_lines": ["78.4%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004125", "end": "2025-12-17 22:35:16.486320", "msg": "", "rc": 0, "start": "2025-12-17 22:35:16.482195", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005314", "end": "2025-12-17 22:35:16.509077", "msg": "", "rc": 0, "start": "2025-12-17 22:35:16.503763", "stderr": "", "stderr_lines": [], "stdout": "49.0%", "stdout_lines": ["49.0%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004855", "end": "2025-12-17 22:35:16.515760", "msg": "", "rc": 0, "start": "2025-12-17 22:35:16.510905", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005262", "end": "2025-12-17 22:35:16.529018", "msg": "", "rc": 0, "start": "2025-12-17 22:35:16.523756", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004470", "end": "2025-12-17 22:34:50.128796", "msg": "", "rc": 0, "start": "2025-12-17 22:34:50.124326", "stderr": "", "stderr_lines": [], "stdout": "70.6%", "stdout_lines": ["70.6%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004629", "end": "2025-12-17 22:34:43.559757", "msg": "", "rc": 0, "start": "2025-12-17 22:34:43.555128", "stderr": "", "stderr_lines": [], "stdout": "69.2%", "stdout_lines": ["69.2%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010935", "end": "2025-12-17 22:35:17.170603", "msg": "", "rc": 0, "start": "2025-12-17 22:35:17.159668", "stderr": "", "stderr_lines": [], "stdout": "7.0%", "stdout_lines": ["7.0%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012013", "end": "2025-12-17 22:35:17.202183", "msg": "", "rc": 0, "start": "2025-12-17 22:35:17.190170", "stderr": "", "stderr_lines": [], "stdout": "13.1%", "stdout_lines": ["13.1%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005932", "end": "2025-12-17 22:35:17.452222", "msg": "", "rc": 0, "start": "2025-12-17 22:35:17.446290", "stderr": "", "stderr_lines": [], "stdout": "35.6%", "stdout_lines": ["35.6%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004390", "end": "2025-12-17 22:34:46.743769", "msg": "", "rc": 0, "start": "2025-12-17 22:34:46.739379", "stderr": "", "stderr_lines": [], "stdout": "27.2%", "stdout_lines": ["27.2%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004346", "end": "2025-12-17 22:34:53.445985", "msg": "", "rc": 0, "start": "2025-12-17 22:34:53.441639", "stderr": "", "stderr_lines": [], "stdout": "49.8%", "stdout_lines": ["49.8%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005380", "end": "2025-12-17 19:35:17.682932", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 19:35:17.677552", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006499", "end": "2025-12-17 22:35:17.878563", "msg": "", "rc": 0, "start": "2025-12-17 22:35:17.872064", "stderr": "", "stderr_lines": [], "stdout": "14.0%", "stdout_lines": ["14.0%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.009181", "end": "2025-12-17 22:35:18.364039", "msg": "", "rc": 0, "start": "2025-12-17 22:35:18.354858", "stderr": "", "stderr_lines": [], "stdout": "13.2%", "stdout_lines": ["13.2%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025660", "end": "2025-12-17 22:35:17.857587", "msg": "", "rc": 0, "start": "2025-12-17 22:35:17.831927", "stderr": "", "stderr_lines": [], "stdout": "20.2%", "stdout_lines": ["20.2%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005511", "end": "2025-12-17 22:35:18.376745", "msg": "", "rc": 0, "start": "2025-12-17 22:35:18.371234", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004888", "end": "2025-12-17 22:35:18.386102", "msg": "", "rc": 0, "start": "2025-12-17 22:35:18.381214", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005406", "end": "2025-12-17 22:35:18.402150", "msg": "", "rc": 0, "start": "2025-12-17 22:35:18.396744", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003400", "end": "2025-12-17 22:35:18.420755", "msg": "", "rc": 0, "start": "2025-12-17 22:35:18.417355", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006145", "end": "2025-12-17 22:35:18.440861", "msg": "", "rc": 0, "start": "2025-12-17 22:35:18.434716", "stderr": "", "stderr_lines": [], "stdout": "51.5°C", "stdout_lines": ["51.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002810", "end": "2025-12-17 22:34:52.037049", "msg": "", "rc": 0, "start": "2025-12-17 22:34:52.034239", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002893", "end": "2025-12-17 22:34:45.459578", "msg": "", "rc": 0, "start": "2025-12-17 22:34:45.456685", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011768", "end": "2025-12-17 22:35:19.068130", "msg": "", "rc": 0, "start": "2025-12-17 22:35:19.056362", "stderr": "", "stderr_lines": [], "stdout": "31.6°C", "stdout_lines": ["31.6°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012976", "end": "2025-12-17 22:35:19.091536", "msg": "", "rc": 0, "start": "2025-12-17 22:35:19.078560", "stderr": "", "stderr_lines": [], "stdout": "33.6°C", "stdout_lines": ["33.6°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003349", "end": "2025-12-17 22:35:19.365398", "msg": "", "rc": 0, "start": "2025-12-17 22:35:19.362049", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003078", "end": "2025-12-17 22:34:48.636459", "msg": "", "rc": 0, "start": "2025-12-17 22:34:48.633381", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003868", "end": "2025-12-17 19:35:19.546549", "msg": "", "rc": 0, "start": "2025-12-17 19:35:19.542681", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002688", "end": "2025-12-17 22:34:55.334134", "msg": "", "rc": 0, "start": "2025-12-17 22:34:55.331446", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004285", "end": "2025-12-17 22:35:20.302779", "msg": "", "rc": 0, "start": "2025-12-17 22:35:20.298494", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003394", "end": "2025-12-17 22:35:19.807003", "msg": "", "rc": 0, "start": "2025-12-17 22:35:19.803609", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028240", "end": "2025-12-17 22:35:19.767938", "msg": "", "rc": 0, "start": "2025-12-17 22:35:19.739698", "stderr": "", "stderr_lines": [], "stdout": "33.7°C", "stdout_lines": ["33.7°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004170", "end": "2025-12-17 22:35:20.290332", "msg": "", "rc": 0, "start": "2025-12-17 22:35:20.286162", "stderr": "", "stderr_lines": [], "stdout": "0.69", "stdout_lines": ["0.69"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.003935", "end": "2025-12-17 22:35:20.297675", "msg": "", "rc": 0, "start": "2025-12-17 22:35:20.293740", "stderr": "", "stderr_lines": [], "stdout": "0.26", "stdout_lines": ["0.26"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004617", "end": "2025-12-17 22:35:20.319922", "msg": "", "rc": 0, "start": "2025-12-17 22:35:20.315305", "stderr": "", "stderr_lines": [], "stdout": "1.13", "stdout_lines": ["1.13"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004720", "end": "2025-12-17 22:35:20.340039", "msg": "", "rc": 0, "start": "2025-12-17 22:35:20.335319", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005818", "end": "2025-12-17 22:35:20.351485", "msg": "", "rc": 0, "start": "2025-12-17 22:35:20.345667", "stderr": "", "stderr_lines": [], "stdout": "0.79", "stdout_lines": ["0.79"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004382", "end": "2025-12-17 22:34:53.945714", "msg": "", "rc": 0, "start": "2025-12-17 22:34:53.941332", "stderr": "", "stderr_lines": [], "stdout": "0.02", "stdout_lines": ["0.02"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004979", "end": "2025-12-17 22:34:47.405708", "msg": "", "rc": 0, "start": "2025-12-17 22:34:47.400729", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010180", "end": "2025-12-17 22:35:21.073796", "msg": "", "rc": 0, "start": "2025-12-17 22:35:21.063616", "stderr": "", "stderr_lines": [], "stdout": "0.21", "stdout_lines": ["0.21"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011258", "end": "2025-12-17 22:35:21.076639", "msg": "", "rc": 0, "start": "2025-12-17 22:35:21.065381", "stderr": "", "stderr_lines": [], "stdout": "0.32", "stdout_lines": ["0.32"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005536", "end": "2025-12-17 22:35:21.254769", "msg": "", "rc": 0, "start": "2025-12-17 22:35:21.249233", "stderr": "", "stderr_lines": [], "stdout": "0.13", "stdout_lines": ["0.13"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005028", "end": "2025-12-17 22:34:50.588372", "msg": "", "rc": 0, "start": "2025-12-17 22:34:50.583344", "stderr": "", "stderr_lines": [], "stdout": "0.45", "stdout_lines": ["0.45"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006000", "end": "2025-12-17 19:35:21.539025", "msg": "", "rc": 0, "start": "2025-12-17 19:35:21.533025", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004642", "end": "2025-12-17 22:34:57.362538", "msg": "", "rc": 0, "start": "2025-12-17 22:34:57.357896", "stderr": "", "stderr_lines": [], "stdout": "0.77", "stdout_lines": ["0.77"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005450", "end": "2025-12-17 22:35:21.679297", "msg": "", "rc": 0, "start": "2025-12-17 22:35:21.673847", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006892", "end": "2025-12-17 22:35:22.276400", "msg": "", "rc": 0, "start": "2025-12-17 22:35:22.269508", "stderr": "", "stderr_lines": [], "stdout": "1.48", "stdout_lines": ["1.48"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024275", "end": "2025-12-17 22:35:21.677974", "msg": "", "rc": 0, "start": "2025-12-17 22:35:21.653699", "stderr": "", "stderr_lines": [], "stdout": "0.31", "stdout_lines": ["0.31"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:35:11 up 3 days, 12:07, 3 users, load average: 0.28, 0.23, 0.22\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.26\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:35:11 up 22 days, 9:26, 1 user, load average: 0.53, 0.45, 0.45\nDisk Usage: 23%\nMemory Usage: 78.4%\nCPU Load: 0.69\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:35:11 up 22 days, 9:46, 1 user, load average: 1.23, 0.88, 0.77\nDisk Usage: 14%\nMemory Usage: 49.0%\nCPU Load: 1.13\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:35:11 up 22 days, 10:59, 1 user, load average: 0.94, 0.71, 0.69\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.79\nCPU Temp: 51.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:35:11 up 22 days, 11:45, 1 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:35:13 up 15 days, 12:01, 1 user, load average: 0.28, 0.16, 0.10\nDisk Usage: 21%\nMemory Usage: 20.2%\nCPU Load: 0.31\nCPU Temp: 33.7°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:35:12 up 194 days, 14:08, 1 user, load average: 0.29, 0.22, 0.19\nDisk Usage: 6%\nMemory Usage: 13.1%\nCPU Load: 0.32\nCPU Temp: 33.6°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:35:12 up 194 days, 14:08, 1 user, load average: 0.16, 0.12, 0.09\nDisk Usage: 3%\nMemory Usage: 7.0%\nCPU Load: 0.21\nCPU Temp: 31.6°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:34:45 up 11 days, 10:24, 0 user, load average: 0.02, 0.07, 0.10\nDisk Usage: 48%\nMemory Usage: 70.6%\nCPU Load: 0.02\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:34:38 up 18 days, 6:36, 0 user, load average: 0.09, 0.14, 0.13\nDisk Usage: 25%\nMemory Usage: 69.2%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:35:12 up 3 days, 12:06, 1 user, load average: 0.07, 0.05, 0.01\nDisk Usage: 1%\nMemory Usage: 35.6%\nCPU Load: 0.13\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:34:41 up 21 days, 1:28, 0 user, load average: 0.53, 0.58, 0.61\nDisk Usage: 28%\nMemory Usage: 27.2%\nCPU Load: 0.45\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:34:48 up 17 days, 11:50, 0 user, load average: 0.83, 0.66, 0.45\nDisk Usage: 76%\nMemory Usage: 49.8%\nCPU Load: 0.77\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 7:35PM up 22 days, 9:25, 1 user, load averages: 0.48, 0.34, 0.27\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:35:13 up 3 days, 12:06, 1 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 79%\nMemory Usage: 14.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:35:13 up 2:43, 1 user, load average: 1.43, 1.18, 1.13\nDisk Usage: 1%\nMemory Usage: 13.2%\nCPU Load: 1.48\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T03:35:22.644019+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_034021_d99c3d_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_034021_d99c3d_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..2a1f102 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_034021_d99c3d_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `3ce1fafe2f43476688f69941744e2cd2` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T03:40:00.003027+00:00 | +| **Fin** | 2025-12-18T03:40:21.503012+00:00 | +| **Durée** | 21.5s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [mimi.pc.home] +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003152", "end": "2025-12-17 22:40:11.433553", "msg": "", "rc": 0, "start": "2025-12-17 22:40:11.430401", "stderr": "", "stderr_lines": [], "stdout": " 22:40:11 up 22 days, 9:31, 1 user, load average: 0.39, 0.39, 0.43", "stdout_lines": [" 22:40:11 up 22 days, 9:31, 1 user, load average: 0.39, 0.39, 0.43"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003934", "end": "2025-12-17 22:40:11.444474", "msg": "", "rc": 0, "start": "2025-12-17 22:40:11.440540", "stderr": "", "stderr_lines": [], "stdout": " 22:40:11 up 22 days, 11:50, 1 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 22:40:11 up 22 days, 11:50, 1 user, load average: 0.00, 0.00, 0.00"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004218", "end": "2025-12-17 22:40:11.466510", "msg": "", "rc": 0, "start": "2025-12-17 22:40:11.462292", "stderr": "", "stderr_lines": [], "stdout": " 22:40:11 up 22 days, 9:51, 1 user, load average: 1.05, 0.89, 0.81", "stdout_lines": [" 22:40:11 up 22 days, 9:51, 1 user, load average: 1.05, 0.89, 0.81"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003019", "end": "2025-12-17 22:40:11.474564", "msg": "", "rc": 0, "start": "2025-12-17 22:40:11.471545", "stderr": "", "stderr_lines": [], "stdout": " 22:40:11 up 3 days, 12:12, 3 users, load average: 0.09, 0.17, 0.18", "stdout_lines": [" 22:40:11 up 3 days, 12:12, 3 users, load average: 0.09, 0.17, 0.18"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003924", "end": "2025-12-17 22:40:11.477202", "msg": "", "rc": 0, "start": "2025-12-17 22:40:11.473278", "stderr": "", "stderr_lines": [], "stdout": " 22:40:11 up 22 days, 11:04, 1 user, load average: 0.73, 0.58, 0.63", "stdout_lines": [" 22:40:11 up 22 days, 11:04, 1 user, load average: 0.73, 0.58, 0.63"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002731", "end": "2025-12-17 22:39:45.088379", "msg": "", "rc": 0, "start": "2025-12-17 22:39:45.085648", "stderr": "", "stderr_lines": [], "stdout": " 22:39:45 up 11 days, 10:29, 0 user, load average: 0.27, 0.21, 0.15", "stdout_lines": [" 22:39:45 up 11 days, 10:29, 0 user, load average: 0.27, 0.21, 0.15"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003262", "end": "2025-12-17 22:39:38.508293", "msg": "", "rc": 0, "start": "2025-12-17 22:39:38.505031", "stderr": "", "stderr_lines": [], "stdout": " 22:39:38 up 18 days, 6:41, 0 user, load average: 0.00, 0.05, 0.08", "stdout_lines": [" 22:39:38 up 18 days, 6:41, 0 user, load average: 0.00, 0.05, 0.08"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008408", "end": "2025-12-17 22:40:12.130718", "msg": "", "rc": 0, "start": "2025-12-17 22:40:12.122310", "stderr": "", "stderr_lines": [], "stdout": " 22:40:12 up 194 days, 14:13, 1 user, load average: 0.26, 0.15, 0.10", "stdout_lines": [" 22:40:12 up 194 days, 14:13, 1 user, load average: 0.26, 0.15, 0.10"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009282", "end": "2025-12-17 22:40:12.156951", "msg": "", "rc": 0, "start": "2025-12-17 22:40:12.147669", "stderr": "", "stderr_lines": [], "stdout": " 22:40:12 up 194 days, 14:13, 1 user, load average: 0.41, 0.23, 0.19", "stdout_lines": [" 22:40:12 up 194 days, 14:13, 1 user, load average: 0.41, 0.23, 0.19"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004869", "end": "2025-12-17 22:40:12.405669", "msg": "", "rc": 0, "start": "2025-12-17 22:40:12.400800", "stderr": "", "stderr_lines": [], "stdout": " 22:40:12 up 3 days, 12:11, 1 user, load average: 0.00, 0.02, 0.00", "stdout_lines": [" 22:40:12 up 3 days, 12:11, 1 user, load average: 0.00, 0.02, 0.00"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003291", "end": "2025-12-17 22:39:41.668306", "msg": "", "rc": 0, "start": "2025-12-17 22:39:41.665015", "stderr": "", "stderr_lines": [], "stdout": " 22:39:41 up 21 days, 1:33, 0 user, load average: 0.33, 0.42, 0.53", "stdout_lines": [" 22:39:41 up 21 days, 1:33, 0 user, load average: 0.33, 0.42, 0.53"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004192", "end": "2025-12-17 19:40:12.617443", "msg": "", "rc": 0, "start": "2025-12-17 19:40:12.613251", "stderr": "", "stderr_lines": [], "stdout": " 7:40PM up 22 days, 9:29, 1 user, load averages: 0.25, 0.27, 0.25", "stdout_lines": [" 7:40PM up 22 days, 9:29, 1 user, load averages: 0.25, 0.27, 0.25"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003147", "end": "2025-12-17 22:39:48.399181", "msg": "", "rc": 0, "start": "2025-12-17 22:39:48.396034", "stderr": "", "stderr_lines": [], "stdout": " 22:39:48 up 17 days, 11:55, 0 user, load average: 0.62, 0.66, 0.52", "stdout_lines": [" 22:39:48 up 17 days, 11:55, 0 user, load average: 0.62, 0.66, 0.52"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009235", "end": "2025-12-17 22:40:12.862803", "msg": "", "rc": 0, "start": "2025-12-17 22:40:12.853568", "stderr": "", "stderr_lines": [], "stdout": " 22:40:12 up 2:48, 1 user, load average: 1.66, 1.26, 1.15", "stdout_lines": [" 22:40:12 up 2:48, 1 user, load average: 1.66, 1.26, 1.15"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004044", "end": "2025-12-17 22:40:12.847211", "msg": "", "rc": 0, "start": "2025-12-17 22:40:12.843167", "stderr": "", "stderr_lines": [], "stdout": " 22:40:12 up 3 days, 12:11, 1 user, load average: 0.11, 0.05, 0.01", "stdout_lines": [" 22:40:12 up 3 days, 12:11, 1 user, load average: 0.11, 0.05, 0.01"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019387", "end": "2025-12-17 22:40:12.821654", "msg": "", "rc": 0, "start": "2025-12-17 22:40:12.802267", "stderr": "", "stderr_lines": [], "stdout": " 22:40:12 up 15 days, 12:06, 1 user, load average: 0.23, 0.15, 0.10", "stdout_lines": [" 22:40:12 up 15 days, 12:06, 1 user, load average: 0.23, 0.15, 0.10"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004158", "end": "2025-12-17 22:40:13.341473", "msg": "", "rc": 0, "start": "2025-12-17 22:40:13.337315", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004273", "end": "2025-12-17 22:40:13.367555", "msg": "", "rc": 0, "start": "2025-12-17 22:40:13.363282", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004675", "end": "2025-12-17 22:40:13.378882", "msg": "", "rc": 0, "start": "2025-12-17 22:40:13.374207", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005566", "end": "2025-12-17 22:40:13.400519", "msg": "", "rc": 0, "start": "2025-12-17 22:40:13.394953", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004881", "end": "2025-12-17 22:40:13.396487", "msg": "", "rc": 0, "start": "2025-12-17 22:40:13.391606", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005506", "end": "2025-12-17 22:39:47.044335", "msg": "", "rc": 0, "start": "2025-12-17 22:39:47.038829", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005488", "end": "2025-12-17 22:39:40.451485", "msg": "", "rc": 0, "start": "2025-12-17 22:39:40.445997", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010658", "end": "2025-12-17 22:40:14.102914", "msg": "", "rc": 0, "start": "2025-12-17 22:40:14.092256", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011679", "end": "2025-12-17 22:40:14.149508", "msg": "", "rc": 0, "start": "2025-12-17 22:40:14.137829", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005820", "end": "2025-12-17 22:40:14.357570", "msg": "", "rc": 0, "start": "2025-12-17 22:40:14.351750", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005924", "end": "2025-12-17 22:39:43.616959", "msg": "", "rc": 0, "start": "2025-12-17 22:39:43.611035", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004693", "end": "2025-12-17 22:39:50.387476", "msg": "", "rc": 0, "start": "2025-12-17 22:39:50.382783", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005240", "end": "2025-12-17 19:40:14.625693", "msg": "", "rc": 0, "start": "2025-12-17 19:40:14.620453", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005766", "end": "2025-12-17 22:40:14.794032", "msg": "", "rc": 0, "start": "2025-12-17 22:40:14.788266", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.021025", "end": "2025-12-17 22:40:14.849603", "msg": "", "rc": 0, "start": "2025-12-17 22:40:14.828578", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.024901", "end": "2025-12-17 22:40:14.746384", "msg": "", "rc": 0, "start": "2025-12-17 22:40:14.721483", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004780", "end": "2025-12-17 22:40:15.254891", "msg": "", "rc": 0, "start": "2025-12-17 22:40:15.250111", "stderr": "", "stderr_lines": [], "stdout": "78.3%", "stdout_lines": ["78.3%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004208", "end": "2025-12-17 22:40:15.284778", "msg": "", "rc": 0, "start": "2025-12-17 22:40:15.280570", "stderr": "", "stderr_lines": [], "stdout": "22.7%", "stdout_lines": ["22.7%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005125", "end": "2025-12-17 22:40:15.297287", "msg": "", "rc": 0, "start": "2025-12-17 22:40:15.292162", "stderr": "", "stderr_lines": [], "stdout": "49.0%", "stdout_lines": ["49.0%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004281", "end": "2025-12-17 22:40:15.317995", "msg": "", "rc": 0, "start": "2025-12-17 22:40:15.313714", "stderr": "", "stderr_lines": [], "stdout": "9.1%", "stdout_lines": ["9.1%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005816", "end": "2025-12-17 22:40:15.328594", "msg": "", "rc": 0, "start": "2025-12-17 22:40:15.322778", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003820", "end": "2025-12-17 22:39:48.972852", "msg": "", "rc": 0, "start": "2025-12-17 22:39:48.969032", "stderr": "", "stderr_lines": [], "stdout": "70.6%", "stdout_lines": ["70.6%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004243", "end": "2025-12-17 22:39:42.366821", "msg": "", "rc": 0, "start": "2025-12-17 22:39:42.362578", "stderr": "", "stderr_lines": [], "stdout": "69.3%", "stdout_lines": ["69.3%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011052", "end": "2025-12-17 22:40:15.983575", "msg": "", "rc": 0, "start": "2025-12-17 22:40:15.972523", "stderr": "", "stderr_lines": [], "stdout": "6.7%", "stdout_lines": ["6.7%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011767", "end": "2025-12-17 22:40:15.992406", "msg": "", "rc": 0, "start": "2025-12-17 22:40:15.980639", "stderr": "", "stderr_lines": [], "stdout": "13.1%", "stdout_lines": ["13.1%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005952", "end": "2025-12-17 22:40:16.287065", "msg": "", "rc": 0, "start": "2025-12-17 22:40:16.281113", "stderr": "", "stderr_lines": [], "stdout": "35.9%", "stdout_lines": ["35.9%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004214", "end": "2025-12-17 22:39:45.576801", "msg": "", "rc": 0, "start": "2025-12-17 22:39:45.572587", "stderr": "", "stderr_lines": [], "stdout": "27.2%", "stdout_lines": ["27.2%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005116", "end": "2025-12-17 19:40:16.466450", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 19:40:16.461334", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003926", "end": "2025-12-17 22:39:52.273232", "msg": "", "rc": 0, "start": "2025-12-17 22:39:52.269306", "stderr": "", "stderr_lines": [], "stdout": "48.2%", "stdout_lines": ["48.2%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005890", "end": "2025-12-17 22:40:16.722559", "msg": "", "rc": 0, "start": "2025-12-17 22:40:16.716669", "stderr": "", "stderr_lines": [], "stdout": "13.9%", "stdout_lines": ["13.9%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.009440", "end": "2025-12-17 22:40:16.843341", "msg": "", "rc": 0, "start": "2025-12-17 22:40:16.833901", "stderr": "", "stderr_lines": [], "stdout": "13.0%", "stdout_lines": ["13.0%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.026013", "end": "2025-12-17 22:40:16.650637", "msg": "", "rc": 0, "start": "2025-12-17 22:40:16.624624", "stderr": "", "stderr_lines": [], "stdout": "20.7%", "stdout_lines": ["20.7%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005386", "end": "2025-12-17 22:40:17.163511", "msg": "", "rc": 0, "start": "2025-12-17 22:40:17.158125", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004802", "end": "2025-12-17 22:40:17.185353", "msg": "", "rc": 0, "start": "2025-12-17 22:40:17.180551", "stderr": "", "stderr_lines": [], "stdout": "45.0°C", "stdout_lines": ["45.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005973", "end": "2025-12-17 22:40:17.199584", "msg": "", "rc": 0, "start": "2025-12-17 22:40:17.193611", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003220", "end": "2025-12-17 22:40:17.216646", "msg": "", "rc": 0, "start": "2025-12-17 22:40:17.213426", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006725", "end": "2025-12-17 22:40:17.230168", "msg": "", "rc": 0, "start": "2025-12-17 22:40:17.223443", "stderr": "", "stderr_lines": [], "stdout": "51.5°C", "stdout_lines": ["51.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002764", "end": "2025-12-17 22:39:50.837795", "msg": "", "rc": 0, "start": "2025-12-17 22:39:50.835031", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004057", "end": "2025-12-17 22:39:44.253665", "msg": "", "rc": 0, "start": "2025-12-17 22:39:44.249608", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011695", "end": "2025-12-17 22:40:17.862476", "msg": "", "rc": 0, "start": "2025-12-17 22:40:17.850781", "stderr": "", "stderr_lines": [], "stdout": "30.7°C", "stdout_lines": ["30.7°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013222", "end": "2025-12-17 22:40:17.901685", "msg": "", "rc": 0, "start": "2025-12-17 22:40:17.888463", "stderr": "", "stderr_lines": [], "stdout": "33.6°C", "stdout_lines": ["33.6°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003707", "end": "2025-12-17 22:40:18.149692", "msg": "", "rc": 0, "start": "2025-12-17 22:40:18.145985", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002860", "end": "2025-12-17 22:39:47.434799", "msg": "", "rc": 0, "start": "2025-12-17 22:39:47.431939", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003865", "end": "2025-12-17 19:40:18.365570", "msg": "", "rc": 0, "start": "2025-12-17 19:40:18.361705", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002605", "end": "2025-12-17 22:39:54.164123", "msg": "", "rc": 0, "start": "2025-12-17 22:39:54.161518", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002921", "end": "2025-12-17 22:40:18.582508", "msg": "", "rc": 0, "start": "2025-12-17 22:40:18.579587", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004594", "end": "2025-12-17 22:40:18.744997", "msg": "", "rc": 0, "start": "2025-12-17 22:40:18.740403", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028724", "end": "2025-12-17 22:40:18.548634", "msg": "", "rc": 0, "start": "2025-12-17 22:40:18.519910", "stderr": "", "stderr_lines": [], "stdout": "34.6°C", "stdout_lines": ["34.6°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004080", "end": "2025-12-17 22:40:19.063516", "msg": "", "rc": 0, "start": "2025-12-17 22:40:19.059436", "stderr": "", "stderr_lines": [], "stdout": "0.41", "stdout_lines": ["0.41"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004057", "end": "2025-12-17 22:40:19.111403", "msg": "", "rc": 0, "start": "2025-12-17 22:40:19.107346", "stderr": "", "stderr_lines": [], "stdout": "0.09", "stdout_lines": ["0.09"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004504", "end": "2025-12-17 22:40:19.109132", "msg": "", "rc": 0, "start": "2025-12-17 22:40:19.104628", "stderr": "", "stderr_lines": [], "stdout": "1.04", "stdout_lines": ["1.04"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004708", "end": "2025-12-17 22:40:19.124780", "msg": "", "rc": 0, "start": "2025-12-17 22:40:19.120072", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005289", "end": "2025-12-17 22:40:19.139452", "msg": "", "rc": 0, "start": "2025-12-17 22:40:19.134163", "stderr": "", "stderr_lines": [], "stdout": "0.75", "stdout_lines": ["0.75"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.003973", "end": "2025-12-17 22:39:52.736962", "msg": "", "rc": 0, "start": "2025-12-17 22:39:52.732989", "stderr": "", "stderr_lines": [], "stdout": "0.41", "stdout_lines": ["0.41"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005302", "end": "2025-12-17 22:39:46.185880", "msg": "", "rc": 0, "start": "2025-12-17 22:39:46.180578", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010089", "end": "2025-12-17 22:40:19.859484", "msg": "", "rc": 0, "start": "2025-12-17 22:40:19.849395", "stderr": "", "stderr_lines": [], "stdout": "0.38", "stdout_lines": ["0.38"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011088", "end": "2025-12-17 22:40:19.883083", "msg": "", "rc": 0, "start": "2025-12-17 22:40:19.871995", "stderr": "", "stderr_lines": [], "stdout": "0.50", "stdout_lines": ["0.50"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005607", "end": "2025-12-17 22:40:20.040367", "msg": "", "rc": 0, "start": "2025-12-17 22:40:20.034760", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004948", "end": "2025-12-17 22:39:49.354574", "msg": "", "rc": 0, "start": "2025-12-17 22:39:49.349626", "stderr": "", "stderr_lines": [], "stdout": "0.30", "stdout_lines": ["0.30"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004216", "end": "2025-12-17 22:39:56.124661", "msg": "", "rc": 0, "start": "2025-12-17 22:39:56.120445", "stderr": "", "stderr_lines": [], "stdout": "0.68", "stdout_lines": ["0.68"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005854", "end": "2025-12-17 19:40:20.356104", "msg": "", "rc": 0, "start": "2025-12-17 19:40:20.350250", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005319", "end": "2025-12-17 22:40:20.467119", "msg": "", "rc": 0, "start": "2025-12-17 22:40:20.461800", "stderr": "", "stderr_lines": [], "stdout": "0.18", "stdout_lines": ["0.18"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.007752", "end": "2025-12-17 22:40:20.686024", "msg": "", "rc": 0, "start": "2025-12-17 22:40:20.678272", "stderr": "", "stderr_lines": [], "stdout": "2.01", "stdout_lines": ["2.01"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024044", "end": "2025-12-17 22:40:20.440836", "msg": "", "rc": 0, "start": "2025-12-17 22:40:20.416792", "stderr": "", "stderr_lines": [], "stdout": "0.27", "stdout_lines": ["0.27"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:40:11 up 3 days, 12:12, 3 users, load average: 0.09, 0.17, 0.18\nDisk Usage: 22%\nMemory Usage: 22.7%\nCPU Load: 0.09\nCPU Temp: 45.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:40:11 up 22 days, 9:31, 1 user, load average: 0.39, 0.39, 0.43\nDisk Usage: 23%\nMemory Usage: 78.3%\nCPU Load: 0.41\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:40:11 up 22 days, 9:51, 1 user, load average: 1.05, 0.89, 0.81\nDisk Usage: 14%\nMemory Usage: 49.0%\nCPU Load: 1.04\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:40:11 up 22 days, 11:04, 1 user, load average: 0.73, 0.58, 0.63\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.75\nCPU Temp: 51.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:40:11 up 22 days, 11:50, 1 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 9%\nMemory Usage: 9.1%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:40:12 up 15 days, 12:06, 1 user, load average: 0.23, 0.15, 0.10\nDisk Usage: 21%\nMemory Usage: 20.7%\nCPU Load: 0.27\nCPU Temp: 34.6°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:40:12 up 194 days, 14:13, 1 user, load average: 0.41, 0.23, 0.19\nDisk Usage: 6%\nMemory Usage: 13.1%\nCPU Load: 0.50\nCPU Temp: 33.6°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:40:12 up 194 days, 14:13, 1 user, load average: 0.26, 0.15, 0.10\nDisk Usage: 3%\nMemory Usage: 6.7%\nCPU Load: 0.38\nCPU Temp: 30.7°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:39:45 up 11 days, 10:29, 0 user, load average: 0.27, 0.21, 0.15\nDisk Usage: 48%\nMemory Usage: 70.6%\nCPU Load: 0.41\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:39:38 up 18 days, 6:41, 0 user, load average: 0.00, 0.05, 0.08\nDisk Usage: 25%\nMemory Usage: 69.3%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:40:12 up 3 days, 12:11, 1 user, load average: 0.00, 0.02, 0.00\nDisk Usage: 1%\nMemory Usage: 35.9%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:39:41 up 21 days, 1:33, 0 user, load average: 0.33, 0.42, 0.53\nDisk Usage: 28%\nMemory Usage: 27.2%\nCPU Load: 0.30\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:39:48 up 17 days, 11:55, 0 user, load average: 0.62, 0.66, 0.52\nDisk Usage: 76%\nMemory Usage: 48.2%\nCPU Load: 0.68\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 7:40PM up 22 days, 9:29, 1 user, load averages: 0.25, 0.27, 0.25\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:40:12 up 3 days, 12:11, 1 user, load average: 0.11, 0.05, 0.01\nDisk Usage: 79%\nMemory Usage: 13.9%\nCPU Load: 0.18\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:40:12 up 2:48, 1 user, load average: 1.66, 1.26, 1.15\nDisk Usage: 1%\nMemory Usage: 13.0%\nCPU Load: 2.01\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T03:40:21.555336+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_034522_be7c73_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_034522_be7c73_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..03392d3 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_034522_be7c73_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `76f5e597915f47f5b1f9d1182a5160be` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T03:45:00.001783+00:00 | +| **Fin** | 2025-12-18T03:45:22.500098+00:00 | +| **Durée** | 22.5s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003259", "end": "2025-12-17 22:45:11.920546", "msg": "", "rc": 0, "start": "2025-12-17 22:45:11.917287", "stderr": "", "stderr_lines": [], "stdout": " 22:45:11 up 22 days, 9:36, 1 user, load average: 0.39, 0.35, 0.39", "stdout_lines": [" 22:45:11 up 22 days, 9:36, 1 user, load average: 0.39, 0.35, 0.39"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003948", "end": "2025-12-17 22:45:11.928272", "msg": "", "rc": 0, "start": "2025-12-17 22:45:11.924324", "stderr": "", "stderr_lines": [], "stdout": " 22:45:11 up 22 days, 11:55, 1 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 22:45:11 up 22 days, 11:55, 1 user, load average: 0.00, 0.00, 0.00"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002863", "end": "2025-12-17 22:45:11.955991", "msg": "", "rc": 0, "start": "2025-12-17 22:45:11.953128", "stderr": "", "stderr_lines": [], "stdout": " 22:45:11 up 3 days, 12:17, 1 user, load average: 0.30, 0.20, 0.19", "stdout_lines": [" 22:45:11 up 3 days, 12:17, 1 user, load average: 0.30, 0.20, 0.19"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004441", "end": "2025-12-17 22:45:11.972059", "msg": "", "rc": 0, "start": "2025-12-17 22:45:11.967618", "stderr": "", "stderr_lines": [], "stdout": " 22:45:11 up 22 days, 11:09, 1 user, load average: 0.67, 0.67, 0.66", "stdout_lines": [" 22:45:11 up 22 days, 11:09, 1 user, load average: 0.67, 0.67, 0.66"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002817", "end": "2025-12-17 22:44:45.584988", "msg": "", "rc": 0, "start": "2025-12-17 22:44:45.582171", "stderr": "", "stderr_lines": [], "stdout": " 22:44:45 up 11 days, 10:34, 0 user, load average: 0.04, 0.11, 0.12", "stdout_lines": [" 22:44:45 up 11 days, 10:34, 0 user, load average: 0.04, 0.11, 0.12"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008427", "end": "2025-12-17 22:45:12.601674", "msg": "", "rc": 0, "start": "2025-12-17 22:45:12.593247", "stderr": "", "stderr_lines": [], "stdout": " 22:45:12 up 194 days, 14:18, 1 user, load average: 0.19, 0.16, 0.11", "stdout_lines": [" 22:45:12 up 194 days, 14:18, 1 user, load average: 0.19, 0.16, 0.11"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009150", "end": "2025-12-17 22:45:12.633421", "msg": "", "rc": 0, "start": "2025-12-17 22:45:12.624271", "stderr": "", "stderr_lines": [], "stdout": " 22:45:12 up 194 days, 14:18, 1 user, load average: 0.34, 0.23, 0.19", "stdout_lines": [" 22:45:12 up 194 days, 14:18, 1 user, load average: 0.34, 0.23, 0.19"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004464", "end": "2025-12-17 22:45:12.947606", "msg": "", "rc": 0, "start": "2025-12-17 22:45:11.943142", "stderr": "", "stderr_lines": [], "stdout": " 22:45:11 up 22 days, 9:56, 1 user, load average: 0.67, 0.95, 0.88", "stdout_lines": [" 22:45:11 up 22 days, 9:56, 1 user, load average: 0.67, 0.95, 0.88"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003680", "end": "2025-12-17 22:44:39.442090", "msg": "", "rc": 0, "start": "2025-12-17 22:44:39.438410", "stderr": "", "stderr_lines": [], "stdout": " 22:44:39 up 18 days, 6:46, 0 user, load average: 0.00, 0.01, 0.05", "stdout_lines": [" 22:44:39 up 18 days, 6:46, 0 user, load average: 0.00, 0.01, 0.05"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004706", "end": "2025-12-17 22:45:13.097437", "msg": "", "rc": 0, "start": "2025-12-17 22:45:13.092731", "stderr": "", "stderr_lines": [], "stdout": " 22:45:13 up 3 days, 12:16, 1 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 22:45:13 up 3 days, 12:16, 1 user, load average: 0.00, 0.00, 0.00"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003426", "end": "2025-12-17 22:44:42.331152", "msg": "", "rc": 0, "start": "2025-12-17 22:44:42.327726", "stderr": "", "stderr_lines": [], "stdout": " 22:44:42 up 21 days, 1:39, 0 user, load average: 0.61, 0.43, 0.48", "stdout_lines": [" 22:44:42 up 21 days, 1:39, 0 user, load average: 0.61, 0.43, 0.48"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004196", "end": "2025-12-17 19:45:13.379949", "msg": "", "rc": 0, "start": "2025-12-17 19:45:13.375753", "stderr": "", "stderr_lines": [], "stdout": " 7:45PM up 22 days, 9:35, 1 user, load averages: 0.12, 0.20, 0.22", "stdout_lines": [" 7:45PM up 22 days, 9:35, 1 user, load averages: 0.12, 0.20, 0.22"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004228", "end": "2025-12-17 22:44:49.171844", "msg": "", "rc": 0, "start": "2025-12-17 22:44:49.167616", "stderr": "", "stderr_lines": [], "stdout": " 22:44:49 up 17 days, 12:00, 0 user, load average: 0.63, 0.71, 0.58", "stdout_lines": [" 22:44:49 up 17 days, 12:00, 0 user, load average: 0.63, 0.71, 0.58"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019576", "end": "2025-12-17 22:45:13.281067", "msg": "", "rc": 0, "start": "2025-12-17 22:45:13.261491", "stderr": "", "stderr_lines": [], "stdout": " 22:45:13 up 15 days, 12:11, 1 user, load average: 0.23, 0.14, 0.10", "stdout_lines": [" 22:45:13 up 15 days, 12:11, 1 user, load average: 0.23, 0.14, 0.10"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.006850", "end": "2025-12-17 22:45:13.854292", "msg": "", "rc": 0, "start": "2025-12-17 22:45:13.847442", "stderr": "", "stderr_lines": [], "stdout": " 22:45:13 up 2:53, 1 user, load average: 1.19, 1.19, 1.15", "stdout_lines": [" 22:45:13 up 2:53, 1 user, load average: 1.19, 1.19, 1.15"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003732", "end": "2025-12-17 22:45:13.527171", "msg": "", "rc": 0, "start": "2025-12-17 22:45:13.523439", "stderr": "", "stderr_lines": [], "stdout": " 22:45:13 up 3 days, 12:16, 1 user, load average: 0.00, 0.02, 0.00", "stdout_lines": [" 22:45:13 up 3 days, 12:16, 1 user, load average: 0.00, 0.02, 0.00"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004305", "end": "2025-12-17 22:45:13.938701", "msg": "", "rc": 0, "start": "2025-12-17 22:45:13.934396", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004194", "end": "2025-12-17 22:45:13.963789", "msg": "", "rc": 0, "start": "2025-12-17 22:45:13.959595", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005352", "end": "2025-12-17 22:45:13.975885", "msg": "", "rc": 0, "start": "2025-12-17 22:45:13.970533", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004751", "end": "2025-12-17 22:45:13.985256", "msg": "", "rc": 0, "start": "2025-12-17 22:45:13.980505", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005794", "end": "2025-12-17 22:45:14.009652", "msg": "", "rc": 0, "start": "2025-12-17 22:45:14.003858", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004666", "end": "2025-12-17 22:44:47.611737", "msg": "", "rc": 0, "start": "2025-12-17 22:44:47.607071", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005969", "end": "2025-12-17 22:44:41.042077", "msg": "", "rc": 0, "start": "2025-12-17 22:44:41.036108", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010573", "end": "2025-12-17 22:45:14.722598", "msg": "", "rc": 0, "start": "2025-12-17 22:45:14.712025", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011428", "end": "2025-12-17 22:45:14.742731", "msg": "", "rc": 0, "start": "2025-12-17 22:45:14.731303", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005677", "end": "2025-12-17 22:45:14.930702", "msg": "", "rc": 0, "start": "2025-12-17 22:45:14.925025", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005401", "end": "2025-12-17 22:44:44.207824", "msg": "", "rc": 0, "start": "2025-12-17 22:44:44.202423", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005271", "end": "2025-12-17 19:45:15.207137", "msg": "", "rc": 0, "start": "2025-12-17 19:45:15.201866", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005075", "end": "2025-12-17 22:44:51.008007", "msg": "", "rc": 0, "start": "2025-12-17 22:44:51.002932", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005711", "end": "2025-12-17 22:45:15.353390", "msg": "", "rc": 0, "start": "2025-12-17 22:45:15.347679", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.020942", "end": "2025-12-17 22:45:15.771616", "msg": "", "rc": 0, "start": "2025-12-17 22:45:15.750674", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025158", "end": "2025-12-17 22:45:15.340788", "msg": "", "rc": 0, "start": "2025-12-17 22:45:15.315630", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004237", "end": "2025-12-17 22:45:15.871961", "msg": "", "rc": 0, "start": "2025-12-17 22:45:15.867724", "stderr": "", "stderr_lines": [], "stdout": "78.4%", "stdout_lines": ["78.4%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004554", "end": "2025-12-17 22:45:15.869563", "msg": "", "rc": 0, "start": "2025-12-17 22:45:15.865009", "stderr": "", "stderr_lines": [], "stdout": "22.7%", "stdout_lines": ["22.7%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004907", "end": "2025-12-17 22:45:15.887006", "msg": "", "rc": 0, "start": "2025-12-17 22:45:15.882099", "stderr": "", "stderr_lines": [], "stdout": "48.4%", "stdout_lines": ["48.4%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005092", "end": "2025-12-17 22:45:15.909814", "msg": "", "rc": 0, "start": "2025-12-17 22:45:15.904722", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005756", "end": "2025-12-17 22:45:15.926585", "msg": "", "rc": 0, "start": "2025-12-17 22:45:15.920829", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003405", "end": "2025-12-17 22:44:49.523948", "msg": "", "rc": 0, "start": "2025-12-17 22:44:49.520543", "stderr": "", "stderr_lines": [], "stdout": "71.0%", "stdout_lines": ["71.0%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004318", "end": "2025-12-17 22:44:42.938798", "msg": "", "rc": 0, "start": "2025-12-17 22:44:42.934480", "stderr": "", "stderr_lines": [], "stdout": "69.1%", "stdout_lines": ["69.1%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010847", "end": "2025-12-17 22:45:16.554728", "msg": "", "rc": 0, "start": "2025-12-17 22:45:16.543881", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012460", "end": "2025-12-17 22:45:16.594163", "msg": "", "rc": 0, "start": "2025-12-17 22:45:16.581703", "stderr": "", "stderr_lines": [], "stdout": "12.8%", "stdout_lines": ["12.8%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005840", "end": "2025-12-17 22:45:16.849750", "msg": "", "rc": 0, "start": "2025-12-17 22:45:16.843910", "stderr": "", "stderr_lines": [], "stdout": "35.9%", "stdout_lines": ["35.9%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004460", "end": "2025-12-17 22:44:46.105754", "msg": "", "rc": 0, "start": "2025-12-17 22:44:46.101294", "stderr": "", "stderr_lines": [], "stdout": "27.2%", "stdout_lines": ["27.2%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005615", "end": "2025-12-17 22:44:52.820815", "msg": "", "rc": 0, "start": "2025-12-17 22:44:52.815200", "stderr": "", "stderr_lines": [], "stdout": "46.2%", "stdout_lines": ["46.2%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005063", "end": "2025-12-17 19:45:17.067431", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 19:45:17.062368", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005395", "end": "2025-12-17 22:45:17.269967", "msg": "", "rc": 0, "start": "2025-12-17 22:45:17.264572", "stderr": "", "stderr_lines": [], "stdout": "14.0%", "stdout_lines": ["14.0%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010044", "end": "2025-12-17 22:45:17.728112", "msg": "", "rc": 0, "start": "2025-12-17 22:45:17.718068", "stderr": "", "stderr_lines": [], "stdout": "12.7%", "stdout_lines": ["12.7%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025919", "end": "2025-12-17 22:45:17.275802", "msg": "", "rc": 0, "start": "2025-12-17 22:45:17.249883", "stderr": "", "stderr_lines": [], "stdout": "20.5%", "stdout_lines": ["20.5%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004978", "end": "2025-12-17 22:45:17.819261", "msg": "", "rc": 0, "start": "2025-12-17 22:45:17.814283", "stderr": "", "stderr_lines": [], "stdout": "44.0°C", "stdout_lines": ["44.0°C"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005357", "end": "2025-12-17 22:45:17.826231", "msg": "", "rc": 0, "start": "2025-12-17 22:45:17.820874", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005915", "end": "2025-12-17 22:45:17.837854", "msg": "", "rc": 0, "start": "2025-12-17 22:45:17.831939", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003175", "end": "2025-12-17 22:45:17.859023", "msg": "", "rc": 0, "start": "2025-12-17 22:45:17.855848", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.007086", "end": "2025-12-17 22:45:17.879462", "msg": "", "rc": 0, "start": "2025-12-17 22:45:17.872376", "stderr": "", "stderr_lines": [], "stdout": "51.5°C", "stdout_lines": ["51.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002516", "end": "2025-12-17 22:44:51.522875", "msg": "", "rc": 0, "start": "2025-12-17 22:44:51.520359", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003277", "end": "2025-12-17 22:44:44.906102", "msg": "", "rc": 0, "start": "2025-12-17 22:44:44.902825", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011768", "end": "2025-12-17 22:45:18.510158", "msg": "", "rc": 0, "start": "2025-12-17 22:45:18.498390", "stderr": "", "stderr_lines": [], "stdout": "29.2°C", "stdout_lines": ["29.2°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012993", "end": "2025-12-17 22:45:18.574473", "msg": "", "rc": 0, "start": "2025-12-17 22:45:18.561480", "stderr": "", "stderr_lines": [], "stdout": "35.0°C", "stdout_lines": ["35.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003180", "end": "2025-12-17 22:45:18.837488", "msg": "", "rc": 0, "start": "2025-12-17 22:45:18.834308", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003442", "end": "2025-12-17 22:44:48.071052", "msg": "", "rc": 0, "start": "2025-12-17 22:44:48.067610", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002906", "end": "2025-12-17 22:44:54.781581", "msg": "", "rc": 0, "start": "2025-12-17 22:44:54.778675", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003807", "end": "2025-12-17 19:45:19.025906", "msg": "", "rc": 0, "start": "2025-12-17 19:45:19.022099", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004757", "end": "2025-12-17 22:45:19.712316", "msg": "", "rc": 0, "start": "2025-12-17 22:45:19.707559", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003571", "end": "2025-12-17 22:45:19.266592", "msg": "", "rc": 0, "start": "2025-12-17 22:45:19.263021", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028136", "end": "2025-12-17 22:45:19.215797", "msg": "", "rc": 0, "start": "2025-12-17 22:45:19.187661", "stderr": "", "stderr_lines": [], "stdout": "34.3°C", "stdout_lines": ["34.3°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004014", "end": "2025-12-17 22:45:19.735758", "msg": "", "rc": 0, "start": "2025-12-17 22:45:19.731744", "stderr": "", "stderr_lines": [], "stdout": "0.41", "stdout_lines": ["0.41"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004850", "end": "2025-12-17 22:45:19.749480", "msg": "", "rc": 0, "start": "2025-12-17 22:45:19.744630", "stderr": "", "stderr_lines": [], "stdout": "0.85", "stdout_lines": ["0.85"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004137", "end": "2025-12-17 22:45:19.763870", "msg": "", "rc": 0, "start": "2025-12-17 22:45:19.759733", "stderr": "", "stderr_lines": [], "stdout": "0.36", "stdout_lines": ["0.36"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005324", "end": "2025-12-17 22:45:19.788956", "msg": "", "rc": 0, "start": "2025-12-17 22:45:19.783632", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005745", "end": "2025-12-17 22:45:19.807884", "msg": "", "rc": 0, "start": "2025-12-17 22:45:19.802139", "stderr": "", "stderr_lines": [], "stdout": "0.62", "stdout_lines": ["0.62"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004324", "end": "2025-12-17 22:44:53.401144", "msg": "", "rc": 0, "start": "2025-12-17 22:44:53.396820", "stderr": "", "stderr_lines": [], "stdout": "0.04", "stdout_lines": ["0.04"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004811", "end": "2025-12-17 22:44:46.831906", "msg": "", "rc": 0, "start": "2025-12-17 22:44:46.827095", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010204", "end": "2025-12-17 22:45:20.521907", "msg": "", "rc": 0, "start": "2025-12-17 22:45:20.511703", "stderr": "", "stderr_lines": [], "stdout": "0.23", "stdout_lines": ["0.23"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011207", "end": "2025-12-17 22:45:20.559815", "msg": "", "rc": 0, "start": "2025-12-17 22:45:20.548608", "stderr": "", "stderr_lines": [], "stdout": "0.44", "stdout_lines": ["0.44"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005644", "end": "2025-12-17 22:45:20.710102", "msg": "", "rc": 0, "start": "2025-12-17 22:45:20.704458", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004973", "end": "2025-12-17 22:44:49.997255", "msg": "", "rc": 0, "start": "2025-12-17 22:44:49.992282", "stderr": "", "stderr_lines": [], "stdout": "0.59", "stdout_lines": ["0.59"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004429", "end": "2025-12-17 22:44:56.778046", "msg": "", "rc": 0, "start": "2025-12-17 22:44:56.773617", "stderr": "", "stderr_lines": [], "stdout": "0.60", "stdout_lines": ["0.60"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005948", "end": "2025-12-17 19:45:21.020495", "msg": "", "rc": 0, "start": "2025-12-17 19:45:21.014547", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005374", "end": "2025-12-17 22:45:21.123027", "msg": "", "rc": 0, "start": "2025-12-17 22:45:21.117653", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.008211", "end": "2025-12-17 22:45:21.659366", "msg": "", "rc": 0, "start": "2025-12-17 22:45:21.651155", "stderr": "", "stderr_lines": [], "stdout": "1.16", "stdout_lines": ["1.16"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.023942", "end": "2025-12-17 22:45:21.121906", "msg": "", "rc": 0, "start": "2025-12-17 22:45:21.097964", "stderr": "", "stderr_lines": [], "stdout": "0.35", "stdout_lines": ["0.35"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:45:11 up 3 days, 12:17, 1 user, load average: 0.30, 0.20, 0.19\nDisk Usage: 22%\nMemory Usage: 22.7%\nCPU Load: 0.36\nCPU Temp: 44.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:45:11 up 22 days, 9:36, 1 user, load average: 0.39, 0.35, 0.39\nDisk Usage: 23%\nMemory Usage: 78.4%\nCPU Load: 0.41\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:45:11 up 22 days, 9:56, 1 user, load average: 0.67, 0.95, 0.88\nDisk Usage: 14%\nMemory Usage: 48.4%\nCPU Load: 0.85\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:45:11 up 22 days, 11:09, 1 user, load average: 0.67, 0.67, 0.66\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.62\nCPU Temp: 51.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:45:11 up 22 days, 11:55, 1 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:45:13 up 15 days, 12:11, 1 user, load average: 0.23, 0.14, 0.10\nDisk Usage: 21%\nMemory Usage: 20.5%\nCPU Load: 0.35\nCPU Temp: 34.3°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:45:12 up 194 days, 14:18, 1 user, load average: 0.34, 0.23, 0.19\nDisk Usage: 6%\nMemory Usage: 12.8%\nCPU Load: 0.44\nCPU Temp: 35.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:45:12 up 194 days, 14:18, 1 user, load average: 0.19, 0.16, 0.11\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.23\nCPU Temp: 29.2°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:44:45 up 11 days, 10:34, 0 user, load average: 0.04, 0.11, 0.12\nDisk Usage: 48%\nMemory Usage: 71.0%\nCPU Load: 0.04\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:44:39 up 18 days, 6:46, 0 user, load average: 0.00, 0.01, 0.05\nDisk Usage: 25%\nMemory Usage: 69.1%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:45:13 up 3 days, 12:16, 1 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 1%\nMemory Usage: 35.9%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:44:42 up 21 days, 1:39, 0 user, load average: 0.61, 0.43, 0.48\nDisk Usage: 28%\nMemory Usage: 27.2%\nCPU Load: 0.59\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:44:49 up 17 days, 12:00, 0 user, load average: 0.63, 0.71, 0.58\nDisk Usage: 76%\nMemory Usage: 46.2%\nCPU Load: 0.60\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 7:45PM up 22 days, 9:35, 1 user, load averages: 0.12, 0.20, 0.22\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:45:13 up 3 days, 12:16, 1 user, load average: 0.00, 0.02, 0.00\nDisk Usage: 79%\nMemory Usage: 14.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:45:13 up 2:53, 1 user, load average: 1.19, 1.19, 1.15\nDisk Usage: 1%\nMemory Usage: 12.7%\nCPU Load: 1.16\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T03:45:22.549411+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_035022_ae93c0_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_035022_ae93c0_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..17122da --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_035022_ae93c0_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `b40a718d094b4b89ac926cca86960b47` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T03:50:00.001266+00:00 | +| **Fin** | 2025-12-18T03:50:21.966594+00:00 | +| **Durée** | 22.0s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003946", "end": "2025-12-17 22:50:11.723346", "msg": "", "rc": 0, "start": "2025-12-17 22:50:11.719400", "stderr": "", "stderr_lines": [], "stdout": " 22:50:11 up 22 days, 12:00, 1 user, load average: 0.00, 0.01, 0.00", "stdout_lines": [" 22:50:11 up 22 days, 12:00, 1 user, load average: 0.00, 0.01, 0.00"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003607", "end": "2025-12-17 22:50:11.729095", "msg": "", "rc": 0, "start": "2025-12-17 22:50:11.725488", "stderr": "", "stderr_lines": [], "stdout": " 22:50:11 up 22 days, 10:01, 1 user, load average: 1.25, 1.16, 1.00", "stdout_lines": [" 22:50:11 up 22 days, 10:01, 1 user, load average: 1.25, 1.16, 1.00"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002849", "end": "2025-12-17 22:50:11.749866", "msg": "", "rc": 0, "start": "2025-12-17 22:50:11.747017", "stderr": "", "stderr_lines": [], "stdout": " 22:50:11 up 3 days, 12:22, 1 user, load average: 0.04, 0.15, 0.17", "stdout_lines": [" 22:50:11 up 3 days, 12:22, 1 user, load average: 0.04, 0.15, 0.17"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004168", "end": "2025-12-17 22:50:11.758519", "msg": "", "rc": 0, "start": "2025-12-17 22:50:11.754351", "stderr": "", "stderr_lines": [], "stdout": " 22:50:11 up 22 days, 11:14, 1 user, load average: 0.80, 0.72, 0.67", "stdout_lines": [" 22:50:11 up 22 days, 11:14, 1 user, load average: 0.80, 0.72, 0.67"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002875", "end": "2025-12-17 22:49:45.349269", "msg": "", "rc": 0, "start": "2025-12-17 22:49:45.346394", "stderr": "", "stderr_lines": [], "stdout": " 22:49:45 up 11 days, 10:39, 0 user, load average: 0.11, 0.09, 0.09", "stdout_lines": [" 22:49:45 up 11 days, 10:39, 0 user, load average: 0.11, 0.09, 0.09"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008395", "end": "2025-12-17 22:50:12.404045", "msg": "", "rc": 0, "start": "2025-12-17 22:50:12.395650", "stderr": "", "stderr_lines": [], "stdout": " 22:50:12 up 194 days, 14:23, 1 user, load average: 0.21, 0.20, 0.13", "stdout_lines": [" 22:50:12 up 194 days, 14:23, 1 user, load average: 0.21, 0.20, 0.13"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009314", "end": "2025-12-17 22:50:12.472058", "msg": "", "rc": 0, "start": "2025-12-17 22:50:12.462744", "stderr": "", "stderr_lines": [], "stdout": " 22:50:12 up 194 days, 14:23, 1 user, load average: 0.27, 0.25, 0.20", "stdout_lines": [" 22:50:12 up 194 days, 14:23, 1 user, load average: 0.27, 0.25, 0.20"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.003596", "end": "2025-12-17 22:50:12.709143", "msg": "", "rc": 0, "start": "2025-12-17 22:50:11.705547", "stderr": "", "stderr_lines": [], "stdout": " 22:50:11 up 22 days, 9:41, 1 user, load average: 0.29, 0.31, 0.36", "stdout_lines": [" 22:50:11 up 22 days, 9:41, 1 user, load average: 0.29, 0.31, 0.36"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003842", "end": "2025-12-17 22:49:39.235755", "msg": "", "rc": 0, "start": "2025-12-17 22:49:39.231913", "stderr": "", "stderr_lines": [], "stdout": " 22:49:39 up 18 days, 6:51, 0 user, load average: 0.04, 0.03, 0.04", "stdout_lines": [" 22:49:39 up 18 days, 6:51, 0 user, load average: 0.04, 0.03, 0.04"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004835", "end": "2025-12-17 22:50:12.913017", "msg": "", "rc": 0, "start": "2025-12-17 22:50:12.908182", "stderr": "", "stderr_lines": [], "stdout": " 22:50:12 up 3 days, 12:21, 1 user, load average: 0.02, 0.05, 0.02", "stdout_lines": [" 22:50:12 up 3 days, 12:21, 1 user, load average: 0.02, 0.05, 0.02"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003473", "end": "2025-12-17 22:49:42.196093", "msg": "", "rc": 0, "start": "2025-12-17 22:49:42.192620", "stderr": "", "stderr_lines": [], "stdout": " 22:49:42 up 21 days, 1:44, 0 user, load average: 0.64, 0.62, 0.55", "stdout_lines": [" 22:49:42 up 21 days, 1:44, 0 user, load average: 0.64, 0.62, 0.55"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003639", "end": "2025-12-17 22:49:48.923112", "msg": "", "rc": 0, "start": "2025-12-17 22:49:48.919473", "stderr": "", "stderr_lines": [], "stdout": " 22:49:48 up 17 days, 12:05, 0 user, load average: 0.78, 0.67, 0.58", "stdout_lines": [" 22:49:48 up 17 days, 12:05, 0 user, load average: 0.78, 0.67, 0.58"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004154", "end": "2025-12-17 19:50:13.184436", "msg": "", "rc": 0, "start": "2025-12-17 19:50:13.180282", "stderr": "", "stderr_lines": [], "stdout": " 7:50PM up 22 days, 9:40, 1 user, load averages: 0.17, 0.19, 0.20", "stdout_lines": [" 7:50PM up 22 days, 9:40, 1 user, load averages: 0.17, 0.19, 0.20"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019508", "end": "2025-12-17 22:50:13.110042", "msg": "", "rc": 0, "start": "2025-12-17 22:50:13.090534", "stderr": "", "stderr_lines": [], "stdout": " 22:50:13 up 15 days, 12:16, 1 user, load average: 0.22, 0.14, 0.10", "stdout_lines": [" 22:50:13 up 15 days, 12:16, 1 user, load average: 0.22, 0.14, 0.10"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003543", "end": "2025-12-17 22:50:13.325857", "msg": "", "rc": 0, "start": "2025-12-17 22:50:13.322314", "stderr": "", "stderr_lines": [], "stdout": " 22:50:13 up 3 days, 12:21, 1 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 22:50:13 up 3 days, 12:21, 1 user, load average: 0.00, 0.00, 0.00"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008561", "end": "2025-12-17 22:50:13.442053", "msg": "", "rc": 0, "start": "2025-12-17 22:50:13.433492", "stderr": "", "stderr_lines": [], "stdout": " 22:50:13 up 2:58, 1 user, load average: 1.46, 1.22, 1.16", "stdout_lines": [" 22:50:13 up 2:58, 1 user, load average: 1.46, 1.22, 1.16"]} + +TASK [Get disk usage] ********************************************************** +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004105", "end": "2025-12-17 22:50:13.792489", "msg": "", "rc": 0, "start": "2025-12-17 22:50:13.788384", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004219", "end": "2025-12-17 22:50:13.800479", "msg": "", "rc": 0, "start": "2025-12-17 22:50:13.796260", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004821", "end": "2025-12-17 22:50:13.811874", "msg": "", "rc": 0, "start": "2025-12-17 22:50:13.807053", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005476", "end": "2025-12-17 22:50:13.840099", "msg": "", "rc": 0, "start": "2025-12-17 22:50:13.834623", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005973", "end": "2025-12-17 22:50:13.862088", "msg": "", "rc": 0, "start": "2025-12-17 22:50:13.856115", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004884", "end": "2025-12-17 22:49:47.426630", "msg": "", "rc": 0, "start": "2025-12-17 22:49:47.421746", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005626", "end": "2025-12-17 22:49:40.881459", "msg": "", "rc": 0, "start": "2025-12-17 22:49:40.875833", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010448", "end": "2025-12-17 22:50:14.514538", "msg": "", "rc": 0, "start": "2025-12-17 22:50:14.504090", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011715", "end": "2025-12-17 22:50:14.543567", "msg": "", "rc": 0, "start": "2025-12-17 22:50:14.531852", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005643", "end": "2025-12-17 22:50:14.734240", "msg": "", "rc": 0, "start": "2025-12-17 22:50:14.728597", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005440", "end": "2025-12-17 22:49:44.043821", "msg": "", "rc": 0, "start": "2025-12-17 22:49:44.038381", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005331", "end": "2025-12-17 19:50:15.012965", "msg": "", "rc": 0, "start": "2025-12-17 19:50:15.007634", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005287", "end": "2025-12-17 22:49:50.781879", "msg": "", "rc": 0, "start": "2025-12-17 22:49:50.776592", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005296", "end": "2025-12-17 22:50:15.152731", "msg": "", "rc": 0, "start": "2025-12-17 22:50:15.147435", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.020026", "end": "2025-12-17 22:50:15.323582", "msg": "", "rc": 0, "start": "2025-12-17 22:50:15.303556", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025369", "end": "2025-12-17 22:50:15.180575", "msg": "", "rc": 0, "start": "2025-12-17 22:50:15.155206", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004167", "end": "2025-12-17 22:50:15.691965", "msg": "", "rc": 0, "start": "2025-12-17 22:50:15.687798", "stderr": "", "stderr_lines": [], "stdout": "78.4%", "stdout_lines": ["78.4%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004171", "end": "2025-12-17 22:50:15.698665", "msg": "", "rc": 0, "start": "2025-12-17 22:50:15.694494", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004634", "end": "2025-12-17 22:50:15.718942", "msg": "", "rc": 0, "start": "2025-12-17 22:50:15.714308", "stderr": "", "stderr_lines": [], "stdout": "49.2%", "stdout_lines": ["49.2%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005196", "end": "2025-12-17 22:50:15.746657", "msg": "", "rc": 0, "start": "2025-12-17 22:50:15.741461", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005709", "end": "2025-12-17 22:50:15.760485", "msg": "", "rc": 0, "start": "2025-12-17 22:50:15.754776", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003760", "end": "2025-12-17 22:49:49.368211", "msg": "", "rc": 0, "start": "2025-12-17 22:49:49.364451", "stderr": "", "stderr_lines": [], "stdout": "70.8%", "stdout_lines": ["70.8%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004669", "end": "2025-12-17 22:49:42.774578", "msg": "", "rc": 0, "start": "2025-12-17 22:49:42.769909", "stderr": "", "stderr_lines": [], "stdout": "69.2%", "stdout_lines": ["69.2%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011804", "end": "2025-12-17 22:50:16.380616", "msg": "", "rc": 0, "start": "2025-12-17 22:50:16.368812", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011795", "end": "2025-12-17 22:50:16.413557", "msg": "", "rc": 0, "start": "2025-12-17 22:50:16.401762", "stderr": "", "stderr_lines": [], "stdout": "13.2%", "stdout_lines": ["13.2%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005948", "end": "2025-12-17 22:50:16.698226", "msg": "", "rc": 0, "start": "2025-12-17 22:50:16.692278", "stderr": "", "stderr_lines": [], "stdout": "35.6%", "stdout_lines": ["35.6%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004397", "end": "2025-12-17 22:49:45.958913", "msg": "", "rc": 0, "start": "2025-12-17 22:49:45.954516", "stderr": "", "stderr_lines": [], "stdout": "27.2%", "stdout_lines": ["27.2%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005464", "end": "2025-12-17 19:50:16.868631", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 19:50:16.863167", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003685", "end": "2025-12-17 22:49:52.675406", "msg": "", "rc": 0, "start": "2025-12-17 22:49:52.671721", "stderr": "", "stderr_lines": [], "stdout": "51.1%", "stdout_lines": ["51.1%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005410", "end": "2025-12-17 22:50:17.120361", "msg": "", "rc": 0, "start": "2025-12-17 22:50:17.114951", "stderr": "", "stderr_lines": [], "stdout": "13.9%", "stdout_lines": ["13.9%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.009659", "end": "2025-12-17 22:50:17.298223", "msg": "", "rc": 0, "start": "2025-12-17 22:50:17.288564", "stderr": "", "stderr_lines": [], "stdout": "12.7%", "stdout_lines": ["12.7%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025867", "end": "2025-12-17 22:50:17.074419", "msg": "", "rc": 0, "start": "2025-12-17 22:50:17.048552", "stderr": "", "stderr_lines": [], "stdout": "20.1%", "stdout_lines": ["20.1%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005451", "end": "2025-12-17 22:50:17.602702", "msg": "", "rc": 0, "start": "2025-12-17 22:50:17.597251", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005478", "end": "2025-12-17 22:50:17.621252", "msg": "", "rc": 0, "start": "2025-12-17 22:50:17.615774", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005081", "end": "2025-12-17 22:50:17.628064", "msg": "", "rc": 0, "start": "2025-12-17 22:50:17.622983", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003245", "end": "2025-12-17 22:50:17.643008", "msg": "", "rc": 0, "start": "2025-12-17 22:50:17.639763", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006820", "end": "2025-12-17 22:50:17.651371", "msg": "", "rc": 0, "start": "2025-12-17 22:50:17.644551", "stderr": "", "stderr_lines": [], "stdout": "51.5°C", "stdout_lines": ["51.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002995", "end": "2025-12-17 22:49:51.297198", "msg": "", "rc": 0, "start": "2025-12-17 22:49:51.294203", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003241", "end": "2025-12-17 22:49:44.683202", "msg": "", "rc": 0, "start": "2025-12-17 22:49:44.679961", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011695", "end": "2025-12-17 22:50:18.300354", "msg": "", "rc": 0, "start": "2025-12-17 22:50:18.288659", "stderr": "", "stderr_lines": [], "stdout": "31.2°C", "stdout_lines": ["31.2°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013124", "end": "2025-12-17 22:50:18.346093", "msg": "", "rc": 0, "start": "2025-12-17 22:50:18.332969", "stderr": "", "stderr_lines": [], "stdout": "33.6°C", "stdout_lines": ["33.6°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003100", "end": "2025-12-17 22:50:18.596239", "msg": "", "rc": 0, "start": "2025-12-17 22:50:18.593139", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003115", "end": "2025-12-17 22:49:47.841911", "msg": "", "rc": 0, "start": "2025-12-17 22:49:47.838796", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003809", "end": "2025-12-17 19:50:18.798304", "msg": "", "rc": 0, "start": "2025-12-17 19:50:18.794495", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002769", "end": "2025-12-17 22:49:54.562130", "msg": "", "rc": 0, "start": "2025-12-17 22:49:54.559361", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004247", "end": "2025-12-17 22:50:19.142122", "msg": "", "rc": 0, "start": "2025-12-17 22:50:19.137875", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002910", "end": "2025-12-17 22:50:19.014313", "msg": "", "rc": 0, "start": "2025-12-17 22:50:19.011403", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028253", "end": "2025-12-17 22:50:19.002108", "msg": "", "rc": 0, "start": "2025-12-17 22:50:18.973855", "stderr": "", "stderr_lines": [], "stdout": "34.1°C", "stdout_lines": ["34.1°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004059", "end": "2025-12-17 22:50:19.517189", "msg": "", "rc": 0, "start": "2025-12-17 22:50:19.513130", "stderr": "", "stderr_lines": [], "stdout": "0.32", "stdout_lines": ["0.32"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004010", "end": "2025-12-17 22:50:19.533795", "msg": "", "rc": 0, "start": "2025-12-17 22:50:19.529785", "stderr": "", "stderr_lines": [], "stdout": "0.04", "stdout_lines": ["0.04"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004995", "end": "2025-12-17 22:50:19.568500", "msg": "", "rc": 0, "start": "2025-12-17 22:50:19.563505", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005460", "end": "2025-12-17 22:50:19.577126", "msg": "", "rc": 0, "start": "2025-12-17 22:50:19.571666", "stderr": "", "stderr_lines": [], "stdout": "0.74", "stdout_lines": ["0.74"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004754", "end": "2025-12-17 22:50:19.583244", "msg": "", "rc": 0, "start": "2025-12-17 22:50:19.578490", "stderr": "", "stderr_lines": [], "stdout": "1.15", "stdout_lines": ["1.15"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004534", "end": "2025-12-17 22:49:53.201292", "msg": "", "rc": 0, "start": "2025-12-17 22:49:53.196758", "stderr": "", "stderr_lines": [], "stdout": "0.18", "stdout_lines": ["0.18"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004864", "end": "2025-12-17 22:49:46.604426", "msg": "", "rc": 0, "start": "2025-12-17 22:49:46.599562", "stderr": "", "stderr_lines": [], "stdout": "0.03", "stdout_lines": ["0.03"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010086", "end": "2025-12-17 22:50:20.298218", "msg": "", "rc": 0, "start": "2025-12-17 22:50:20.288132", "stderr": "", "stderr_lines": [], "stdout": "0.25", "stdout_lines": ["0.25"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011056", "end": "2025-12-17 22:50:20.331594", "msg": "", "rc": 0, "start": "2025-12-17 22:50:20.320538", "stderr": "", "stderr_lines": [], "stdout": "0.30", "stdout_lines": ["0.30"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005532", "end": "2025-12-17 22:50:20.528328", "msg": "", "rc": 0, "start": "2025-12-17 22:50:20.522796", "stderr": "", "stderr_lines": [], "stdout": "0.02", "stdout_lines": ["0.02"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004749", "end": "2025-12-17 22:49:49.761628", "msg": "", "rc": 0, "start": "2025-12-17 22:49:49.756879", "stderr": "", "stderr_lines": [], "stdout": "0.59", "stdout_lines": ["0.59"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004763", "end": "2025-12-17 22:49:56.542383", "msg": "", "rc": 0, "start": "2025-12-17 22:49:56.537620", "stderr": "", "stderr_lines": [], "stdout": "0.97", "stdout_lines": ["0.97"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005768", "end": "2025-12-17 19:50:20.795105", "msg": "", "rc": 0, "start": "2025-12-17 19:50:20.789337", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005274", "end": "2025-12-17 22:50:20.940247", "msg": "", "rc": 0, "start": "2025-12-17 22:50:20.934973", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.008237", "end": "2025-12-17 22:50:21.124440", "msg": "", "rc": 0, "start": "2025-12-17 22:50:21.116203", "stderr": "", "stderr_lines": [], "stdout": "1.39", "stdout_lines": ["1.39"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024084", "end": "2025-12-17 22:50:20.908076", "msg": "", "rc": 0, "start": "2025-12-17 22:50:20.883992", "stderr": "", "stderr_lines": [], "stdout": "0.26", "stdout_lines": ["0.26"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:50:11 up 3 days, 12:22, 1 user, load average: 0.04, 0.15, 0.17\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.04\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:50:11 up 22 days, 9:41, 1 user, load average: 0.29, 0.31, 0.36\nDisk Usage: 23%\nMemory Usage: 78.4%\nCPU Load: 0.32\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:50:11 up 22 days, 10:01, 1 user, load average: 1.25, 1.16, 1.00\nDisk Usage: 14%\nMemory Usage: 49.2%\nCPU Load: 1.15\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:50:11 up 22 days, 11:14, 1 user, load average: 0.80, 0.72, 0.67\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.74\nCPU Temp: 51.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:50:11 up 22 days, 12:00, 1 user, load average: 0.00, 0.01, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:50:13 up 15 days, 12:16, 1 user, load average: 0.22, 0.14, 0.10\nDisk Usage: 21%\nMemory Usage: 20.1%\nCPU Load: 0.26\nCPU Temp: 34.1°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:50:12 up 194 days, 14:23, 1 user, load average: 0.27, 0.25, 0.20\nDisk Usage: 6%\nMemory Usage: 13.2%\nCPU Load: 0.30\nCPU Temp: 33.6°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:50:12 up 194 days, 14:23, 1 user, load average: 0.21, 0.20, 0.13\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.25\nCPU Temp: 31.2°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:49:45 up 11 days, 10:39, 0 user, load average: 0.11, 0.09, 0.09\nDisk Usage: 48%\nMemory Usage: 70.8%\nCPU Load: 0.18\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:49:39 up 18 days, 6:51, 0 user, load average: 0.04, 0.03, 0.04\nDisk Usage: 25%\nMemory Usage: 69.2%\nCPU Load: 0.03\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:50:12 up 3 days, 12:21, 1 user, load average: 0.02, 0.05, 0.02\nDisk Usage: 1%\nMemory Usage: 35.6%\nCPU Load: 0.02\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:49:42 up 21 days, 1:44, 0 user, load average: 0.64, 0.62, 0.55\nDisk Usage: 28%\nMemory Usage: 27.2%\nCPU Load: 0.59\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:49:48 up 17 days, 12:05, 0 user, load average: 0.78, 0.67, 0.58\nDisk Usage: 76%\nMemory Usage: 51.1%\nCPU Load: 0.97\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 7:50PM up 22 days, 9:40, 1 user, load averages: 0.17, 0.19, 0.20\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:50:13 up 3 days, 12:21, 1 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 79%\nMemory Usage: 13.9%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:50:13 up 2:58, 1 user, load average: 1.46, 1.22, 1.16\nDisk Usage: 1%\nMemory Usage: 12.7%\nCPU Load: 1.39\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T03:50:22.018189+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_035522_72eba0_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_035522_72eba0_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..2c9d7c9 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_035522_72eba0_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `a5e44279219d475597321134fd90c5a5` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T03:55:00.001419+00:00 | +| **Fin** | 2025-12-18T03:55:22.260451+00:00 | +| **Durée** | 22.3s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [hp2.i7.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003234", "end": "2025-12-17 22:55:11.810772", "msg": "", "rc": 0, "start": "2025-12-17 22:55:11.807538", "stderr": "", "stderr_lines": [], "stdout": " 22:55:11 up 22 days, 9:46, 1 user, load average: 0.29, 0.28, 0.33", "stdout_lines": [" 22:55:11 up 22 days, 9:46, 1 user, load average: 0.29, 0.28, 0.33"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003869", "end": "2025-12-17 22:55:11.826011", "msg": "", "rc": 0, "start": "2025-12-17 22:55:11.822142", "stderr": "", "stderr_lines": [], "stdout": " 22:55:11 up 22 days, 12:05, 1 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 22:55:11 up 22 days, 12:05, 1 user, load average: 0.00, 0.00, 0.00"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003761", "end": "2025-12-17 22:55:11.841583", "msg": "", "rc": 0, "start": "2025-12-17 22:55:11.837822", "stderr": "", "stderr_lines": [], "stdout": " 22:55:11 up 22 days, 10:06, 1 user, load average: 1.28, 1.15, 1.03", "stdout_lines": [" 22:55:11 up 22 days, 10:06, 1 user, load average: 1.28, 1.15, 1.03"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002906", "end": "2025-12-17 22:55:11.855656", "msg": "", "rc": 0, "start": "2025-12-17 22:55:11.852750", "stderr": "", "stderr_lines": [], "stdout": " 22:55:11 up 3 days, 12:27, 1 user, load average: 0.09, 0.11, 0.15", "stdout_lines": [" 22:55:11 up 3 days, 12:27, 1 user, load average: 0.09, 0.11, 0.15"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002859", "end": "2025-12-17 22:54:45.434130", "msg": "", "rc": 0, "start": "2025-12-17 22:54:45.431271", "stderr": "", "stderr_lines": [], "stdout": " 22:54:45 up 11 days, 10:44, 0 user, load average: 0.02, 0.09, 0.08", "stdout_lines": [" 22:54:45 up 11 days, 10:44, 0 user, load average: 0.02, 0.09, 0.08"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008539", "end": "2025-12-17 22:55:12.495314", "msg": "", "rc": 0, "start": "2025-12-17 22:55:12.486775", "stderr": "", "stderr_lines": [], "stdout": " 22:55:12 up 194 days, 14:28, 1 user, load average: 0.15, 0.16, 0.12", "stdout_lines": [" 22:55:12 up 194 days, 14:28, 1 user, load average: 0.15, 0.16, 0.12"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009093", "end": "2025-12-17 22:55:12.528066", "msg": "", "rc": 0, "start": "2025-12-17 22:55:12.518973", "stderr": "", "stderr_lines": [], "stdout": " 22:55:12 up 194 days, 14:28, 1 user, load average: 0.26, 0.22, 0.19", "stdout_lines": [" 22:55:12 up 194 days, 14:28, 1 user, load average: 0.26, 0.22, 0.19"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004238", "end": "2025-12-17 22:54:39.317116", "msg": "", "rc": 0, "start": "2025-12-17 22:54:39.312878", "stderr": "", "stderr_lines": [], "stdout": " 22:54:39 up 18 days, 6:56, 0 user, load average: 0.08, 0.04, 0.03", "stdout_lines": [" 22:54:39 up 18 days, 6:56, 0 user, load average: 0.08, 0.04, 0.03"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004849", "end": "2025-12-17 22:55:12.863699", "msg": "", "rc": 0, "start": "2025-12-17 22:55:11.858850", "stderr": "", "stderr_lines": [], "stdout": " 22:55:11 up 22 days, 11:19, 1 user, load average: 0.61, 0.60, 0.62", "stdout_lines": [" 22:55:11 up 22 days, 11:19, 1 user, load average: 0.61, 0.60, 0.62"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004862", "end": "2025-12-17 22:55:12.993045", "msg": "", "rc": 0, "start": "2025-12-17 22:55:12.988183", "stderr": "", "stderr_lines": [], "stdout": " 22:55:12 up 3 days, 12:26, 1 user, load average: 0.02, 0.04, 0.00", "stdout_lines": [" 22:55:12 up 3 days, 12:26, 1 user, load average: 0.02, 0.04, 0.00"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003273", "end": "2025-12-17 22:54:42.237278", "msg": "", "rc": 0, "start": "2025-12-17 22:54:42.234005", "stderr": "", "stderr_lines": [], "stdout": " 22:54:42 up 21 days, 1:49, 0 user, load average: 0.36, 0.52, 0.53", "stdout_lines": [" 22:54:42 up 21 days, 1:49, 0 user, load average: 0.36, 0.52, 0.53"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004212", "end": "2025-12-17 19:55:13.283371", "msg": "", "rc": 0, "start": "2025-12-17 19:55:13.279159", "stderr": "", "stderr_lines": [], "stdout": " 7:55PM up 22 days, 9:45, 1 user, load averages: 0.17, 0.18, 0.18", "stdout_lines": [" 7:55PM up 22 days, 9:45, 1 user, load averages: 0.17, 0.18, 0.18"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019450", "end": "2025-12-17 22:55:13.177761", "msg": "", "rc": 0, "start": "2025-12-17 22:55:13.158311", "stderr": "", "stderr_lines": [], "stdout": " 22:55:13 up 15 days, 12:21, 1 user, load average: 0.18, 0.12, 0.09", "stdout_lines": [" 22:55:13 up 15 days, 12:21, 1 user, load average: 0.18, 0.12, 0.09"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.005277", "end": "2025-12-17 22:54:49.086432", "msg": "", "rc": 0, "start": "2025-12-17 22:54:49.081155", "stderr": "", "stderr_lines": [], "stdout": " 22:54:49 up 17 days, 12:10, 0 user, load average: 0.76, 0.66, 0.61", "stdout_lines": [" 22:54:49 up 17 days, 12:10, 0 user, load average: 0.76, 0.66, 0.61"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003746", "end": "2025-12-17 22:55:13.416541", "msg": "", "rc": 0, "start": "2025-12-17 22:55:13.412795", "stderr": "", "stderr_lines": [], "stdout": " 22:55:13 up 3 days, 12:26, 1 user, load average: 0.35, 0.10, 0.03", "stdout_lines": [" 22:55:13 up 3 days, 12:26, 1 user, load average: 0.35, 0.10, 0.03"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008824", "end": "2025-12-17 22:55:13.725301", "msg": "", "rc": 0, "start": "2025-12-17 22:55:13.716477", "stderr": "", "stderr_lines": [], "stdout": " 22:55:13 up 3:04, 1 user, load average: 1.36, 1.18, 1.15", "stdout_lines": [" 22:55:13 up 3:04, 1 user, load average: 1.36, 1.18, 1.15"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004139", "end": "2025-12-17 22:55:13.823319", "msg": "", "rc": 0, "start": "2025-12-17 22:55:13.819180", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004090", "end": "2025-12-17 22:55:13.830645", "msg": "", "rc": 0, "start": "2025-12-17 22:55:13.826555", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004876", "end": "2025-12-17 22:55:13.860078", "msg": "", "rc": 0, "start": "2025-12-17 22:55:13.855202", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005167", "end": "2025-12-17 22:55:13.876773", "msg": "", "rc": 0, "start": "2025-12-17 22:55:13.871606", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005708", "end": "2025-12-17 22:55:13.892382", "msg": "", "rc": 0, "start": "2025-12-17 22:55:13.886674", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005003", "end": "2025-12-17 22:54:47.504510", "msg": "", "rc": 0, "start": "2025-12-17 22:54:47.499507", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005902", "end": "2025-12-17 22:54:40.941942", "msg": "", "rc": 0, "start": "2025-12-17 22:54:40.936040", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010612", "end": "2025-12-17 22:55:14.587594", "msg": "", "rc": 0, "start": "2025-12-17 22:55:14.576982", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011635", "end": "2025-12-17 22:55:14.601485", "msg": "", "rc": 0, "start": "2025-12-17 22:55:14.589850", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005812", "end": "2025-12-17 22:55:14.823394", "msg": "", "rc": 0, "start": "2025-12-17 22:55:14.817582", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005492", "end": "2025-12-17 22:54:44.132705", "msg": "", "rc": 0, "start": "2025-12-17 22:54:44.127213", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005474", "end": "2025-12-17 19:55:15.052036", "msg": "", "rc": 0, "start": "2025-12-17 19:55:15.046562", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004869", "end": "2025-12-17 22:54:50.851672", "msg": "", "rc": 0, "start": "2025-12-17 22:54:50.846803", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005617", "end": "2025-12-17 22:55:15.241759", "msg": "", "rc": 0, "start": "2025-12-17 22:55:15.236142", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.019743", "end": "2025-12-17 22:55:15.662500", "msg": "", "rc": 0, "start": "2025-12-17 22:55:15.642757", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025160", "end": "2025-12-17 22:55:15.212761", "msg": "", "rc": 0, "start": "2025-12-17 22:55:15.187601", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004221", "end": "2025-12-17 22:55:15.735795", "msg": "", "rc": 0, "start": "2025-12-17 22:55:15.731574", "stderr": "", "stderr_lines": [], "stdout": "78.5%", "stdout_lines": ["78.5%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004148", "end": "2025-12-17 22:55:15.734137", "msg": "", "rc": 0, "start": "2025-12-17 22:55:15.729989", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005168", "end": "2025-12-17 22:55:15.777982", "msg": "", "rc": 0, "start": "2025-12-17 22:55:15.772814", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004548", "end": "2025-12-17 22:55:15.772851", "msg": "", "rc": 0, "start": "2025-12-17 22:55:15.768303", "stderr": "", "stderr_lines": [], "stdout": "49.4%", "stdout_lines": ["49.4%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005641", "end": "2025-12-17 22:55:15.810951", "msg": "", "rc": 0, "start": "2025-12-17 22:55:15.805310", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004276", "end": "2025-12-17 22:54:49.429664", "msg": "", "rc": 0, "start": "2025-12-17 22:54:49.425388", "stderr": "", "stderr_lines": [], "stdout": "71.0%", "stdout_lines": ["71.0%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004409", "end": "2025-12-17 22:54:42.819802", "msg": "", "rc": 0, "start": "2025-12-17 22:54:42.815393", "stderr": "", "stderr_lines": [], "stdout": "69.1%", "stdout_lines": ["69.1%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010991", "end": "2025-12-17 22:55:16.446388", "msg": "", "rc": 0, "start": "2025-12-17 22:55:16.435397", "stderr": "", "stderr_lines": [], "stdout": "6.7%", "stdout_lines": ["6.7%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011997", "end": "2025-12-17 22:55:16.460837", "msg": "", "rc": 0, "start": "2025-12-17 22:55:16.448840", "stderr": "", "stderr_lines": [], "stdout": "13.1%", "stdout_lines": ["13.1%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005805", "end": "2025-12-17 22:55:16.750138", "msg": "", "rc": 0, "start": "2025-12-17 22:55:16.744333", "stderr": "", "stderr_lines": [], "stdout": "35.6%", "stdout_lines": ["35.6%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004896", "end": "2025-12-17 22:54:45.978661", "msg": "", "rc": 0, "start": "2025-12-17 22:54:45.973765", "stderr": "", "stderr_lines": [], "stdout": "27.2%", "stdout_lines": ["27.2%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005029", "end": "2025-12-17 19:55:16.915411", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 19:55:16.910382", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010794", "end": "2025-12-17 22:54:52.716161", "msg": "", "rc": 0, "start": "2025-12-17 22:54:52.705367", "stderr": "", "stderr_lines": [], "stdout": "54.4%", "stdout_lines": ["54.4%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.009105", "end": "2025-12-17 22:55:17.521667", "msg": "", "rc": 0, "start": "2025-12-17 22:55:17.512562", "stderr": "", "stderr_lines": [], "stdout": "12.7%", "stdout_lines": ["12.7%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005607", "end": "2025-12-17 22:55:17.175248", "msg": "", "rc": 0, "start": "2025-12-17 22:55:17.169641", "stderr": "", "stderr_lines": [], "stdout": "13.9%", "stdout_lines": ["13.9%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025564", "end": "2025-12-17 22:55:17.134610", "msg": "", "rc": 0, "start": "2025-12-17 22:55:17.109046", "stderr": "", "stderr_lines": [], "stdout": "20.5%", "stdout_lines": ["20.5%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005699", "end": "2025-12-17 22:55:17.662399", "msg": "", "rc": 0, "start": "2025-12-17 22:55:17.656700", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005090", "end": "2025-12-17 22:55:17.664199", "msg": "", "rc": 0, "start": "2025-12-17 22:55:17.659109", "stderr": "", "stderr_lines": [], "stdout": "45.0°C", "stdout_lines": ["45.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002753", "end": "2025-12-17 22:55:17.701215", "msg": "", "rc": 0, "start": "2025-12-17 22:55:17.698462", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005385", "end": "2025-12-17 22:55:17.701109", "msg": "", "rc": 0, "start": "2025-12-17 22:55:17.695724", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.007179", "end": "2025-12-17 22:55:17.732585", "msg": "", "rc": 0, "start": "2025-12-17 22:55:17.725406", "stderr": "", "stderr_lines": [], "stdout": "51.5°C", "stdout_lines": ["51.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003073", "end": "2025-12-17 22:54:51.379867", "msg": "", "rc": 0, "start": "2025-12-17 22:54:51.376794", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003044", "end": "2025-12-17 22:54:44.752060", "msg": "", "rc": 0, "start": "2025-12-17 22:54:44.749016", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011877", "end": "2025-12-17 22:55:18.355417", "msg": "", "rc": 0, "start": "2025-12-17 22:55:18.343540", "stderr": "", "stderr_lines": [], "stdout": "30.2°C", "stdout_lines": ["30.2°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012979", "end": "2025-12-17 22:55:18.372950", "msg": "", "rc": 0, "start": "2025-12-17 22:55:18.359971", "stderr": "", "stderr_lines": [], "stdout": "34.1°C", "stdout_lines": ["34.1°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003155", "end": "2025-12-17 22:55:18.717265", "msg": "", "rc": 0, "start": "2025-12-17 22:55:18.714110", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003020", "end": "2025-12-17 22:54:47.927804", "msg": "", "rc": 0, "start": "2025-12-17 22:54:47.924784", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003851", "end": "2025-12-17 19:55:18.837372", "msg": "", "rc": 0, "start": "2025-12-17 19:55:18.833521", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003207", "end": "2025-12-17 22:54:54.652144", "msg": "", "rc": 0, "start": "2025-12-17 22:54:54.648937", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004301", "end": "2025-12-17 22:55:19.521487", "msg": "", "rc": 0, "start": "2025-12-17 22:55:19.517186", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002975", "end": "2025-12-17 22:55:19.134541", "msg": "", "rc": 0, "start": "2025-12-17 22:55:19.131566", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028700", "end": "2025-12-17 22:55:19.047399", "msg": "", "rc": 0, "start": "2025-12-17 22:55:19.018699", "stderr": "", "stderr_lines": [], "stdout": "34.0°C", "stdout_lines": ["34.0°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004121", "end": "2025-12-17 22:55:19.551520", "msg": "", "rc": 0, "start": "2025-12-17 22:55:19.547399", "stderr": "", "stderr_lines": [], "stdout": "0.40", "stdout_lines": ["0.40"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004065", "end": "2025-12-17 22:55:19.577999", "msg": "", "rc": 0, "start": "2025-12-17 22:55:19.573934", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004558", "end": "2025-12-17 22:55:19.588720", "msg": "", "rc": 0, "start": "2025-12-17 22:55:19.584162", "stderr": "", "stderr_lines": [], "stdout": "1.26", "stdout_lines": ["1.26"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005048", "end": "2025-12-17 22:55:19.602628", "msg": "", "rc": 0, "start": "2025-12-17 22:55:19.597580", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005618", "end": "2025-12-17 22:55:19.620528", "msg": "", "rc": 0, "start": "2025-12-17 22:55:19.614910", "stderr": "", "stderr_lines": [], "stdout": "0.64", "stdout_lines": ["0.64"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004748", "end": "2025-12-17 22:54:53.220725", "msg": "", "rc": 0, "start": "2025-12-17 22:54:53.215977", "stderr": "", "stderr_lines": [], "stdout": "0.02", "stdout_lines": ["0.02"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005119", "end": "2025-12-17 22:54:46.636298", "msg": "", "rc": 0, "start": "2025-12-17 22:54:46.631179", "stderr": "", "stderr_lines": [], "stdout": "0.15", "stdout_lines": ["0.15"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010161", "end": "2025-12-17 22:55:20.327052", "msg": "", "rc": 0, "start": "2025-12-17 22:55:20.316891", "stderr": "", "stderr_lines": [], "stdout": "0.21", "stdout_lines": ["0.21"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010972", "end": "2025-12-17 22:55:20.393251", "msg": "", "rc": 0, "start": "2025-12-17 22:55:20.382279", "stderr": "", "stderr_lines": [], "stdout": "0.29", "stdout_lines": ["0.29"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005560", "end": "2025-12-17 22:55:20.513453", "msg": "", "rc": 0, "start": "2025-12-17 22:55:20.507893", "stderr": "", "stderr_lines": [], "stdout": "0.02", "stdout_lines": ["0.02"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004899", "end": "2025-12-17 22:54:49.795623", "msg": "", "rc": 0, "start": "2025-12-17 22:54:49.790724", "stderr": "", "stderr_lines": [], "stdout": "0.33", "stdout_lines": ["0.33"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.003940", "end": "2025-12-17 22:54:56.595174", "msg": "", "rc": 0, "start": "2025-12-17 22:54:56.591234", "stderr": "", "stderr_lines": [], "stdout": "1.18", "stdout_lines": ["1.18"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005812", "end": "2025-12-17 19:55:20.844706", "msg": "", "rc": 0, "start": "2025-12-17 19:55:20.838894", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005314", "end": "2025-12-17 22:55:20.932788", "msg": "", "rc": 0, "start": "2025-12-17 22:55:20.927474", "stderr": "", "stderr_lines": [], "stdout": "0.53", "stdout_lines": ["0.53"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.008557", "end": "2025-12-17 22:55:21.424650", "msg": "", "rc": 0, "start": "2025-12-17 22:55:21.416093", "stderr": "", "stderr_lines": [], "stdout": "1.38", "stdout_lines": ["1.38"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024443", "end": "2025-12-17 22:55:20.938039", "msg": "", "rc": 0, "start": "2025-12-17 22:55:20.913596", "stderr": "", "stderr_lines": [], "stdout": "0.22", "stdout_lines": ["0.22"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:55:11 up 3 days, 12:27, 1 user, load average: 0.09, 0.11, 0.15\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.08\nCPU Temp: 45.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:55:11 up 22 days, 9:46, 1 user, load average: 0.29, 0.28, 0.33\nDisk Usage: 23%\nMemory Usage: 78.5%\nCPU Load: 0.40\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:55:11 up 22 days, 10:06, 1 user, load average: 1.28, 1.15, 1.03\nDisk Usage: 14%\nMemory Usage: 49.4%\nCPU Load: 1.26\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:55:11 up 22 days, 11:19, 1 user, load average: 0.61, 0.60, 0.62\nDisk Usage: 14%\nMemory Usage: 59.7%\nCPU Load: 0.64\nCPU Temp: 51.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:55:11 up 22 days, 12:05, 1 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:55:13 up 15 days, 12:21, 1 user, load average: 0.18, 0.12, 0.09\nDisk Usage: 21%\nMemory Usage: 20.5%\nCPU Load: 0.22\nCPU Temp: 34.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:55:12 up 194 days, 14:28, 1 user, load average: 0.26, 0.22, 0.19\nDisk Usage: 6%\nMemory Usage: 13.1%\nCPU Load: 0.29\nCPU Temp: 34.1°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:55:12 up 194 days, 14:28, 1 user, load average: 0.15, 0.16, 0.12\nDisk Usage: 3%\nMemory Usage: 6.7%\nCPU Load: 0.21\nCPU Temp: 30.2°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:54:45 up 11 days, 10:44, 0 user, load average: 0.02, 0.09, 0.08\nDisk Usage: 48%\nMemory Usage: 71.0%\nCPU Load: 0.02\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:54:39 up 18 days, 6:56, 0 user, load average: 0.08, 0.04, 0.03\nDisk Usage: 25%\nMemory Usage: 69.1%\nCPU Load: 0.15\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:55:12 up 3 days, 12:26, 1 user, load average: 0.02, 0.04, 0.00\nDisk Usage: 1%\nMemory Usage: 35.6%\nCPU Load: 0.02\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:54:42 up 21 days, 1:49, 0 user, load average: 0.36, 0.52, 0.53\nDisk Usage: 28%\nMemory Usage: 27.2%\nCPU Load: 0.33\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:54:49 up 17 days, 12:10, 0 user, load average: 0.76, 0.66, 0.61\nDisk Usage: 76%\nMemory Usage: 54.4%\nCPU Load: 1.18\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 7:55PM up 22 days, 9:45, 1 user, load averages: 0.17, 0.18, 0.18\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:55:13 up 3 days, 12:26, 1 user, load average: 0.35, 0.10, 0.03\nDisk Usage: 79%\nMemory Usage: 13.9%\nCPU Load: 0.53\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:55:13 up 3:04, 1 user, load average: 1.36, 1.18, 1.15\nDisk Usage: 1%\nMemory Usage: 12.7%\nCPU Load: 1.38\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T03:55:22.304617+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_040021_114af8_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_040021_114af8_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..c60b80d --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_040021_114af8_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `46d55401466249e5ad8602a58f2f2726` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T04:00:00.000515+00:00 | +| **Fin** | 2025-12-18T04:00:21.281521+00:00 | +| **Durée** | 21.3s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [mimi.pc.home] +ok: [hp.nas.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [hp2.i7.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003478", "end": "2025-12-17 23:00:11.312943", "msg": "", "rc": 0, "start": "2025-12-17 23:00:11.309465", "stderr": "", "stderr_lines": [], "stdout": " 23:00:11 up 22 days, 9:51, 1 user, load average: 0.34, 0.32, 0.34", "stdout_lines": [" 23:00:11 up 22 days, 9:51, 1 user, load average: 0.34, 0.32, 0.34"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003498", "end": "2025-12-17 23:00:11.333157", "msg": "", "rc": 0, "start": "2025-12-17 23:00:11.329659", "stderr": "", "stderr_lines": [], "stdout": " 23:00:11 up 22 days, 12:10, 1 user, load average: 0.04, 0.01, 0.00", "stdout_lines": [" 23:00:11 up 22 days, 12:10, 1 user, load average: 0.04, 0.01, 0.00"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003716", "end": "2025-12-17 23:00:11.346050", "msg": "", "rc": 0, "start": "2025-12-17 23:00:11.342334", "stderr": "", "stderr_lines": [], "stdout": " 23:00:11 up 22 days, 10:11, 1 user, load average: 2.07, 1.46, 1.17", "stdout_lines": [" 23:00:11 up 22 days, 10:11, 1 user, load average: 2.07, 1.46, 1.17"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003907", "end": "2025-12-17 23:00:11.342939", "msg": "", "rc": 0, "start": "2025-12-17 23:00:11.339032", "stderr": "", "stderr_lines": [], "stdout": " 23:00:11 up 22 days, 11:24, 1 user, load average: 0.38, 0.51, 0.58", "stdout_lines": [" 23:00:11 up 22 days, 11:24, 1 user, load average: 0.38, 0.51, 0.58"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003015", "end": "2025-12-17 23:00:11.355316", "msg": "", "rc": 0, "start": "2025-12-17 23:00:11.352301", "stderr": "", "stderr_lines": [], "stdout": " 23:00:11 up 3 days, 12:32, 1 user, load average: 0.22, 0.21, 0.18", "stdout_lines": [" 23:00:11 up 3 days, 12:32, 1 user, load average: 0.22, 0.21, 0.18"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003518", "end": "2025-12-17 22:59:44.962281", "msg": "", "rc": 0, "start": "2025-12-17 22:59:44.958763", "stderr": "", "stderr_lines": [], "stdout": " 22:59:44 up 11 days, 10:49, 0 user, load average: 0.05, 0.07, 0.08", "stdout_lines": [" 22:59:44 up 11 days, 10:49, 0 user, load average: 0.05, 0.07, 0.08"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003442", "end": "2025-12-17 22:59:38.372784", "msg": "", "rc": 0, "start": "2025-12-17 22:59:38.369342", "stderr": "", "stderr_lines": [], "stdout": " 22:59:38 up 18 days, 7:01, 0 user, load average: 0.12, 0.06, 0.03", "stdout_lines": [" 22:59:38 up 18 days, 7:01, 0 user, load average: 0.12, 0.06, 0.03"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008409", "end": "2025-12-17 23:00:12.013976", "msg": "", "rc": 0, "start": "2025-12-17 23:00:12.005567", "stderr": "", "stderr_lines": [], "stdout": " 23:00:12 up 194 days, 14:33, 1 user, load average: 0.35, 0.26, 0.17", "stdout_lines": [" 23:00:12 up 194 days, 14:33, 1 user, load average: 0.35, 0.26, 0.17"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009526", "end": "2025-12-17 23:00:12.024295", "msg": "", "rc": 0, "start": "2025-12-17 23:00:12.014769", "stderr": "", "stderr_lines": [], "stdout": " 23:00:12 up 194 days, 14:33, 1 user, load average: 0.22, 0.18, 0.18", "stdout_lines": [" 23:00:12 up 194 days, 14:33, 1 user, load average: 0.22, 0.18, 0.18"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004785", "end": "2025-12-17 23:00:12.291308", "msg": "", "rc": 0, "start": "2025-12-17 23:00:12.286523", "stderr": "", "stderr_lines": [], "stdout": " 23:00:12 up 3 days, 12:31, 1 user, load average: 0.05, 0.04, 0.00", "stdout_lines": [" 23:00:12 up 3 days, 12:31, 1 user, load average: 0.05, 0.04, 0.00"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003213", "end": "2025-12-17 22:59:41.532921", "msg": "", "rc": 0, "start": "2025-12-17 22:59:41.529708", "stderr": "", "stderr_lines": [], "stdout": " 22:59:41 up 21 days, 1:53, 0 user, load average: 0.77, 0.61, 0.56", "stdout_lines": [" 22:59:41 up 21 days, 1:53, 0 user, load average: 0.77, 0.61, 0.56"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004232", "end": "2025-12-17 20:00:12.481835", "msg": "", "rc": 0, "start": "2025-12-17 20:00:12.477603", "stderr": "", "stderr_lines": [], "stdout": " 8:00PM up 22 days, 9:49, 1 user, load averages: 0.30, 0.20, 0.17", "stdout_lines": [" 8:00PM up 22 days, 9:49, 1 user, load averages: 0.30, 0.20, 0.17"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.006476", "end": "2025-12-17 22:59:48.288006", "msg": "", "rc": 0, "start": "2025-12-17 22:59:48.281530", "stderr": "", "stderr_lines": [], "stdout": " 22:59:48 up 17 days, 12:15, 0 user, load average: 1.49, 1.03, 0.78", "stdout_lines": [" 22:59:48 up 17 days, 12:15, 0 user, load average: 1.49, 1.03, 0.78"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003671", "end": "2025-12-17 23:00:12.699234", "msg": "", "rc": 0, "start": "2025-12-17 23:00:12.695563", "stderr": "", "stderr_lines": [], "stdout": " 23:00:12 up 3 days, 12:31, 1 user, load average: 0.12, 0.22, 0.11", "stdout_lines": [" 23:00:12 up 3 days, 12:31, 1 user, load average: 0.12, 0.22, 0.11"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008885", "end": "2025-12-17 23:00:13.234608", "msg": "", "rc": 0, "start": "2025-12-17 23:00:13.225723", "stderr": "", "stderr_lines": [], "stdout": " 23:00:13 up 3:09, 1 user, load average: 1.16, 1.13, 1.13", "stdout_lines": [" 23:00:13 up 3:09, 1 user, load average: 1.16, 1.13, 1.13"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019373", "end": "2025-12-17 23:00:12.690492", "msg": "", "rc": 0, "start": "2025-12-17 23:00:12.671119", "stderr": "", "stderr_lines": [], "stdout": " 23:00:12 up 15 days, 12:26, 1 user, load average: 0.22, 0.12, 0.10", "stdout_lines": [" 23:00:12 up 15 days, 12:26, 1 user, load average: 0.22, 0.12, 0.10"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004310", "end": "2025-12-17 23:00:13.215988", "msg": "", "rc": 0, "start": "2025-12-17 23:00:13.211678", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004059", "end": "2025-12-17 23:00:13.231068", "msg": "", "rc": 0, "start": "2025-12-17 23:00:13.227009", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004917", "end": "2025-12-17 23:00:13.249621", "msg": "", "rc": 0, "start": "2025-12-17 23:00:13.244704", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004645", "end": "2025-12-17 23:00:13.257502", "msg": "", "rc": 0, "start": "2025-12-17 23:00:13.252857", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.008191", "end": "2025-12-17 23:00:13.284632", "msg": "", "rc": 0, "start": "2025-12-17 23:00:13.276441", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005291", "end": "2025-12-17 22:59:46.873151", "msg": "", "rc": 0, "start": "2025-12-17 22:59:46.867860", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.007161", "end": "2025-12-17 22:59:40.307563", "msg": "", "rc": 0, "start": "2025-12-17 22:59:40.300402", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010578", "end": "2025-12-17 23:00:13.958205", "msg": "", "rc": 0, "start": "2025-12-17 23:00:13.947627", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011418", "end": "2025-12-17 23:00:13.987020", "msg": "", "rc": 0, "start": "2025-12-17 23:00:13.975602", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006361", "end": "2025-12-17 23:00:14.212049", "msg": "", "rc": 0, "start": "2025-12-17 23:00:14.205688", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005577", "end": "2025-12-17 22:59:43.514083", "msg": "", "rc": 0, "start": "2025-12-17 22:59:43.508506", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005227", "end": "2025-12-17 20:00:14.459930", "msg": "", "rc": 0, "start": "2025-12-17 20:00:14.454703", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.008106", "end": "2025-12-17 22:59:50.269801", "msg": "", "rc": 0, "start": "2025-12-17 22:59:50.261695", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005291", "end": "2025-12-17 23:00:14.630172", "msg": "", "rc": 0, "start": "2025-12-17 23:00:14.624881", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025529", "end": "2025-12-17 23:00:14.586804", "msg": "", "rc": 0, "start": "2025-12-17 23:00:14.561275", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.018728", "end": "2025-12-17 23:00:14.742527", "msg": "", "rc": 0, "start": "2025-12-17 23:00:14.723799", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004246", "end": "2025-12-17 23:00:15.102262", "msg": "", "rc": 0, "start": "2025-12-17 23:00:15.098016", "stderr": "", "stderr_lines": [], "stdout": "78.5%", "stdout_lines": ["78.5%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004183", "end": "2025-12-17 23:00:15.120133", "msg": "", "rc": 0, "start": "2025-12-17 23:00:15.115950", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004799", "end": "2025-12-17 23:00:15.131620", "msg": "", "rc": 0, "start": "2025-12-17 23:00:15.126821", "stderr": "", "stderr_lines": [], "stdout": "49.3%", "stdout_lines": ["49.3%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004704", "end": "2025-12-17 23:00:15.150128", "msg": "", "rc": 0, "start": "2025-12-17 23:00:15.145424", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005761", "end": "2025-12-17 23:00:15.183648", "msg": "", "rc": 0, "start": "2025-12-17 23:00:15.177887", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004308", "end": "2025-12-17 22:59:48.769322", "msg": "", "rc": 0, "start": "2025-12-17 22:59:48.765014", "stderr": "", "stderr_lines": [], "stdout": "71.0%", "stdout_lines": ["71.0%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005939", "end": "2025-12-17 22:59:42.204372", "msg": "", "rc": 0, "start": "2025-12-17 22:59:42.198433", "stderr": "", "stderr_lines": [], "stdout": "69.4%", "stdout_lines": ["69.4%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010957", "end": "2025-12-17 23:00:15.779671", "msg": "", "rc": 0, "start": "2025-12-17 23:00:15.768714", "stderr": "", "stderr_lines": [], "stdout": "6.7%", "stdout_lines": ["6.7%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012590", "end": "2025-12-17 23:00:15.819064", "msg": "", "rc": 0, "start": "2025-12-17 23:00:15.806474", "stderr": "", "stderr_lines": [], "stdout": "13.0%", "stdout_lines": ["13.0%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006435", "end": "2025-12-17 23:00:16.108787", "msg": "", "rc": 0, "start": "2025-12-17 23:00:16.102352", "stderr": "", "stderr_lines": [], "stdout": "35.6%", "stdout_lines": ["35.6%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005415", "end": "2025-12-17 20:00:16.303170", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 20:00:16.297755", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004452", "end": "2025-12-17 22:59:45.406895", "msg": "", "rc": 0, "start": "2025-12-17 22:59:45.402443", "stderr": "", "stderr_lines": [], "stdout": "27.1%", "stdout_lines": ["27.1%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006444", "end": "2025-12-17 22:59:52.074596", "msg": "", "rc": 0, "start": "2025-12-17 22:59:52.068152", "stderr": "", "stderr_lines": [], "stdout": "55.5%", "stdout_lines": ["55.5%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005355", "end": "2025-12-17 23:00:16.525189", "msg": "", "rc": 0, "start": "2025-12-17 23:00:16.519834", "stderr": "", "stderr_lines": [], "stdout": "13.8%", "stdout_lines": ["13.8%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010414", "end": "2025-12-17 23:00:16.636315", "msg": "", "rc": 0, "start": "2025-12-17 23:00:16.625901", "stderr": "", "stderr_lines": [], "stdout": "12.8%", "stdout_lines": ["12.8%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025805", "end": "2025-12-17 23:00:16.476034", "msg": "", "rc": 0, "start": "2025-12-17 23:00:16.450229", "stderr": "", "stderr_lines": [], "stdout": "20.7%", "stdout_lines": ["20.7%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005339", "end": "2025-12-17 23:00:16.999526", "msg": "", "rc": 0, "start": "2025-12-17 23:00:16.994187", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004976", "end": "2025-12-17 23:00:17.034227", "msg": "", "rc": 0, "start": "2025-12-17 23:00:17.029251", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005720", "end": "2025-12-17 23:00:17.047187", "msg": "", "rc": 0, "start": "2025-12-17 23:00:17.041467", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003113", "end": "2025-12-17 23:00:17.058392", "msg": "", "rc": 0, "start": "2025-12-17 23:00:17.055279", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006853", "end": "2025-12-17 23:00:17.095468", "msg": "", "rc": 0, "start": "2025-12-17 23:00:17.088615", "stderr": "", "stderr_lines": [], "stdout": "51.0°C", "stdout_lines": ["51.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002665", "end": "2025-12-17 22:59:50.661598", "msg": "", "rc": 0, "start": "2025-12-17 22:59:50.658933", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003494", "end": "2025-12-17 22:59:44.113880", "msg": "", "rc": 0, "start": "2025-12-17 22:59:44.110386", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011652", "end": "2025-12-17 23:00:17.705432", "msg": "", "rc": 0, "start": "2025-12-17 23:00:17.693780", "stderr": "", "stderr_lines": [], "stdout": "28.7°C", "stdout_lines": ["28.7°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012966", "end": "2025-12-17 23:00:17.744191", "msg": "", "rc": 0, "start": "2025-12-17 23:00:17.731225", "stderr": "", "stderr_lines": [], "stdout": "34.6°C", "stdout_lines": ["34.6°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003735", "end": "2025-12-17 23:00:17.984766", "msg": "", "rc": 0, "start": "2025-12-17 23:00:17.981031", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003105", "end": "2025-12-17 22:59:47.308001", "msg": "", "rc": 0, "start": "2025-12-17 22:59:47.304896", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003843", "end": "2025-12-17 20:00:18.218722", "msg": "", "rc": 0, "start": "2025-12-17 20:00:18.214879", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002889", "end": "2025-12-17 22:59:54.022655", "msg": "", "rc": 0, "start": "2025-12-17 22:59:54.019766", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003006", "end": "2025-12-17 23:00:18.401683", "msg": "", "rc": 0, "start": "2025-12-17 23:00:18.398677", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004013", "end": "2025-12-17 23:00:18.575656", "msg": "", "rc": 0, "start": "2025-12-17 23:00:18.571643", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028207", "end": "2025-12-17 23:00:18.396582", "msg": "", "rc": 0, "start": "2025-12-17 23:00:18.368375", "stderr": "", "stderr_lines": [], "stdout": "34.1°C", "stdout_lines": ["34.1°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004052", "end": "2025-12-17 23:00:18.911767", "msg": "", "rc": 0, "start": "2025-12-17 23:00:18.907715", "stderr": "", "stderr_lines": [], "stdout": "0.44", "stdout_lines": ["0.44"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004016", "end": "2025-12-17 23:00:18.917470", "msg": "", "rc": 0, "start": "2025-12-17 23:00:18.913454", "stderr": "", "stderr_lines": [], "stdout": "0.28", "stdout_lines": ["0.28"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005310", "end": "2025-12-17 23:00:18.972906", "msg": "", "rc": 0, "start": "2025-12-17 23:00:18.967596", "stderr": "", "stderr_lines": [], "stdout": "0.12", "stdout_lines": ["0.12"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005533", "end": "2025-12-17 23:00:18.966276", "msg": "", "rc": 0, "start": "2025-12-17 23:00:18.960743", "stderr": "", "stderr_lines": [], "stdout": "0.75", "stdout_lines": ["0.75"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006121", "end": "2025-12-17 23:00:18.991989", "msg": "", "rc": 0, "start": "2025-12-17 23:00:18.985868", "stderr": "", "stderr_lines": [], "stdout": "2.05", "stdout_lines": ["2.05"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004037", "end": "2025-12-17 22:59:52.594700", "msg": "", "rc": 0, "start": "2025-12-17 22:59:52.590663", "stderr": "", "stderr_lines": [], "stdout": "0.13", "stdout_lines": ["0.13"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005190", "end": "2025-12-17 22:59:45.991227", "msg": "", "rc": 0, "start": "2025-12-17 22:59:45.986037", "stderr": "", "stderr_lines": [], "stdout": "0.11", "stdout_lines": ["0.11"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.009928", "end": "2025-12-17 23:00:19.701944", "msg": "", "rc": 0, "start": "2025-12-17 23:00:19.692016", "stderr": "", "stderr_lines": [], "stdout": "0.41", "stdout_lines": ["0.41"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011107", "end": "2025-12-17 23:00:19.722611", "msg": "", "rc": 0, "start": "2025-12-17 23:00:19.711504", "stderr": "", "stderr_lines": [], "stdout": "0.21", "stdout_lines": ["0.21"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005893", "end": "2025-12-17 23:00:19.908076", "msg": "", "rc": 0, "start": "2025-12-17 23:00:19.902183", "stderr": "", "stderr_lines": [], "stdout": "0.05", "stdout_lines": ["0.05"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005011", "end": "2025-12-17 22:59:49.160590", "msg": "", "rc": 0, "start": "2025-12-17 22:59:49.155579", "stderr": "", "stderr_lines": [], "stdout": "0.87", "stdout_lines": ["0.87"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005758", "end": "2025-12-17 20:00:20.198944", "msg": "", "rc": 0, "start": "2025-12-17 20:00:20.193186", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005044", "end": "2025-12-17 22:59:55.988863", "msg": "", "rc": 0, "start": "2025-12-17 22:59:55.983819", "stderr": "", "stderr_lines": [], "stdout": "1.45", "stdout_lines": ["1.45"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005296", "end": "2025-12-17 23:00:20.317095", "msg": "", "rc": 0, "start": "2025-12-17 23:00:20.311799", "stderr": "", "stderr_lines": [], "stdout": "0.18", "stdout_lines": ["0.18"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.007280", "end": "2025-12-17 23:00:20.472973", "msg": "", "rc": 0, "start": "2025-12-17 23:00:20.465693", "stderr": "", "stderr_lines": [], "stdout": "1.14", "stdout_lines": ["1.14"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024212", "end": "2025-12-17 23:00:20.295326", "msg": "", "rc": 0, "start": "2025-12-17 23:00:20.271114", "stderr": "", "stderr_lines": [], "stdout": "0.26", "stdout_lines": ["0.26"]} + +TASK [Display health status] *************************************************** +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:00:11 up 22 days, 9:51, 1 user, load average: 0.34, 0.32, 0.34\nDisk Usage: 23%\nMemory Usage: 78.5%\nCPU Load: 0.44\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:00:11 up 3 days, 12:32, 1 user, load average: 0.22, 0.21, 0.18\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.28\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:00:11 up 22 days, 10:11, 1 user, load average: 2.07, 1.46, 1.17\nDisk Usage: 14%\nMemory Usage: 49.3%\nCPU Load: 2.05\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:00:11 up 22 days, 11:24, 1 user, load average: 0.38, 0.51, 0.58\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.75\nCPU Temp: 51.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:00:11 up 22 days, 12:10, 1 user, load average: 0.04, 0.01, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.12\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:00:12 up 15 days, 12:26, 1 user, load average: 0.22, 0.12, 0.10\nDisk Usage: 21%\nMemory Usage: 20.7%\nCPU Load: 0.26\nCPU Temp: 34.1°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:00:12 up 194 days, 14:33, 1 user, load average: 0.22, 0.18, 0.18\nDisk Usage: 6%\nMemory Usage: 13.0%\nCPU Load: 0.21\nCPU Temp: 34.6°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:00:12 up 194 days, 14:33, 1 user, load average: 0.35, 0.26, 0.17\nDisk Usage: 3%\nMemory Usage: 6.7%\nCPU Load: 0.41\nCPU Temp: 28.7°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:59:44 up 11 days, 10:49, 0 user, load average: 0.05, 0.07, 0.08\nDisk Usage: 48%\nMemory Usage: 71.0%\nCPU Load: 0.13\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:59:38 up 18 days, 7:01, 0 user, load average: 0.12, 0.06, 0.03\nDisk Usage: 25%\nMemory Usage: 69.4%\nCPU Load: 0.11\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:00:12 up 3 days, 12:31, 1 user, load average: 0.05, 0.04, 0.00\nDisk Usage: 1%\nMemory Usage: 35.6%\nCPU Load: 0.05\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:59:41 up 21 days, 1:53, 0 user, load average: 0.77, 0.61, 0.56\nDisk Usage: 28%\nMemory Usage: 27.1%\nCPU Load: 0.87\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 22:59:48 up 17 days, 12:15, 0 user, load average: 1.49, 1.03, 0.78\nDisk Usage: 76%\nMemory Usage: 55.5%\nCPU Load: 1.45\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 8:00PM up 22 days, 9:49, 1 user, load averages: 0.30, 0.20, 0.17\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:00:12 up 3 days, 12:31, 1 user, load average: 0.12, 0.22, 0.11\nDisk Usage: 79%\nMemory Usage: 13.8%\nCPU Load: 0.18\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:00:13 up 3:09, 1 user, load average: 1.16, 1.13, 1.13\nDisk Usage: 1%\nMemory Usage: 12.8%\nCPU Load: 1.14\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T04:00:21.330219+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_040522_10d661_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_040522_10d661_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..3d41355 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_040522_10d661_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `a8afed314db4490daeae7e569ff92a61` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T04:05:00.001600+00:00 | +| **Fin** | 2025-12-18T04:05:22.241733+00:00 | +| **Durée** | 22.2s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [dev.prod.home] +ok: [hp.truenas.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003847", "end": "2025-12-17 23:05:11.829726", "msg": "", "rc": 0, "start": "2025-12-17 23:05:11.825879", "stderr": "", "stderr_lines": [], "stdout": " 23:05:11 up 22 days, 12:15, 1 user, load average: 0.00, 0.02, 0.00", "stdout_lines": [" 23:05:11 up 22 days, 12:15, 1 user, load average: 0.00, 0.02, 0.00"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003243", "end": "2025-12-17 23:05:11.841261", "msg": "", "rc": 0, "start": "2025-12-17 23:05:11.838018", "stderr": "", "stderr_lines": [], "stdout": " 23:05:11 up 22 days, 10:16, 1 user, load average: 1.37, 1.56, 1.31", "stdout_lines": [" 23:05:11 up 22 days, 10:16, 1 user, load average: 1.37, 1.56, 1.31"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003809", "end": "2025-12-17 23:05:11.846837", "msg": "", "rc": 0, "start": "2025-12-17 23:05:11.843028", "stderr": "", "stderr_lines": [], "stdout": " 23:05:11 up 22 days, 11:29, 1 user, load average: 0.77, 0.61, 0.60", "stdout_lines": [" 23:05:11 up 22 days, 11:29, 1 user, load average: 0.77, 0.61, 0.60"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002810", "end": "2025-12-17 23:05:11.858769", "msg": "", "rc": 0, "start": "2025-12-17 23:05:11.855959", "stderr": "", "stderr_lines": [], "stdout": " 23:05:11 up 3 days, 12:37, 1 user, load average: 0.23, 0.15, 0.16", "stdout_lines": [" 23:05:11 up 3 days, 12:37, 1 user, load average: 0.23, 0.15, 0.16"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002991", "end": "2025-12-17 23:04:45.444575", "msg": "", "rc": 0, "start": "2025-12-17 23:04:45.441584", "stderr": "", "stderr_lines": [], "stdout": " 23:04:45 up 11 days, 10:54, 0 user, load average: 0.20, 0.15, 0.10", "stdout_lines": [" 23:04:45 up 11 days, 10:54, 0 user, load average: 0.20, 0.15, 0.10"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008673", "end": "2025-12-17 23:05:12.506630", "msg": "", "rc": 0, "start": "2025-12-17 23:05:12.497957", "stderr": "", "stderr_lines": [], "stdout": " 23:05:12 up 194 days, 14:38, 1 user, load average: 0.22, 0.20, 0.17", "stdout_lines": [" 23:05:12 up 194 days, 14:38, 1 user, load average: 0.22, 0.20, 0.17"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009210", "end": "2025-12-17 23:05:12.547503", "msg": "", "rc": 0, "start": "2025-12-17 23:05:12.538293", "stderr": "", "stderr_lines": [], "stdout": " 23:05:12 up 194 days, 14:38, 1 user, load average: 0.44, 0.25, 0.20", "stdout_lines": [" 23:05:12 up 194 days, 14:38, 1 user, load average: 0.44, 0.25, 0.20"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004329", "end": "2025-12-17 23:05:12.819102", "msg": "", "rc": 0, "start": "2025-12-17 23:05:11.814773", "stderr": "", "stderr_lines": [], "stdout": " 23:05:11 up 22 days, 9:56, 1 user, load average: 0.17, 0.25, 0.31", "stdout_lines": [" 23:05:11 up 22 days, 9:56, 1 user, load average: 0.17, 0.25, 0.31"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003670", "end": "2025-12-17 23:04:39.311249", "msg": "", "rc": 0, "start": "2025-12-17 23:04:39.307579", "stderr": "", "stderr_lines": [], "stdout": " 23:04:39 up 18 days, 7:06, 0 user, load average: 0.08, 0.05, 0.02", "stdout_lines": [" 23:04:39 up 18 days, 7:06, 0 user, load average: 0.08, 0.05, 0.02"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004645", "end": "2025-12-17 23:05:13.017594", "msg": "", "rc": 0, "start": "2025-12-17 23:05:13.012949", "stderr": "", "stderr_lines": [], "stdout": " 23:05:13 up 3 days, 12:36, 1 user, load average: 0.15, 0.06, 0.01", "stdout_lines": [" 23:05:13 up 3 days, 12:36, 1 user, load average: 0.15, 0.06, 0.01"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003406", "end": "2025-12-17 23:04:42.290072", "msg": "", "rc": 0, "start": "2025-12-17 23:04:42.286666", "stderr": "", "stderr_lines": [], "stdout": " 23:04:42 up 21 days, 1:59, 0 user, load average: 0.30, 0.49, 0.52", "stdout_lines": [" 23:04:42 up 21 days, 1:59, 0 user, load average: 0.30, 0.49, 0.52"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004222", "end": "2025-12-17 20:05:13.270702", "msg": "", "rc": 0, "start": "2025-12-17 20:05:13.266480", "stderr": "", "stderr_lines": [], "stdout": " 8:05PM up 22 days, 9:55, 1 user, load averages: 0.16, 0.17, 0.16", "stdout_lines": [" 8:05PM up 22 days, 9:55, 1 user, load averages: 0.16, 0.17, 0.16"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002859", "end": "2025-12-17 23:04:49.026242", "msg": "", "rc": 0, "start": "2025-12-17 23:04:49.023383", "stderr": "", "stderr_lines": [], "stdout": " 23:04:49 up 17 days, 12:20, 0 user, load average: 0.85, 1.03, 0.87", "stdout_lines": [" 23:04:49 up 17 days, 12:20, 0 user, load average: 0.85, 1.03, 0.87"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019279", "end": "2025-12-17 23:05:13.204768", "msg": "", "rc": 0, "start": "2025-12-17 23:05:13.185489", "stderr": "", "stderr_lines": [], "stdout": " 23:05:13 up 15 days, 12:31, 1 user, load average: 0.17, 0.10, 0.09", "stdout_lines": [" 23:05:13 up 15 days, 12:31, 1 user, load average: 0.17, 0.10, 0.09"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003803", "end": "2025-12-17 23:05:13.423527", "msg": "", "rc": 0, "start": "2025-12-17 23:05:13.419724", "stderr": "", "stderr_lines": [], "stdout": " 23:05:13 up 3 days, 12:36, 1 user, load average: 0.16, 0.13, 0.09", "stdout_lines": [" 23:05:13 up 3 days, 12:36, 1 user, load average: 0.16, 0.13, 0.09"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008224", "end": "2025-12-17 23:05:13.736188", "msg": "", "rc": 0, "start": "2025-12-17 23:05:13.727964", "stderr": "", "stderr_lines": [], "stdout": " 23:05:13 up 3:14, 1 user, load average: 1.13, 1.11, 1.12", "stdout_lines": [" 23:05:13 up 3:14, 1 user, load average: 1.13, 1.11, 1.12"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004241", "end": "2025-12-17 23:05:13.877901", "msg": "", "rc": 0, "start": "2025-12-17 23:05:13.873660", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004062", "end": "2025-12-17 23:05:13.890626", "msg": "", "rc": 0, "start": "2025-12-17 23:05:13.886564", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004723", "end": "2025-12-17 23:05:13.904114", "msg": "", "rc": 0, "start": "2025-12-17 23:05:13.899391", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004855", "end": "2025-12-17 23:05:13.922685", "msg": "", "rc": 0, "start": "2025-12-17 23:05:13.917830", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005522", "end": "2025-12-17 23:05:13.928484", "msg": "", "rc": 0, "start": "2025-12-17 23:05:13.922962", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004900", "end": "2025-12-17 23:04:47.497591", "msg": "", "rc": 0, "start": "2025-12-17 23:04:47.492691", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006593", "end": "2025-12-17 23:04:40.935865", "msg": "", "rc": 0, "start": "2025-12-17 23:04:40.929272", "stderr": "", "stderr_lines": [], "stdout": "24%", "stdout_lines": ["24%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010477", "end": "2025-12-17 23:05:14.598680", "msg": "", "rc": 0, "start": "2025-12-17 23:05:14.588203", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011557", "end": "2025-12-17 23:05:14.663263", "msg": "", "rc": 0, "start": "2025-12-17 23:05:14.651706", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005719", "end": "2025-12-17 23:05:14.821574", "msg": "", "rc": 0, "start": "2025-12-17 23:05:14.815855", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005478", "end": "2025-12-17 23:04:44.104375", "msg": "", "rc": 0, "start": "2025-12-17 23:04:44.098897", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005599", "end": "2025-12-17 23:04:50.852095", "msg": "", "rc": 0, "start": "2025-12-17 23:04:50.846496", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005446", "end": "2025-12-17 20:05:15.128660", "msg": "", "rc": 0, "start": "2025-12-17 20:05:15.123214", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005546", "end": "2025-12-17 23:05:15.246123", "msg": "", "rc": 0, "start": "2025-12-17 23:05:15.240577", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.019717", "end": "2025-12-17 23:05:15.592859", "msg": "", "rc": 0, "start": "2025-12-17 23:05:15.573142", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025147", "end": "2025-12-17 23:05:15.253523", "msg": "", "rc": 0, "start": "2025-12-17 23:05:15.228376", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004312", "end": "2025-12-17 23:05:15.751287", "msg": "", "rc": 0, "start": "2025-12-17 23:05:15.746975", "stderr": "", "stderr_lines": [], "stdout": "78.5%", "stdout_lines": ["78.5%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004213", "end": "2025-12-17 23:05:15.774279", "msg": "", "rc": 0, "start": "2025-12-17 23:05:15.770066", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004770", "end": "2025-12-17 23:05:15.794852", "msg": "", "rc": 0, "start": "2025-12-17 23:05:15.790082", "stderr": "", "stderr_lines": [], "stdout": "49.0%", "stdout_lines": ["49.0%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004450", "end": "2025-12-17 23:05:15.808354", "msg": "", "rc": 0, "start": "2025-12-17 23:05:15.803904", "stderr": "", "stderr_lines": [], "stdout": "9.1%", "stdout_lines": ["9.1%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005676", "end": "2025-12-17 23:05:15.830042", "msg": "", "rc": 0, "start": "2025-12-17 23:05:15.824366", "stderr": "", "stderr_lines": [], "stdout": "60.0%", "stdout_lines": ["60.0%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003934", "end": "2025-12-17 23:04:49.444157", "msg": "", "rc": 0, "start": "2025-12-17 23:04:49.440223", "stderr": "", "stderr_lines": [], "stdout": "70.9%", "stdout_lines": ["70.9%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005290", "end": "2025-12-17 23:04:42.850405", "msg": "", "rc": 0, "start": "2025-12-17 23:04:42.845115", "stderr": "", "stderr_lines": [], "stdout": "70.1%", "stdout_lines": ["70.1%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010947", "end": "2025-12-17 23:05:16.451341", "msg": "", "rc": 0, "start": "2025-12-17 23:05:16.440394", "stderr": "", "stderr_lines": [], "stdout": "6.9%", "stdout_lines": ["6.9%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012077", "end": "2025-12-17 23:05:16.492393", "msg": "", "rc": 0, "start": "2025-12-17 23:05:16.480316", "stderr": "", "stderr_lines": [], "stdout": "13.4%", "stdout_lines": ["13.4%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005742", "end": "2025-12-17 23:05:16.774090", "msg": "", "rc": 0, "start": "2025-12-17 23:05:16.768348", "stderr": "", "stderr_lines": [], "stdout": "35.6%", "stdout_lines": ["35.6%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003492", "end": "2025-12-17 23:04:52.696270", "msg": "", "rc": 0, "start": "2025-12-17 23:04:52.692778", "stderr": "", "stderr_lines": [], "stdout": "56.3%", "stdout_lines": ["56.3%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005180", "end": "2025-12-17 20:05:16.950011", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 20:05:16.944831", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004497", "end": "2025-12-17 23:04:46.050399", "msg": "", "rc": 0, "start": "2025-12-17 23:04:46.045902", "stderr": "", "stderr_lines": [], "stdout": "26.6%", "stdout_lines": ["26.6%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005451", "end": "2025-12-17 23:05:17.191792", "msg": "", "rc": 0, "start": "2025-12-17 23:05:17.186341", "stderr": "", "stderr_lines": [], "stdout": "13.9%", "stdout_lines": ["13.9%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.009360", "end": "2025-12-17 23:05:17.531360", "msg": "", "rc": 0, "start": "2025-12-17 23:05:17.522000", "stderr": "", "stderr_lines": [], "stdout": "12.9%", "stdout_lines": ["12.9%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025865", "end": "2025-12-17 23:05:17.144182", "msg": "", "rc": 0, "start": "2025-12-17 23:05:17.118317", "stderr": "", "stderr_lines": [], "stdout": "20.5%", "stdout_lines": ["20.5%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005983", "end": "2025-12-17 23:05:17.670936", "msg": "", "rc": 0, "start": "2025-12-17 23:05:17.664953", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005031", "end": "2025-12-17 23:05:17.675270", "msg": "", "rc": 0, "start": "2025-12-17 23:05:17.670239", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005653", "end": "2025-12-17 23:05:17.693684", "msg": "", "rc": 0, "start": "2025-12-17 23:05:17.688031", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003158", "end": "2025-12-17 23:05:17.693710", "msg": "", "rc": 0, "start": "2025-12-17 23:05:17.690552", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006937", "end": "2025-12-17 23:05:17.737745", "msg": "", "rc": 0, "start": "2025-12-17 23:05:17.730808", "stderr": "", "stderr_lines": [], "stdout": "51.5°C", "stdout_lines": ["51.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002908", "end": "2025-12-17 23:04:51.342928", "msg": "", "rc": 0, "start": "2025-12-17 23:04:51.340020", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003244", "end": "2025-12-17 23:04:44.772127", "msg": "", "rc": 0, "start": "2025-12-17 23:04:44.768883", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011749", "end": "2025-12-17 23:05:18.342662", "msg": "", "rc": 0, "start": "2025-12-17 23:05:18.330913", "stderr": "", "stderr_lines": [], "stdout": "31.2°C", "stdout_lines": ["31.2°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012947", "end": "2025-12-17 23:05:18.379478", "msg": "", "rc": 0, "start": "2025-12-17 23:05:18.366531", "stderr": "", "stderr_lines": [], "stdout": "33.6°C", "stdout_lines": ["33.6°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003131", "end": "2025-12-17 23:05:18.682585", "msg": "", "rc": 0, "start": "2025-12-17 23:05:18.679454", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002899", "end": "2025-12-17 23:04:54.587370", "msg": "", "rc": 0, "start": "2025-12-17 23:04:54.584471", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004008", "end": "2025-12-17 20:05:18.840379", "msg": "", "rc": 0, "start": "2025-12-17 20:05:18.836371", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003113", "end": "2025-12-17 23:04:47.973650", "msg": "", "rc": 0, "start": "2025-12-17 23:04:47.970537", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002903", "end": "2025-12-17 23:05:19.098239", "msg": "", "rc": 0, "start": "2025-12-17 23:05:19.095336", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004167", "end": "2025-12-17 23:05:19.478372", "msg": "", "rc": 0, "start": "2025-12-17 23:05:19.474205", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028701", "end": "2025-12-17 23:05:19.061007", "msg": "", "rc": 0, "start": "2025-12-17 23:05:19.032306", "stderr": "", "stderr_lines": [], "stdout": "34.1°C", "stdout_lines": ["34.1°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004153", "end": "2025-12-17 23:05:19.574103", "msg": "", "rc": 0, "start": "2025-12-17 23:05:19.569950", "stderr": "", "stderr_lines": [], "stdout": "0.30", "stdout_lines": ["0.30"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004181", "end": "2025-12-17 23:05:19.590750", "msg": "", "rc": 0, "start": "2025-12-17 23:05:19.586569", "stderr": "", "stderr_lines": [], "stdout": "0.21", "stdout_lines": ["0.21"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004707", "end": "2025-12-17 23:05:19.614342", "msg": "", "rc": 0, "start": "2025-12-17 23:05:19.609635", "stderr": "", "stderr_lines": [], "stdout": "1.34", "stdout_lines": ["1.34"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004649", "end": "2025-12-17 23:05:19.636483", "msg": "", "rc": 0, "start": "2025-12-17 23:05:19.631834", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005936", "end": "2025-12-17 23:05:19.656299", "msg": "", "rc": 0, "start": "2025-12-17 23:05:19.650363", "stderr": "", "stderr_lines": [], "stdout": "0.95", "stdout_lines": ["0.95"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004518", "end": "2025-12-17 23:04:53.232231", "msg": "", "rc": 0, "start": "2025-12-17 23:04:53.227713", "stderr": "", "stderr_lines": [], "stdout": "0.18", "stdout_lines": ["0.18"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005210", "end": "2025-12-17 23:04:46.653846", "msg": "", "rc": 0, "start": "2025-12-17 23:04:46.648636", "stderr": "", "stderr_lines": [], "stdout": "0.07", "stdout_lines": ["0.07"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010133", "end": "2025-12-17 23:05:20.340185", "msg": "", "rc": 0, "start": "2025-12-17 23:05:20.330052", "stderr": "", "stderr_lines": [], "stdout": "0.20", "stdout_lines": ["0.20"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011297", "end": "2025-12-17 23:05:20.360471", "msg": "", "rc": 0, "start": "2025-12-17 23:05:20.349174", "stderr": "", "stderr_lines": [], "stdout": "0.45", "stdout_lines": ["0.45"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005527", "end": "2025-12-17 23:05:20.551416", "msg": "", "rc": 0, "start": "2025-12-17 23:05:20.545889", "stderr": "", "stderr_lines": [], "stdout": "0.14", "stdout_lines": ["0.14"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004808", "end": "2025-12-17 23:04:49.815756", "msg": "", "rc": 0, "start": "2025-12-17 23:04:49.810948", "stderr": "", "stderr_lines": [], "stdout": "0.35", "stdout_lines": ["0.35"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005753", "end": "2025-12-17 20:05:20.823932", "msg": "", "rc": 0, "start": "2025-12-17 20:05:20.818179", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004332", "end": "2025-12-17 23:04:56.593373", "msg": "", "rc": 0, "start": "2025-12-17 23:04:56.589041", "stderr": "", "stderr_lines": [], "stdout": "1.10", "stdout_lines": ["1.10"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005237", "end": "2025-12-17 23:05:20.957336", "msg": "", "rc": 0, "start": "2025-12-17 23:05:20.952099", "stderr": "", "stderr_lines": [], "stdout": "0.13", "stdout_lines": ["0.13"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.007814", "end": "2025-12-17 23:05:21.363648", "msg": "", "rc": 0, "start": "2025-12-17 23:05:21.355834", "stderr": "", "stderr_lines": [], "stdout": "1.12", "stdout_lines": ["1.12"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024086", "end": "2025-12-17 23:05:20.964204", "msg": "", "rc": 0, "start": "2025-12-17 23:05:20.940118", "stderr": "", "stderr_lines": [], "stdout": "0.30", "stdout_lines": ["0.30"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:05:11 up 3 days, 12:37, 1 user, load average: 0.23, 0.15, 0.16\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.21\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:05:11 up 22 days, 9:56, 1 user, load average: 0.17, 0.25, 0.31\nDisk Usage: 23%\nMemory Usage: 78.5%\nCPU Load: 0.30\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:05:11 up 22 days, 10:16, 1 user, load average: 1.37, 1.56, 1.31\nDisk Usage: 14%\nMemory Usage: 49.0%\nCPU Load: 1.34\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:05:11 up 22 days, 11:29, 1 user, load average: 0.77, 0.61, 0.60\nDisk Usage: 14%\nMemory Usage: 60.0%\nCPU Load: 0.95\nCPU Temp: 51.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:05:11 up 22 days, 12:15, 1 user, load average: 0.00, 0.02, 0.00\nDisk Usage: 9%\nMemory Usage: 9.1%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:05:13 up 15 days, 12:31, 1 user, load average: 0.17, 0.10, 0.09\nDisk Usage: 21%\nMemory Usage: 20.5%\nCPU Load: 0.30\nCPU Temp: 34.1°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:05:12 up 194 days, 14:38, 1 user, load average: 0.44, 0.25, 0.20\nDisk Usage: 6%\nMemory Usage: 13.4%\nCPU Load: 0.45\nCPU Temp: 33.6°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:05:12 up 194 days, 14:38, 1 user, load average: 0.22, 0.20, 0.17\nDisk Usage: 3%\nMemory Usage: 6.9%\nCPU Load: 0.20\nCPU Temp: 31.2°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:04:45 up 11 days, 10:54, 0 user, load average: 0.20, 0.15, 0.10\nDisk Usage: 48%\nMemory Usage: 70.9%\nCPU Load: 0.18\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:04:39 up 18 days, 7:06, 0 user, load average: 0.08, 0.05, 0.02\nDisk Usage: 24%\nMemory Usage: 70.1%\nCPU Load: 0.07\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:05:13 up 3 days, 12:36, 1 user, load average: 0.15, 0.06, 0.01\nDisk Usage: 1%\nMemory Usage: 35.6%\nCPU Load: 0.14\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:04:42 up 21 days, 1:59, 0 user, load average: 0.30, 0.49, 0.52\nDisk Usage: 28%\nMemory Usage: 26.6%\nCPU Load: 0.35\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:04:49 up 17 days, 12:20, 0 user, load average: 0.85, 1.03, 0.87\nDisk Usage: 76%\nMemory Usage: 56.3%\nCPU Load: 1.10\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 8:05PM up 22 days, 9:55, 1 user, load averages: 0.16, 0.17, 0.16\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:05:13 up 3 days, 12:36, 1 user, load average: 0.16, 0.13, 0.09\nDisk Usage: 79%\nMemory Usage: 13.9%\nCPU Load: 0.13\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:05:13 up 3:14, 1 user, load average: 1.13, 1.11, 1.12\nDisk Usage: 1%\nMemory Usage: 12.9%\nCPU Load: 1.12\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T04:05:22.292794+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_041021_fe4a80_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_041021_fe4a80_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..ab63c00 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_041021_fe4a80_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `26052d3926a54c889869c5c7fc729a93` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T04:10:00.001063+00:00 | +| **Fin** | 2025-12-18T04:10:21.696090+00:00 | +| **Durée** | 21.7s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.4gb.home] +ok: [raspi.8gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003693", "end": "2025-12-17 23:10:11.569618", "msg": "", "rc": 0, "start": "2025-12-17 23:10:11.565925", "stderr": "", "stderr_lines": [], "stdout": " 23:10:11 up 22 days, 12:20, 1 user, load average: 0.00, 0.02, 0.00", "stdout_lines": [" 23:10:11 up 22 days, 12:20, 1 user, load average: 0.00, 0.02, 0.00"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003444", "end": "2025-12-17 23:10:11.572689", "msg": "", "rc": 0, "start": "2025-12-17 23:10:11.569245", "stderr": "", "stderr_lines": [], "stdout": " 23:10:11 up 22 days, 10:21, 1 user, load average: 0.69, 1.22, 1.26", "stdout_lines": [" 23:10:11 up 22 days, 10:21, 1 user, load average: 0.69, 1.22, 1.26"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002905", "end": "2025-12-17 23:10:11.599747", "msg": "", "rc": 0, "start": "2025-12-17 23:10:11.596842", "stderr": "", "stderr_lines": [], "stdout": " 23:10:11 up 3 days, 12:42, 1 user, load average: 0.47, 0.44, 0.28", "stdout_lines": [" 23:10:11 up 3 days, 12:42, 1 user, load average: 0.47, 0.44, 0.28"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004068", "end": "2025-12-17 23:10:11.590860", "msg": "", "rc": 0, "start": "2025-12-17 23:10:11.586792", "stderr": "", "stderr_lines": [], "stdout": " 23:10:11 up 22 days, 11:34, 1 user, load average: 0.58, 0.57, 0.58", "stdout_lines": [" 23:10:11 up 22 days, 11:34, 1 user, load average: 0.58, 0.57, 0.58"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002802", "end": "2025-12-17 23:09:45.188732", "msg": "", "rc": 0, "start": "2025-12-17 23:09:45.185930", "stderr": "", "stderr_lines": [], "stdout": " 23:09:45 up 11 days, 10:59, 0 user, load average: 0.20, 0.11, 0.09", "stdout_lines": [" 23:09:45 up 11 days, 10:59, 0 user, load average: 0.20, 0.11, 0.09"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008408", "end": "2025-12-17 23:10:12.246879", "msg": "", "rc": 0, "start": "2025-12-17 23:10:12.238471", "stderr": "", "stderr_lines": [], "stdout": " 23:10:12 up 194 days, 14:43, 1 user, load average: 0.33, 0.22, 0.19", "stdout_lines": [" 23:10:12 up 194 days, 14:43, 1 user, load average: 0.33, 0.22, 0.19"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009355", "end": "2025-12-17 23:10:12.290679", "msg": "", "rc": 0, "start": "2025-12-17 23:10:12.281324", "stderr": "", "stderr_lines": [], "stdout": " 23:10:12 up 194 days, 14:43, 1 user, load average: 0.40, 0.28, 0.21", "stdout_lines": [" 23:10:12 up 194 days, 14:43, 1 user, load average: 0.40, 0.28, 0.21"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004087", "end": "2025-12-17 23:10:12.555075", "msg": "", "rc": 0, "start": "2025-12-17 23:10:11.550988", "stderr": "", "stderr_lines": [], "stdout": " 23:10:11 up 22 days, 10:01, 1 user, load average: 0.25, 0.27, 0.30", "stdout_lines": [" 23:10:11 up 22 days, 10:01, 1 user, load average: 0.25, 0.27, 0.30"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003452", "end": "2025-12-17 23:09:39.055525", "msg": "", "rc": 0, "start": "2025-12-17 23:09:39.052073", "stderr": "", "stderr_lines": [], "stdout": " 23:09:39 up 18 days, 7:11, 0 user, load average: 0.00, 0.03, 0.00", "stdout_lines": [" 23:09:39 up 18 days, 7:11, 0 user, load average: 0.00, 0.03, 0.00"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004717", "end": "2025-12-17 23:10:12.761393", "msg": "", "rc": 0, "start": "2025-12-17 23:10:12.756676", "stderr": "", "stderr_lines": [], "stdout": " 23:10:12 up 3 days, 12:41, 1 user, load average: 0.00, 0.01, 0.00", "stdout_lines": [" 23:10:12 up 3 days, 12:41, 1 user, load average: 0.00, 0.01, 0.00"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003170", "end": "2025-12-17 23:09:41.964697", "msg": "", "rc": 0, "start": "2025-12-17 23:09:41.961527", "stderr": "", "stderr_lines": [], "stdout": " 23:09:41 up 21 days, 2:03, 0 user, load average: 1.34, 0.82, 0.62", "stdout_lines": [" 23:09:41 up 21 days, 2:03, 0 user, load average: 1.34, 0.82, 0.62"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002903", "end": "2025-12-17 23:09:48.746632", "msg": "", "rc": 0, "start": "2025-12-17 23:09:48.743729", "stderr": "", "stderr_lines": [], "stdout": " 23:09:48 up 17 days, 12:25, 0 user, load average: 0.43, 0.73, 0.80", "stdout_lines": [" 23:09:48 up 17 days, 12:25, 0 user, load average: 0.43, 0.73, 0.80"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004149", "end": "2025-12-17 20:10:13.019033", "msg": "", "rc": 0, "start": "2025-12-17 20:10:13.014884", "stderr": "", "stderr_lines": [], "stdout": " 8:10PM up 22 days, 10 hrs, 1 user, load averages: 0.15, 0.17, 0.16", "stdout_lines": [" 8:10PM up 22 days, 10 hrs, 1 user, load averages: 0.15, 0.17, 0.16"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019312", "end": "2025-12-17 23:10:12.958421", "msg": "", "rc": 0, "start": "2025-12-17 23:10:12.939109", "stderr": "", "stderr_lines": [], "stdout": " 23:10:12 up 15 days, 12:36, 1 user, load average: 0.30, 0.20, 0.12", "stdout_lines": [" 23:10:12 up 15 days, 12:36, 1 user, load average: 0.30, 0.20, 0.12"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008323", "end": "2025-12-17 23:10:13.646766", "msg": "", "rc": 0, "start": "2025-12-17 23:10:13.638443", "stderr": "", "stderr_lines": [], "stdout": " 23:10:13 up 3:19, 1 user, load average: 1.33, 1.16, 1.12", "stdout_lines": [" 23:10:13 up 3:19, 1 user, load average: 1.33, 1.16, 1.12"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003734", "end": "2025-12-17 23:10:13.172625", "msg": "", "rc": 0, "start": "2025-12-17 23:10:13.168891", "stderr": "", "stderr_lines": [], "stdout": " 23:10:13 up 3 days, 12:41, 1 user, load average: 0.09, 0.07, 0.07", "stdout_lines": [" 23:10:13 up 3 days, 12:41, 1 user, load average: 0.09, 0.07, 0.07"]} + +TASK [Get disk usage] ********************************************************** +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004047", "end": "2025-12-17 23:10:13.581673", "msg": "", "rc": 0, "start": "2025-12-17 23:10:13.577626", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004203", "end": "2025-12-17 23:10:13.585419", "msg": "", "rc": 0, "start": "2025-12-17 23:10:13.581216", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004774", "end": "2025-12-17 23:10:13.606726", "msg": "", "rc": 0, "start": "2025-12-17 23:10:13.601952", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005010", "end": "2025-12-17 23:10:13.628906", "msg": "", "rc": 0, "start": "2025-12-17 23:10:13.623896", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005684", "end": "2025-12-17 23:10:13.637270", "msg": "", "rc": 0, "start": "2025-12-17 23:10:13.631586", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004723", "end": "2025-12-17 23:09:47.221148", "msg": "", "rc": 0, "start": "2025-12-17 23:09:47.216425", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005306", "end": "2025-12-17 23:09:40.636727", "msg": "", "rc": 0, "start": "2025-12-17 23:09:40.631421", "stderr": "", "stderr_lines": [], "stdout": "24%", "stdout_lines": ["24%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010601", "end": "2025-12-17 23:10:14.325273", "msg": "", "rc": 0, "start": "2025-12-17 23:10:14.314672", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011574", "end": "2025-12-17 23:10:14.363049", "msg": "", "rc": 0, "start": "2025-12-17 23:10:14.351475", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006350", "end": "2025-12-17 23:10:14.554360", "msg": "", "rc": 0, "start": "2025-12-17 23:10:14.548010", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.007253", "end": "2025-12-17 23:09:43.819848", "msg": "", "rc": 0, "start": "2025-12-17 23:09:43.812595", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005566", "end": "2025-12-17 20:10:14.827947", "msg": "", "rc": 0, "start": "2025-12-17 20:10:14.822381", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005395", "end": "2025-12-17 23:09:50.583540", "msg": "", "rc": 0, "start": "2025-12-17 23:09:50.578145", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005368", "end": "2025-12-17 23:10:14.962919", "msg": "", "rc": 0, "start": "2025-12-17 23:10:14.957551", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.018225", "end": "2025-12-17 23:10:15.551228", "msg": "", "rc": 0, "start": "2025-12-17 23:10:15.533003", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025267", "end": "2025-12-17 23:10:14.981312", "msg": "", "rc": 0, "start": "2025-12-17 23:10:14.956045", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004209", "end": "2025-12-17 23:10:15.513399", "msg": "", "rc": 0, "start": "2025-12-17 23:10:15.509190", "stderr": "", "stderr_lines": [], "stdout": "78.5%", "stdout_lines": ["78.5%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004258", "end": "2025-12-17 23:10:15.521888", "msg": "", "rc": 0, "start": "2025-12-17 23:10:15.517630", "stderr": "", "stderr_lines": [], "stdout": "22.7%", "stdout_lines": ["22.7%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004750", "end": "2025-12-17 23:10:15.534472", "msg": "", "rc": 0, "start": "2025-12-17 23:10:15.529722", "stderr": "", "stderr_lines": [], "stdout": "48.9%", "stdout_lines": ["48.9%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004950", "end": "2025-12-17 23:10:15.560855", "msg": "", "rc": 0, "start": "2025-12-17 23:10:15.555905", "stderr": "", "stderr_lines": [], "stdout": "8.9%", "stdout_lines": ["8.9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.007026", "end": "2025-12-17 23:10:15.578050", "msg": "", "rc": 0, "start": "2025-12-17 23:10:15.571024", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004162", "end": "2025-12-17 23:09:49.177992", "msg": "", "rc": 0, "start": "2025-12-17 23:09:49.173830", "stderr": "", "stderr_lines": [], "stdout": "71.2%", "stdout_lines": ["71.2%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004744", "end": "2025-12-17 23:09:42.586324", "msg": "", "rc": 0, "start": "2025-12-17 23:09:42.581580", "stderr": "", "stderr_lines": [], "stdout": "69.5%", "stdout_lines": ["69.5%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010907", "end": "2025-12-17 23:10:16.206753", "msg": "", "rc": 0, "start": "2025-12-17 23:10:16.195846", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011951", "end": "2025-12-17 23:10:16.255901", "msg": "", "rc": 0, "start": "2025-12-17 23:10:16.243950", "stderr": "", "stderr_lines": [], "stdout": "13.1%", "stdout_lines": ["13.1%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005765", "end": "2025-12-17 23:10:16.509849", "msg": "", "rc": 0, "start": "2025-12-17 23:10:16.504084", "stderr": "", "stderr_lines": [], "stdout": "35.6%", "stdout_lines": ["35.6%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003977", "end": "2025-12-17 23:09:45.769588", "msg": "", "rc": 0, "start": "2025-12-17 23:09:45.765611", "stderr": "", "stderr_lines": [], "stdout": "27.7%", "stdout_lines": ["27.7%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003726", "end": "2025-12-17 23:09:52.451871", "msg": "", "rc": 0, "start": "2025-12-17 23:09:52.448145", "stderr": "", "stderr_lines": [], "stdout": "53.7%", "stdout_lines": ["53.7%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005754", "end": "2025-12-17 20:10:16.713185", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 20:10:16.707431", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005604", "end": "2025-12-17 23:10:16.924057", "msg": "", "rc": 0, "start": "2025-12-17 23:10:16.918453", "stderr": "", "stderr_lines": [], "stdout": "13.9%", "stdout_lines": ["13.9%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.009698", "end": "2025-12-17 23:10:17.014856", "msg": "", "rc": 0, "start": "2025-12-17 23:10:17.005158", "stderr": "", "stderr_lines": [], "stdout": "12.7%", "stdout_lines": ["12.7%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025724", "end": "2025-12-17 23:10:16.919348", "msg": "", "rc": 0, "start": "2025-12-17 23:10:16.893624", "stderr": "", "stderr_lines": [], "stdout": "20.7%", "stdout_lines": ["20.7%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005413", "end": "2025-12-17 23:10:17.442356", "msg": "", "rc": 0, "start": "2025-12-17 23:10:17.436943", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005483", "end": "2025-12-17 23:10:17.470370", "msg": "", "rc": 0, "start": "2025-12-17 23:10:17.464887", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004867", "end": "2025-12-17 23:10:17.474780", "msg": "", "rc": 0, "start": "2025-12-17 23:10:17.469913", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002905", "end": "2025-12-17 23:10:17.488661", "msg": "", "rc": 0, "start": "2025-12-17 23:10:17.485756", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006889", "end": "2025-12-17 23:10:17.514514", "msg": "", "rc": 0, "start": "2025-12-17 23:10:17.507625", "stderr": "", "stderr_lines": [], "stdout": "52.0°C", "stdout_lines": ["52.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002591", "end": "2025-12-17 23:09:51.082618", "msg": "", "rc": 0, "start": "2025-12-17 23:09:51.080027", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003360", "end": "2025-12-17 23:09:44.552212", "msg": "", "rc": 0, "start": "2025-12-17 23:09:44.548852", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011777", "end": "2025-12-17 23:10:18.150655", "msg": "", "rc": 0, "start": "2025-12-17 23:10:18.138878", "stderr": "", "stderr_lines": [], "stdout": "29.7°C", "stdout_lines": ["29.7°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012931", "end": "2025-12-17 23:10:18.172129", "msg": "", "rc": 0, "start": "2025-12-17 23:10:18.159198", "stderr": "", "stderr_lines": [], "stdout": "34.6°C", "stdout_lines": ["34.6°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003122", "end": "2025-12-17 23:10:18.412279", "msg": "", "rc": 0, "start": "2025-12-17 23:10:18.409157", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003858", "end": "2025-12-17 20:10:18.637181", "msg": "", "rc": 0, "start": "2025-12-17 20:10:18.633323", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003151", "end": "2025-12-17 23:09:47.733066", "msg": "", "rc": 0, "start": "2025-12-17 23:09:47.729915", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002802", "end": "2025-12-17 23:09:54.434677", "msg": "", "rc": 0, "start": "2025-12-17 23:09:54.431875", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002953", "end": "2025-12-17 23:10:18.819590", "msg": "", "rc": 0, "start": "2025-12-17 23:10:18.816637", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004213", "end": "2025-12-17 23:10:18.977611", "msg": "", "rc": 0, "start": "2025-12-17 23:10:18.973398", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028690", "end": "2025-12-17 23:10:18.826683", "msg": "", "rc": 0, "start": "2025-12-17 23:10:18.797993", "stderr": "", "stderr_lines": [], "stdout": "33.0°C", "stdout_lines": ["33.0°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004039", "end": "2025-12-17 23:10:19.338128", "msg": "", "rc": 0, "start": "2025-12-17 23:10:19.334089", "stderr": "", "stderr_lines": [], "stdout": "0.37", "stdout_lines": ["0.37"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004185", "end": "2025-12-17 23:10:19.365701", "msg": "", "rc": 0, "start": "2025-12-17 23:10:19.361516", "stderr": "", "stderr_lines": [], "stdout": "0.43", "stdout_lines": ["0.43"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004455", "end": "2025-12-17 23:10:19.372205", "msg": "", "rc": 0, "start": "2025-12-17 23:10:19.367750", "stderr": "", "stderr_lines": [], "stdout": "0.66", "stdout_lines": ["0.66"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005188", "end": "2025-12-17 23:10:19.391654", "msg": "", "rc": 0, "start": "2025-12-17 23:10:19.386466", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005510", "end": "2025-12-17 23:10:19.427941", "msg": "", "rc": 0, "start": "2025-12-17 23:10:19.422431", "stderr": "", "stderr_lines": [], "stdout": "0.94", "stdout_lines": ["0.94"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004369", "end": "2025-12-17 23:09:52.959189", "msg": "", "rc": 0, "start": "2025-12-17 23:09:52.954820", "stderr": "", "stderr_lines": [], "stdout": "0.19", "stdout_lines": ["0.19"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005449", "end": "2025-12-17 23:09:46.451576", "msg": "", "rc": 0, "start": "2025-12-17 23:09:46.446127", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010534", "end": "2025-12-17 23:10:20.130796", "msg": "", "rc": 0, "start": "2025-12-17 23:10:20.120262", "stderr": "", "stderr_lines": [], "stdout": "0.39", "stdout_lines": ["0.39"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011051", "end": "2025-12-17 23:10:20.170597", "msg": "", "rc": 0, "start": "2025-12-17 23:10:20.159546", "stderr": "", "stderr_lines": [], "stdout": "0.53", "stdout_lines": ["0.53"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005929", "end": "2025-12-17 23:10:20.283585", "msg": "", "rc": 0, "start": "2025-12-17 23:10:20.277656", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005354", "end": "2025-12-17 23:09:49.632151", "msg": "", "rc": 0, "start": "2025-12-17 23:09:49.626797", "stderr": "", "stderr_lines": [], "stdout": "1.39", "stdout_lines": ["1.39"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004576", "end": "2025-12-17 23:09:56.378170", "msg": "", "rc": 0, "start": "2025-12-17 23:09:56.373594", "stderr": "", "stderr_lines": [], "stdout": "0.40", "stdout_lines": ["0.40"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005861", "end": "2025-12-17 20:10:20.637878", "msg": "", "rc": 0, "start": "2025-12-17 20:10:20.632017", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005290", "end": "2025-12-17 23:10:20.714870", "msg": "", "rc": 0, "start": "2025-12-17 23:10:20.709580", "stderr": "", "stderr_lines": [], "stdout": "0.15", "stdout_lines": ["0.15"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024446", "end": "2025-12-17 23:10:20.710527", "msg": "", "rc": 0, "start": "2025-12-17 23:10:20.686081", "stderr": "", "stderr_lines": [], "stdout": "0.33", "stdout_lines": ["0.33"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.007994", "end": "2025-12-17 23:10:20.945034", "msg": "", "rc": 0, "start": "2025-12-17 23:10:20.937040", "stderr": "", "stderr_lines": [], "stdout": "1.47", "stdout_lines": ["1.47"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:10:11 up 3 days, 12:42, 1 user, load average: 0.47, 0.44, 0.28\nDisk Usage: 22%\nMemory Usage: 22.7%\nCPU Load: 0.43\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:10:11 up 22 days, 10:01, 1 user, load average: 0.25, 0.27, 0.30\nDisk Usage: 23%\nMemory Usage: 78.5%\nCPU Load: 0.37\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:10:11 up 22 days, 10:21, 1 user, load average: 0.69, 1.22, 1.26\nDisk Usage: 14%\nMemory Usage: 48.9%\nCPU Load: 0.66\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:10:11 up 22 days, 11:34, 1 user, load average: 0.58, 0.57, 0.58\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.94\nCPU Temp: 52.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:10:11 up 22 days, 12:20, 1 user, load average: 0.00, 0.02, 0.00\nDisk Usage: 9%\nMemory Usage: 8.9%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:10:12 up 15 days, 12:36, 1 user, load average: 0.30, 0.20, 0.12\nDisk Usage: 21%\nMemory Usage: 20.7%\nCPU Load: 0.33\nCPU Temp: 33.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:10:12 up 194 days, 14:43, 1 user, load average: 0.40, 0.28, 0.21\nDisk Usage: 6%\nMemory Usage: 13.1%\nCPU Load: 0.53\nCPU Temp: 34.6°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:10:12 up 194 days, 14:43, 1 user, load average: 0.33, 0.22, 0.19\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.39\nCPU Temp: 29.7°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:09:45 up 11 days, 10:59, 0 user, load average: 0.20, 0.11, 0.09\nDisk Usage: 48%\nMemory Usage: 71.2%\nCPU Load: 0.19\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:09:39 up 18 days, 7:11, 0 user, load average: 0.00, 0.03, 0.00\nDisk Usage: 24%\nMemory Usage: 69.5%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:10:12 up 3 days, 12:41, 1 user, load average: 0.00, 0.01, 0.00\nDisk Usage: 1%\nMemory Usage: 35.6%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:09:41 up 21 days, 2:03, 0 user, load average: 1.34, 0.82, 0.62\nDisk Usage: 28%\nMemory Usage: 27.7%\nCPU Load: 1.39\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:09:48 up 17 days, 12:25, 0 user, load average: 0.43, 0.73, 0.80\nDisk Usage: 76%\nMemory Usage: 53.7%\nCPU Load: 0.40\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 8:10PM up 22 days, 10 hrs, 1 user, load averages: 0.15, 0.17, 0.16\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:10:13 up 3 days, 12:41, 1 user, load average: 0.09, 0.07, 0.07\nDisk Usage: 79%\nMemory Usage: 13.9%\nCPU Load: 0.15\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:10:13 up 3:19, 1 user, load average: 1.33, 1.16, 1.12\nDisk Usage: 1%\nMemory Usage: 12.7%\nCPU Load: 1.47\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T04:10:21.744519+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_041521_f4e403_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_041521_f4e403_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..c7d5fef --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_041521_f4e403_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `ae29665c365e407e92ecfb8b2dbe7cc1` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T04:15:00.000436+00:00 | +| **Fin** | 2025-12-18T04:15:21.770667+00:00 | +| **Durée** | 21.8s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp2.i7.home] +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003214", "end": "2025-12-17 23:15:11.522041", "msg": "", "rc": 0, "start": "2025-12-17 23:15:11.518827", "stderr": "", "stderr_lines": [], "stdout": " 23:15:11 up 22 days, 10:06, 1 user, load average: 0.30, 0.26, 0.28", "stdout_lines": [" 23:15:11 up 22 days, 10:06, 1 user, load average: 0.30, 0.26, 0.28"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003748", "end": "2025-12-17 23:15:11.535853", "msg": "", "rc": 0, "start": "2025-12-17 23:15:11.532105", "stderr": "", "stderr_lines": [], "stdout": " 23:15:11 up 22 days, 12:25, 1 user, load average: 0.01, 0.02, 0.00", "stdout_lines": [" 23:15:11 up 22 days, 12:25, 1 user, load average: 0.01, 0.02, 0.00"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003267", "end": "2025-12-17 23:15:11.533890", "msg": "", "rc": 0, "start": "2025-12-17 23:15:11.530623", "stderr": "", "stderr_lines": [], "stdout": " 23:15:11 up 22 days, 10:26, 1 user, load average: 0.96, 1.07, 1.18", "stdout_lines": [" 23:15:11 up 22 days, 10:26, 1 user, load average: 0.96, 1.07, 1.18"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004057", "end": "2025-12-17 23:15:11.546983", "msg": "", "rc": 0, "start": "2025-12-17 23:15:11.542926", "stderr": "", "stderr_lines": [], "stdout": " 23:15:11 up 22 days, 11:39, 1 user, load average: 0.84, 0.68, 0.62", "stdout_lines": [" 23:15:11 up 22 days, 11:39, 1 user, load average: 0.84, 0.68, 0.62"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002863", "end": "2025-12-17 23:15:11.559889", "msg": "", "rc": 0, "start": "2025-12-17 23:15:11.557026", "stderr": "", "stderr_lines": [], "stdout": " 23:15:11 up 3 days, 12:47, 1 user, load average: 0.04, 0.23, 0.23", "stdout_lines": [" 23:15:11 up 3 days, 12:47, 1 user, load average: 0.04, 0.23, 0.23"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003065", "end": "2025-12-17 23:14:45.174996", "msg": "", "rc": 0, "start": "2025-12-17 23:14:45.171931", "stderr": "", "stderr_lines": [], "stdout": " 23:14:45 up 11 days, 11:04, 0 user, load average: 0.41, 0.16, 0.11", "stdout_lines": [" 23:14:45 up 11 days, 11:04, 0 user, load average: 0.41, 0.16, 0.11"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003501", "end": "2025-12-17 23:14:38.562234", "msg": "", "rc": 0, "start": "2025-12-17 23:14:38.558733", "stderr": "", "stderr_lines": [], "stdout": " 23:14:38 up 18 days, 7:16, 0 user, load average: 0.18, 0.06, 0.01", "stdout_lines": [" 23:14:38 up 18 days, 7:16, 0 user, load average: 0.18, 0.06, 0.01"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008344", "end": "2025-12-17 23:15:12.202167", "msg": "", "rc": 0, "start": "2025-12-17 23:15:12.193823", "stderr": "", "stderr_lines": [], "stdout": " 23:15:12 up 194 days, 14:48, 1 user, load average: 0.17, 0.21, 0.18", "stdout_lines": [" 23:15:12 up 194 days, 14:48, 1 user, load average: 0.17, 0.21, 0.18"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009224", "end": "2025-12-17 23:15:12.238552", "msg": "", "rc": 0, "start": "2025-12-17 23:15:12.229328", "stderr": "", "stderr_lines": [], "stdout": " 23:15:12 up 194 days, 14:48, 1 user, load average: 0.19, 0.26, 0.22", "stdout_lines": [" 23:15:12 up 194 days, 14:48, 1 user, load average: 0.19, 0.26, 0.22"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004782", "end": "2025-12-17 23:15:12.514023", "msg": "", "rc": 0, "start": "2025-12-17 23:15:12.509241", "stderr": "", "stderr_lines": [], "stdout": " 23:15:12 up 3 days, 12:46, 1 user, load average: 0.15, 0.09, 0.02", "stdout_lines": [" 23:15:12 up 3 days, 12:46, 1 user, load average: 0.15, 0.09, 0.02"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003464", "end": "2025-12-17 23:14:41.723596", "msg": "", "rc": 0, "start": "2025-12-17 23:14:41.720132", "stderr": "", "stderr_lines": [], "stdout": " 23:14:41 up 21 days, 2:08, 0 user, load average: 0.34, 0.61, 0.60", "stdout_lines": [" 23:14:41 up 21 days, 2:08, 0 user, load average: 0.34, 0.61, 0.60"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004339", "end": "2025-12-17 20:15:12.700318", "msg": "", "rc": 0, "start": "2025-12-17 20:15:12.695979", "stderr": "", "stderr_lines": [], "stdout": " 8:15PM up 22 days, 10:05, 1 user, load averages: 0.18, 0.18, 0.17", "stdout_lines": [" 8:15PM up 22 days, 10:05, 1 user, load averages: 0.18, 0.18, 0.17"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003097", "end": "2025-12-17 23:14:48.452966", "msg": "", "rc": 0, "start": "2025-12-17 23:14:48.449869", "stderr": "", "stderr_lines": [], "stdout": " 23:14:48 up 17 days, 12:30, 0 user, load average: 0.25, 0.50, 0.68", "stdout_lines": [" 23:14:48 up 17 days, 12:30, 0 user, load average: 0.25, 0.50, 0.68"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003646", "end": "2025-12-17 23:15:12.926257", "msg": "", "rc": 0, "start": "2025-12-17 23:15:12.922611", "stderr": "", "stderr_lines": [], "stdout": " 23:15:12 up 3 days, 12:46, 1 user, load average: 0.39, 0.20, 0.12", "stdout_lines": [" 23:15:12 up 3 days, 12:46, 1 user, load average: 0.39, 0.20, 0.12"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009475", "end": "2025-12-17 23:15:13.134206", "msg": "", "rc": 0, "start": "2025-12-17 23:15:13.124731", "stderr": "", "stderr_lines": [], "stdout": " 23:15:13 up 3:24, 1 user, load average: 1.23, 1.14, 1.11", "stdout_lines": [" 23:15:13 up 3:24, 1 user, load average: 1.23, 1.14, 1.11"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019533", "end": "2025-12-17 23:15:12.908644", "msg": "", "rc": 0, "start": "2025-12-17 23:15:12.889111", "stderr": "", "stderr_lines": [], "stdout": " 23:15:12 up 15 days, 12:41, 1 user, load average: 0.25, 0.21, 0.14", "stdout_lines": [" 23:15:12 up 15 days, 12:41, 1 user, load average: 0.25, 0.21, 0.14"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004235", "end": "2025-12-17 23:15:13.416626", "msg": "", "rc": 0, "start": "2025-12-17 23:15:13.412391", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004522", "end": "2025-12-17 23:15:13.440299", "msg": "", "rc": 0, "start": "2025-12-17 23:15:13.435777", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004151", "end": "2025-12-17 23:15:13.446969", "msg": "", "rc": 0, "start": "2025-12-17 23:15:13.442818", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004885", "end": "2025-12-17 23:15:13.472454", "msg": "", "rc": 0, "start": "2025-12-17 23:15:13.467569", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005732", "end": "2025-12-17 23:15:13.490225", "msg": "", "rc": 0, "start": "2025-12-17 23:15:13.484493", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004650", "end": "2025-12-17 23:14:47.037329", "msg": "", "rc": 0, "start": "2025-12-17 23:14:47.032679", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005538", "end": "2025-12-17 23:14:40.473383", "msg": "", "rc": 0, "start": "2025-12-17 23:14:40.467845", "stderr": "", "stderr_lines": [], "stdout": "24%", "stdout_lines": ["24%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011388", "end": "2025-12-17 23:15:14.166032", "msg": "", "rc": 0, "start": "2025-12-17 23:15:14.154644", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011681", "end": "2025-12-17 23:15:14.185730", "msg": "", "rc": 0, "start": "2025-12-17 23:15:14.174049", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005921", "end": "2025-12-17 23:15:14.371786", "msg": "", "rc": 0, "start": "2025-12-17 23:15:14.365865", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005345", "end": "2025-12-17 23:14:43.644180", "msg": "", "rc": 0, "start": "2025-12-17 23:14:43.638835", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005130", "end": "2025-12-17 20:15:14.634548", "msg": "", "rc": 0, "start": "2025-12-17 20:15:14.629418", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005014", "end": "2025-12-17 23:14:50.396911", "msg": "", "rc": 0, "start": "2025-12-17 23:14:50.391897", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005368", "end": "2025-12-17 23:15:14.796151", "msg": "", "rc": 0, "start": "2025-12-17 23:15:14.790783", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.019683", "end": "2025-12-17 23:15:15.061745", "msg": "", "rc": 0, "start": "2025-12-17 23:15:15.042062", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025545", "end": "2025-12-17 23:15:14.824163", "msg": "", "rc": 0, "start": "2025-12-17 23:15:14.798618", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004241", "end": "2025-12-17 23:15:15.350648", "msg": "", "rc": 0, "start": "2025-12-17 23:15:15.346407", "stderr": "", "stderr_lines": [], "stdout": "78.6%", "stdout_lines": ["78.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004650", "end": "2025-12-17 23:15:15.362650", "msg": "", "rc": 0, "start": "2025-12-17 23:15:15.358000", "stderr": "", "stderr_lines": [], "stdout": "48.7%", "stdout_lines": ["48.7%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004214", "end": "2025-12-17 23:15:15.367179", "msg": "", "rc": 0, "start": "2025-12-17 23:15:15.362965", "stderr": "", "stderr_lines": [], "stdout": "22.7%", "stdout_lines": ["22.7%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004940", "end": "2025-12-17 23:15:15.391832", "msg": "", "rc": 0, "start": "2025-12-17 23:15:15.386892", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005765", "end": "2025-12-17 23:15:15.405908", "msg": "", "rc": 0, "start": "2025-12-17 23:15:15.400143", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003711", "end": "2025-12-17 23:14:48.978076", "msg": "", "rc": 0, "start": "2025-12-17 23:14:48.974365", "stderr": "", "stderr_lines": [], "stdout": "71.1%", "stdout_lines": ["71.1%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004735", "end": "2025-12-17 23:14:42.379852", "msg": "", "rc": 0, "start": "2025-12-17 23:14:42.375117", "stderr": "", "stderr_lines": [], "stdout": "69.5%", "stdout_lines": ["69.5%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010941", "end": "2025-12-17 23:15:16.017951", "msg": "", "rc": 0, "start": "2025-12-17 23:15:16.007010", "stderr": "", "stderr_lines": [], "stdout": "6.7%", "stdout_lines": ["6.7%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012048", "end": "2025-12-17 23:15:16.090420", "msg": "", "rc": 0, "start": "2025-12-17 23:15:16.078372", "stderr": "", "stderr_lines": [], "stdout": "12.9%", "stdout_lines": ["12.9%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005874", "end": "2025-12-17 23:15:16.310199", "msg": "", "rc": 0, "start": "2025-12-17 23:15:16.304325", "stderr": "", "stderr_lines": [], "stdout": "35.6%", "stdout_lines": ["35.6%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003799", "end": "2025-12-17 23:14:45.557344", "msg": "", "rc": 0, "start": "2025-12-17 23:14:45.553545", "stderr": "", "stderr_lines": [], "stdout": "27.6%", "stdout_lines": ["27.6%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004034", "end": "2025-12-17 23:14:52.259644", "msg": "", "rc": 0, "start": "2025-12-17 23:14:52.255610", "stderr": "", "stderr_lines": [], "stdout": "54.9%", "stdout_lines": ["54.9%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005167", "end": "2025-12-17 20:15:16.551380", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 20:15:16.546213", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005471", "end": "2025-12-17 23:15:16.726118", "msg": "", "rc": 0, "start": "2025-12-17 23:15:16.720647", "stderr": "", "stderr_lines": [], "stdout": "13.9%", "stdout_lines": ["13.9%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010933", "end": "2025-12-17 23:15:16.995728", "msg": "", "rc": 0, "start": "2025-12-17 23:15:16.984795", "stderr": "", "stderr_lines": [], "stdout": "12.7%", "stdout_lines": ["12.7%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025681", "end": "2025-12-17 23:15:16.735225", "msg": "", "rc": 0, "start": "2025-12-17 23:15:16.709544", "stderr": "", "stderr_lines": [], "stdout": "20.3%", "stdout_lines": ["20.3%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005148", "end": "2025-12-17 23:15:17.244757", "msg": "", "rc": 0, "start": "2025-12-17 23:15:17.239609", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005498", "end": "2025-12-17 23:15:17.265242", "msg": "", "rc": 0, "start": "2025-12-17 23:15:17.259744", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004787", "end": "2025-12-17 23:15:17.270463", "msg": "", "rc": 0, "start": "2025-12-17 23:15:17.265676", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003329", "end": "2025-12-17 23:15:17.292789", "msg": "", "rc": 0, "start": "2025-12-17 23:15:17.289460", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006467", "end": "2025-12-17 23:15:17.314892", "msg": "", "rc": 0, "start": "2025-12-17 23:15:17.308425", "stderr": "", "stderr_lines": [], "stdout": "51.0°C", "stdout_lines": ["51.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002787", "end": "2025-12-17 23:14:50.872668", "msg": "", "rc": 0, "start": "2025-12-17 23:14:50.869881", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003126", "end": "2025-12-17 23:14:44.308186", "msg": "", "rc": 0, "start": "2025-12-17 23:14:44.305060", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011741", "end": "2025-12-17 23:15:17.922320", "msg": "", "rc": 0, "start": "2025-12-17 23:15:17.910579", "stderr": "", "stderr_lines": [], "stdout": "30.7°C", "stdout_lines": ["30.7°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013085", "end": "2025-12-17 23:15:17.983213", "msg": "", "rc": 0, "start": "2025-12-17 23:15:17.970128", "stderr": "", "stderr_lines": [], "stdout": "35.0°C", "stdout_lines": ["35.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003128", "end": "2025-12-17 23:15:18.210395", "msg": "", "rc": 0, "start": "2025-12-17 23:15:18.207267", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002975", "end": "2025-12-17 23:14:47.476591", "msg": "", "rc": 0, "start": "2025-12-17 23:14:47.473616", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002925", "end": "2025-12-17 23:14:54.186922", "msg": "", "rc": 0, "start": "2025-12-17 23:14:54.183997", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004415", "end": "2025-12-17 20:15:18.477543", "msg": "", "rc": 0, "start": "2025-12-17 20:15:18.473128", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004333", "end": "2025-12-17 23:15:18.959652", "msg": "", "rc": 0, "start": "2025-12-17 23:15:18.955319", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002974", "end": "2025-12-17 23:15:18.736119", "msg": "", "rc": 0, "start": "2025-12-17 23:15:18.733145", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028583", "end": "2025-12-17 23:15:18.628645", "msg": "", "rc": 0, "start": "2025-12-17 23:15:18.600062", "stderr": "", "stderr_lines": [], "stdout": "34.5°C", "stdout_lines": ["34.5°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004079", "end": "2025-12-17 23:15:19.158506", "msg": "", "rc": 0, "start": "2025-12-17 23:15:19.154427", "stderr": "", "stderr_lines": [], "stdout": "0.81", "stdout_lines": ["0.81"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004168", "end": "2025-12-17 23:15:19.170043", "msg": "", "rc": 0, "start": "2025-12-17 23:15:19.165875", "stderr": "", "stderr_lines": [], "stdout": "0.36", "stdout_lines": ["0.36"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004747", "end": "2025-12-17 23:15:19.177386", "msg": "", "rc": 0, "start": "2025-12-17 23:15:19.172639", "stderr": "", "stderr_lines": [], "stdout": "0.81", "stdout_lines": ["0.81"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005685", "end": "2025-12-17 23:15:19.201538", "msg": "", "rc": 0, "start": "2025-12-17 23:15:19.195853", "stderr": "", "stderr_lines": [], "stdout": "0.09", "stdout_lines": ["0.09"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005801", "end": "2025-12-17 23:15:19.229877", "msg": "", "rc": 0, "start": "2025-12-17 23:15:19.224076", "stderr": "", "stderr_lines": [], "stdout": "0.78", "stdout_lines": ["0.78"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.003903", "end": "2025-12-17 23:14:52.776828", "msg": "", "rc": 0, "start": "2025-12-17 23:14:52.772925", "stderr": "", "stderr_lines": [], "stdout": "0.34", "stdout_lines": ["0.34"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005436", "end": "2025-12-17 23:14:46.254556", "msg": "", "rc": 0, "start": "2025-12-17 23:14:46.249120", "stderr": "", "stderr_lines": [], "stdout": "0.16", "stdout_lines": ["0.16"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010157", "end": "2025-12-17 23:15:19.924019", "msg": "", "rc": 0, "start": "2025-12-17 23:15:19.913862", "stderr": "", "stderr_lines": [], "stdout": "0.24", "stdout_lines": ["0.24"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011120", "end": "2025-12-17 23:15:19.949357", "msg": "", "rc": 0, "start": "2025-12-17 23:15:19.938237", "stderr": "", "stderr_lines": [], "stdout": "0.42", "stdout_lines": ["0.42"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005785", "end": "2025-12-17 23:15:20.097912", "msg": "", "rc": 0, "start": "2025-12-17 23:15:20.092127", "stderr": "", "stderr_lines": [], "stdout": "0.13", "stdout_lines": ["0.13"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005221", "end": "2025-12-17 23:14:49.438968", "msg": "", "rc": 0, "start": "2025-12-17 23:14:49.433747", "stderr": "", "stderr_lines": [], "stdout": "0.31", "stdout_lines": ["0.31"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005966", "end": "2025-12-17 20:15:20.400360", "msg": "", "rc": 0, "start": "2025-12-17 20:15:20.394394", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004328", "end": "2025-12-17 23:14:56.150098", "msg": "", "rc": 0, "start": "2025-12-17 23:14:56.145770", "stderr": "", "stderr_lines": [], "stdout": "0.31", "stdout_lines": ["0.31"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005336", "end": "2025-12-17 23:15:20.510431", "msg": "", "rc": 0, "start": "2025-12-17 23:15:20.505095", "stderr": "", "stderr_lines": [], "stdout": "0.40", "stdout_lines": ["0.40"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.008274", "end": "2025-12-17 23:15:20.934089", "msg": "", "rc": 0, "start": "2025-12-17 23:15:20.925815", "stderr": "", "stderr_lines": [], "stdout": "1.21", "stdout_lines": ["1.21"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024295", "end": "2025-12-17 23:15:20.543917", "msg": "", "rc": 0, "start": "2025-12-17 23:15:20.519622", "stderr": "", "stderr_lines": [], "stdout": "0.31", "stdout_lines": ["0.31"]} + +TASK [Display health status] *************************************************** +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:15:11 up 22 days, 10:06, 1 user, load average: 0.30, 0.26, 0.28\nDisk Usage: 23%\nMemory Usage: 78.6%\nCPU Load: 0.81\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:15:11 up 3 days, 12:47, 1 user, load average: 0.04, 0.23, 0.23\nDisk Usage: 22%\nMemory Usage: 22.7%\nCPU Load: 0.36\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:15:11 up 22 days, 10:26, 1 user, load average: 0.96, 1.07, 1.18\nDisk Usage: 14%\nMemory Usage: 48.7%\nCPU Load: 0.81\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:15:11 up 22 days, 11:39, 1 user, load average: 0.84, 0.68, 0.62\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.78\nCPU Temp: 51.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:15:11 up 22 days, 12:25, 1 user, load average: 0.01, 0.02, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.09\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:15:12 up 15 days, 12:41, 1 user, load average: 0.25, 0.21, 0.14\nDisk Usage: 21%\nMemory Usage: 20.3%\nCPU Load: 0.31\nCPU Temp: 34.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:15:12 up 194 days, 14:48, 1 user, load average: 0.19, 0.26, 0.22\nDisk Usage: 6%\nMemory Usage: 12.9%\nCPU Load: 0.42\nCPU Temp: 35.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:15:12 up 194 days, 14:48, 1 user, load average: 0.17, 0.21, 0.18\nDisk Usage: 3%\nMemory Usage: 6.7%\nCPU Load: 0.24\nCPU Temp: 30.7°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:14:45 up 11 days, 11:04, 0 user, load average: 0.41, 0.16, 0.11\nDisk Usage: 48%\nMemory Usage: 71.1%\nCPU Load: 0.34\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:14:38 up 18 days, 7:16, 0 user, load average: 0.18, 0.06, 0.01\nDisk Usage: 24%\nMemory Usage: 69.5%\nCPU Load: 0.16\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:15:12 up 3 days, 12:46, 1 user, load average: 0.15, 0.09, 0.02\nDisk Usage: 1%\nMemory Usage: 35.6%\nCPU Load: 0.13\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:14:41 up 21 days, 2:08, 0 user, load average: 0.34, 0.61, 0.60\nDisk Usage: 28%\nMemory Usage: 27.6%\nCPU Load: 0.31\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:14:48 up 17 days, 12:30, 0 user, load average: 0.25, 0.50, 0.68\nDisk Usage: 76%\nMemory Usage: 54.9%\nCPU Load: 0.31\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 8:15PM up 22 days, 10:05, 1 user, load averages: 0.18, 0.18, 0.17\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:15:12 up 3 days, 12:46, 1 user, load average: 0.39, 0.20, 0.12\nDisk Usage: 79%\nMemory Usage: 13.9%\nCPU Load: 0.40\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:15:13 up 3:24, 1 user, load average: 1.23, 1.14, 1.11\nDisk Usage: 1%\nMemory Usage: 12.7%\nCPU Load: 1.21\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T04:15:21.819547+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_042022_0d14dc_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_042022_0d14dc_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..a0f8044 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_042022_0d14dc_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `8eefcc46ce9940bfb163efd6f526c469` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T04:20:00.002415+00:00 | +| **Fin** | 2025-12-18T04:20:21.973624+00:00 | +| **Durée** | 22.0s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [dev.prod.home] +ok: [hp.truenas.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003461", "end": "2025-12-17 23:20:11.952544", "msg": "", "rc": 0, "start": "2025-12-17 23:20:11.949083", "stderr": "", "stderr_lines": [], "stdout": " 23:20:11 up 22 days, 12:30, 1 user, load average: 0.14, 0.06, 0.01", "stdout_lines": [" 23:20:11 up 22 days, 12:30, 1 user, load average: 0.14, 0.06, 0.01"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003857", "end": "2025-12-17 23:20:11.968674", "msg": "", "rc": 0, "start": "2025-12-17 23:20:11.964817", "stderr": "", "stderr_lines": [], "stdout": " 23:20:11 up 22 days, 11:44, 1 user, load average: 1.02, 0.71, 0.64", "stdout_lines": [" 23:20:11 up 22 days, 11:44, 1 user, load average: 1.02, 0.71, 0.64"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003445", "end": "2025-12-17 23:20:11.968351", "msg": "", "rc": 0, "start": "2025-12-17 23:20:11.964906", "stderr": "", "stderr_lines": [], "stdout": " 23:20:11 up 22 days, 10:31, 1 user, load average: 0.62, 0.84, 1.06", "stdout_lines": [" 23:20:11 up 22 days, 10:31, 1 user, load average: 0.62, 0.84, 1.06"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002977", "end": "2025-12-17 23:20:11.979480", "msg": "", "rc": 0, "start": "2025-12-17 23:20:11.976503", "stderr": "", "stderr_lines": [], "stdout": " 23:20:11 up 3 days, 12:52, 1 user, load average: 0.46, 0.30, 0.25", "stdout_lines": [" 23:20:11 up 3 days, 12:52, 1 user, load average: 0.46, 0.30, 0.25"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002698", "end": "2025-12-17 23:19:45.568241", "msg": "", "rc": 0, "start": "2025-12-17 23:19:45.565543", "stderr": "", "stderr_lines": [], "stdout": " 23:19:45 up 11 days, 11:09, 0 user, load average: 0.10, 0.08, 0.09", "stdout_lines": [" 23:19:45 up 11 days, 11:09, 0 user, load average: 0.10, 0.08, 0.09"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008445", "end": "2025-12-17 23:20:12.629665", "msg": "", "rc": 0, "start": "2025-12-17 23:20:12.621220", "stderr": "", "stderr_lines": [], "stdout": " 23:20:12 up 194 days, 14:53, 1 user, load average: 0.22, 0.22, 0.18", "stdout_lines": [" 23:20:12 up 194 days, 14:53, 1 user, load average: 0.22, 0.22, 0.18"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009267", "end": "2025-12-17 23:20:12.663842", "msg": "", "rc": 0, "start": "2025-12-17 23:20:12.654575", "stderr": "", "stderr_lines": [], "stdout": " 23:20:12 up 194 days, 14:53, 1 user, load average: 0.23, 0.25, 0.23", "stdout_lines": [" 23:20:12 up 194 days, 14:53, 1 user, load average: 0.23, 0.25, 0.23"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004422", "end": "2025-12-17 23:20:12.937938", "msg": "", "rc": 0, "start": "2025-12-17 23:20:11.933516", "stderr": "", "stderr_lines": [], "stdout": " 23:20:11 up 22 days, 10:11, 1 user, load average: 0.24, 0.30, 0.28", "stdout_lines": [" 23:20:11 up 22 days, 10:11, 1 user, load average: 0.24, 0.30, 0.28"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003769", "end": "2025-12-17 23:19:39.412454", "msg": "", "rc": 0, "start": "2025-12-17 23:19:39.408685", "stderr": "", "stderr_lines": [], "stdout": " 23:19:39 up 18 days, 7:21, 0 user, load average: 0.00, 0.02, 0.00", "stdout_lines": [" 23:19:39 up 18 days, 7:21, 0 user, load average: 0.00, 0.02, 0.00"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004931", "end": "2025-12-17 23:20:13.108106", "msg": "", "rc": 0, "start": "2025-12-17 23:20:13.103175", "stderr": "", "stderr_lines": [], "stdout": " 23:20:13 up 3 days, 12:51, 1 user, load average: 0.05, 0.08, 0.02", "stdout_lines": [" 23:20:13 up 3 days, 12:51, 1 user, load average: 0.05, 0.08, 0.02"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003169", "end": "2025-12-17 23:19:42.332908", "msg": "", "rc": 0, "start": "2025-12-17 23:19:42.329739", "stderr": "", "stderr_lines": [], "stdout": " 23:19:42 up 21 days, 2:14, 0 user, load average: 0.51, 0.61, 0.60", "stdout_lines": [" 23:19:42 up 21 days, 2:14, 0 user, load average: 0.51, 0.61, 0.60"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004159", "end": "2025-12-17 20:20:13.371923", "msg": "", "rc": 0, "start": "2025-12-17 20:20:13.367764", "stderr": "", "stderr_lines": [], "stdout": " 8:20PM up 22 days, 10:10, 1 user, load averages: 0.18, 0.18, 0.16", "stdout_lines": [" 8:20PM up 22 days, 10:10, 1 user, load averages: 0.18, 0.18, 0.16"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003076", "end": "2025-12-17 23:19:49.135309", "msg": "", "rc": 0, "start": "2025-12-17 23:19:49.132233", "stderr": "", "stderr_lines": [], "stdout": " 23:19:49 up 17 days, 12:35, 0 user, load average: 0.22, 0.27, 0.52", "stdout_lines": [" 23:19:49 up 17 days, 12:35, 0 user, load average: 0.22, 0.27, 0.52"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019668", "end": "2025-12-17 23:20:13.335056", "msg": "", "rc": 0, "start": "2025-12-17 23:20:13.315388", "stderr": "", "stderr_lines": [], "stdout": " 23:20:13 up 15 days, 12:46, 1 user, load average: 0.29, 0.18, 0.14", "stdout_lines": [" 23:20:13 up 15 days, 12:46, 1 user, load average: 0.29, 0.18, 0.14"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003709", "end": "2025-12-17 23:20:13.521025", "msg": "", "rc": 0, "start": "2025-12-17 23:20:13.517316", "stderr": "", "stderr_lines": [], "stdout": " 23:20:13 up 3 days, 12:51, 1 user, load average: 0.32, 0.18, 0.11", "stdout_lines": [" 23:20:13 up 3 days, 12:51, 1 user, load average: 0.32, 0.18, 0.11"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.007719", "end": "2025-12-17 23:20:13.997006", "msg": "", "rc": 0, "start": "2025-12-17 23:20:13.989287", "stderr": "", "stderr_lines": [], "stdout": " 23:20:13 up 3:29, 1 user, load average: 1.22, 1.09, 1.09", "stdout_lines": [" 23:20:13 up 3:29, 1 user, load average: 1.22, 1.09, 1.09"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004215", "end": "2025-12-17 23:20:13.935609", "msg": "", "rc": 0, "start": "2025-12-17 23:20:13.931394", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004701", "end": "2025-12-17 23:20:13.958821", "msg": "", "rc": 0, "start": "2025-12-17 23:20:13.954120", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004165", "end": "2025-12-17 23:20:13.963726", "msg": "", "rc": 0, "start": "2025-12-17 23:20:13.959561", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004755", "end": "2025-12-17 23:20:13.989078", "msg": "", "rc": 0, "start": "2025-12-17 23:20:13.984323", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005698", "end": "2025-12-17 23:20:13.991730", "msg": "", "rc": 0, "start": "2025-12-17 23:20:13.986032", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005141", "end": "2025-12-17 23:19:47.554125", "msg": "", "rc": 0, "start": "2025-12-17 23:19:47.548984", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005675", "end": "2025-12-17 23:19:40.966492", "msg": "", "rc": 0, "start": "2025-12-17 23:19:40.960817", "stderr": "", "stderr_lines": [], "stdout": "24%", "stdout_lines": ["24%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010491", "end": "2025-12-17 23:20:14.678311", "msg": "", "rc": 0, "start": "2025-12-17 23:20:14.667820", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011593", "end": "2025-12-17 23:20:14.691868", "msg": "", "rc": 0, "start": "2025-12-17 23:20:14.680275", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005670", "end": "2025-12-17 23:20:14.887141", "msg": "", "rc": 0, "start": "2025-12-17 23:20:14.881471", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005450", "end": "2025-12-17 23:19:44.141778", "msg": "", "rc": 0, "start": "2025-12-17 23:19:44.136328", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005496", "end": "2025-12-17 20:20:15.141208", "msg": "", "rc": 0, "start": "2025-12-17 20:20:15.135712", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005330", "end": "2025-12-17 23:19:50.925303", "msg": "", "rc": 0, "start": "2025-12-17 23:19:50.919973", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005636", "end": "2025-12-17 23:20:15.297923", "msg": "", "rc": 0, "start": "2025-12-17 23:20:15.292287", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.018388", "end": "2025-12-17 23:20:15.849135", "msg": "", "rc": 0, "start": "2025-12-17 23:20:15.830747", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025418", "end": "2025-12-17 23:20:15.307299", "msg": "", "rc": 0, "start": "2025-12-17 23:20:15.281881", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004138", "end": "2025-12-17 23:20:15.819504", "msg": "", "rc": 0, "start": "2025-12-17 23:20:15.815366", "stderr": "", "stderr_lines": [], "stdout": "78.6%", "stdout_lines": ["78.6%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004142", "end": "2025-12-17 23:20:15.841922", "msg": "", "rc": 0, "start": "2025-12-17 23:20:15.837780", "stderr": "", "stderr_lines": [], "stdout": "22.5%", "stdout_lines": ["22.5%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004798", "end": "2025-12-17 23:20:15.847057", "msg": "", "rc": 0, "start": "2025-12-17 23:20:15.842259", "stderr": "", "stderr_lines": [], "stdout": "48.8%", "stdout_lines": ["48.8%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004832", "end": "2025-12-17 23:20:15.869467", "msg": "", "rc": 0, "start": "2025-12-17 23:20:15.864635", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005748", "end": "2025-12-17 23:20:15.887711", "msg": "", "rc": 0, "start": "2025-12-17 23:20:15.881963", "stderr": "", "stderr_lines": [], "stdout": "60.1%", "stdout_lines": ["60.1%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003787", "end": "2025-12-17 23:19:49.438810", "msg": "", "rc": 0, "start": "2025-12-17 23:19:49.435023", "stderr": "", "stderr_lines": [], "stdout": "71.0%", "stdout_lines": ["71.0%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004578", "end": "2025-12-17 23:19:42.865021", "msg": "", "rc": 0, "start": "2025-12-17 23:19:42.860443", "stderr": "", "stderr_lines": [], "stdout": "69.4%", "stdout_lines": ["69.4%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010776", "end": "2025-12-17 23:20:16.512410", "msg": "", "rc": 0, "start": "2025-12-17 23:20:16.501634", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012109", "end": "2025-12-17 23:20:16.553740", "msg": "", "rc": 0, "start": "2025-12-17 23:20:16.541631", "stderr": "", "stderr_lines": [], "stdout": "13.0%", "stdout_lines": ["13.0%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005860", "end": "2025-12-17 23:20:16.767282", "msg": "", "rc": 0, "start": "2025-12-17 23:20:16.761422", "stderr": "", "stderr_lines": [], "stdout": "35.6%", "stdout_lines": ["35.6%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004190", "end": "2025-12-17 23:19:46.027440", "msg": "", "rc": 0, "start": "2025-12-17 23:19:46.023250", "stderr": "", "stderr_lines": [], "stdout": "27.3%", "stdout_lines": ["27.3%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003989", "end": "2025-12-17 23:19:52.742977", "msg": "", "rc": 0, "start": "2025-12-17 23:19:52.738988", "stderr": "", "stderr_lines": [], "stdout": "53.6%", "stdout_lines": ["53.6%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004984", "end": "2025-12-17 20:20:17.027028", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 20:20:17.022044", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005357", "end": "2025-12-17 23:20:17.172114", "msg": "", "rc": 0, "start": "2025-12-17 23:20:17.166757", "stderr": "", "stderr_lines": [], "stdout": "14.2%", "stdout_lines": ["14.2%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.008163", "end": "2025-12-17 23:20:17.741392", "msg": "", "rc": 0, "start": "2025-12-17 23:20:17.733229", "stderr": "", "stderr_lines": [], "stdout": "12.7%", "stdout_lines": ["12.7%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025781", "end": "2025-12-17 23:20:17.209336", "msg": "", "rc": 0, "start": "2025-12-17 23:20:17.183555", "stderr": "", "stderr_lines": [], "stdout": "21.0%", "stdout_lines": ["21.0%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005189", "end": "2025-12-17 23:20:17.735581", "msg": "", "rc": 0, "start": "2025-12-17 23:20:17.730392", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004890", "end": "2025-12-17 23:20:17.734139", "msg": "", "rc": 0, "start": "2025-12-17 23:20:17.729249", "stderr": "", "stderr_lines": [], "stdout": "45.0°C", "stdout_lines": ["45.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003176", "end": "2025-12-17 23:20:17.770038", "msg": "", "rc": 0, "start": "2025-12-17 23:20:17.766862", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005405", "end": "2025-12-17 23:20:17.767681", "msg": "", "rc": 0, "start": "2025-12-17 23:20:17.762276", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.007117", "end": "2025-12-17 23:20:17.810852", "msg": "", "rc": 0, "start": "2025-12-17 23:20:17.803735", "stderr": "", "stderr_lines": [], "stdout": "51.5°C", "stdout_lines": ["51.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003338", "end": "2025-12-17 23:19:51.364913", "msg": "", "rc": 0, "start": "2025-12-17 23:19:51.361575", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003142", "end": "2025-12-17 23:19:44.786743", "msg": "", "rc": 0, "start": "2025-12-17 23:19:44.783601", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011810", "end": "2025-12-17 23:20:18.409480", "msg": "", "rc": 0, "start": "2025-12-17 23:20:18.397670", "stderr": "", "stderr_lines": [], "stdout": "29.7°C", "stdout_lines": ["29.7°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013032", "end": "2025-12-17 23:20:18.451358", "msg": "", "rc": 0, "start": "2025-12-17 23:20:18.438326", "stderr": "", "stderr_lines": [], "stdout": "34.1°C", "stdout_lines": ["34.1°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003146", "end": "2025-12-17 23:20:18.704927", "msg": "", "rc": 0, "start": "2025-12-17 23:20:18.701781", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003055", "end": "2025-12-17 23:19:47.945975", "msg": "", "rc": 0, "start": "2025-12-17 23:19:47.942920", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002849", "end": "2025-12-17 23:19:54.634641", "msg": "", "rc": 0, "start": "2025-12-17 23:19:54.631792", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003872", "end": "2025-12-17 20:20:18.913832", "msg": "", "rc": 0, "start": "2025-12-17 20:20:18.909960", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002881", "end": "2025-12-17 23:20:19.110296", "msg": "", "rc": 0, "start": "2025-12-17 23:20:19.107415", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004299", "end": "2025-12-17 23:20:19.143023", "msg": "", "rc": 0, "start": "2025-12-17 23:20:19.138724", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028411", "end": "2025-12-17 23:20:19.117329", "msg": "", "rc": 0, "start": "2025-12-17 23:20:19.088918", "stderr": "", "stderr_lines": [], "stdout": "33.4°C", "stdout_lines": ["33.4°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004102", "end": "2025-12-17 23:20:19.632138", "msg": "", "rc": 0, "start": "2025-12-17 23:20:19.628036", "stderr": "", "stderr_lines": [], "stdout": "0.36", "stdout_lines": ["0.36"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004054", "end": "2025-12-17 23:20:19.652831", "msg": "", "rc": 0, "start": "2025-12-17 23:20:19.648777", "stderr": "", "stderr_lines": [], "stdout": "0.42", "stdout_lines": ["0.42"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004474", "end": "2025-12-17 23:20:19.666458", "msg": "", "rc": 0, "start": "2025-12-17 23:20:19.661984", "stderr": "", "stderr_lines": [], "stdout": "0.73", "stdout_lines": ["0.73"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005170", "end": "2025-12-17 23:20:19.683874", "msg": "", "rc": 0, "start": "2025-12-17 23:20:19.678704", "stderr": "", "stderr_lines": [], "stdout": "0.13", "stdout_lines": ["0.13"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005410", "end": "2025-12-17 23:20:19.703198", "msg": "", "rc": 0, "start": "2025-12-17 23:20:19.697788", "stderr": "", "stderr_lines": [], "stdout": "0.94", "stdout_lines": ["0.94"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004266", "end": "2025-12-17 23:19:53.247769", "msg": "", "rc": 0, "start": "2025-12-17 23:19:53.243503", "stderr": "", "stderr_lines": [], "stdout": "0.81", "stdout_lines": ["0.81"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005140", "end": "2025-12-17 23:19:46.687836", "msg": "", "rc": 0, "start": "2025-12-17 23:19:46.682696", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010137", "end": "2025-12-17 23:20:20.389932", "msg": "", "rc": 0, "start": "2025-12-17 23:20:20.379795", "stderr": "", "stderr_lines": [], "stdout": "0.28", "stdout_lines": ["0.28"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011266", "end": "2025-12-17 23:20:20.432073", "msg": "", "rc": 0, "start": "2025-12-17 23:20:20.420807", "stderr": "", "stderr_lines": [], "stdout": "0.21", "stdout_lines": ["0.21"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005457", "end": "2025-12-17 23:20:20.577517", "msg": "", "rc": 0, "start": "2025-12-17 23:20:20.572060", "stderr": "", "stderr_lines": [], "stdout": "0.05", "stdout_lines": ["0.05"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004964", "end": "2025-12-17 23:19:49.900163", "msg": "", "rc": 0, "start": "2025-12-17 23:19:49.895199", "stderr": "", "stderr_lines": [], "stdout": "0.47", "stdout_lines": ["0.47"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004483", "end": "2025-12-17 23:19:56.616426", "msg": "", "rc": 0, "start": "2025-12-17 23:19:56.611943", "stderr": "", "stderr_lines": [], "stdout": "0.21", "stdout_lines": ["0.21"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005799", "end": "2025-12-17 20:20:20.888447", "msg": "", "rc": 0, "start": "2025-12-17 20:20:20.882648", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005809", "end": "2025-12-17 23:20:21.003169", "msg": "", "rc": 0, "start": "2025-12-17 23:20:20.997360", "stderr": "", "stderr_lines": [], "stdout": "0.27", "stdout_lines": ["0.27"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.008656", "end": "2025-12-17 23:20:21.135760", "msg": "", "rc": 0, "start": "2025-12-17 23:20:21.127104", "stderr": "", "stderr_lines": [], "stdout": "1.20", "stdout_lines": ["1.20"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024117", "end": "2025-12-17 23:20:21.009858", "msg": "", "rc": 0, "start": "2025-12-17 23:20:20.985741", "stderr": "", "stderr_lines": [], "stdout": "0.27", "stdout_lines": ["0.27"]} + +TASK [Display health status] *************************************************** +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:20:11 up 22 days, 10:11, 1 user, load average: 0.24, 0.30, 0.28\nDisk Usage: 23%\nMemory Usage: 78.6%\nCPU Load: 0.36\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:20:11 up 3 days, 12:52, 1 user, load average: 0.46, 0.30, 0.25\nDisk Usage: 22%\nMemory Usage: 22.5%\nCPU Load: 0.42\nCPU Temp: 45.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:20:11 up 22 days, 10:31, 1 user, load average: 0.62, 0.84, 1.06\nDisk Usage: 14%\nMemory Usage: 48.8%\nCPU Load: 0.73\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:20:11 up 22 days, 11:44, 1 user, load average: 1.02, 0.71, 0.64\nDisk Usage: 14%\nMemory Usage: 60.1%\nCPU Load: 0.94\nCPU Temp: 51.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:20:11 up 22 days, 12:30, 1 user, load average: 0.14, 0.06, 0.01\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.13\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:20:13 up 15 days, 12:46, 1 user, load average: 0.29, 0.18, 0.14\nDisk Usage: 21%\nMemory Usage: 21.0%\nCPU Load: 0.27\nCPU Temp: 33.4°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:20:12 up 194 days, 14:53, 1 user, load average: 0.23, 0.25, 0.23\nDisk Usage: 6%\nMemory Usage: 13.0%\nCPU Load: 0.21\nCPU Temp: 34.1°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:20:12 up 194 days, 14:53, 1 user, load average: 0.22, 0.22, 0.18\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.28\nCPU Temp: 29.7°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:19:45 up 11 days, 11:09, 0 user, load average: 0.10, 0.08, 0.09\nDisk Usage: 48%\nMemory Usage: 71.0%\nCPU Load: 0.81\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:19:39 up 18 days, 7:21, 0 user, load average: 0.00, 0.02, 0.00\nDisk Usage: 24%\nMemory Usage: 69.4%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:20:13 up 3 days, 12:51, 1 user, load average: 0.05, 0.08, 0.02\nDisk Usage: 1%\nMemory Usage: 35.6%\nCPU Load: 0.05\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:19:42 up 21 days, 2:14, 0 user, load average: 0.51, 0.61, 0.60\nDisk Usage: 28%\nMemory Usage: 27.3%\nCPU Load: 0.47\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:19:49 up 17 days, 12:35, 0 user, load average: 0.22, 0.27, 0.52\nDisk Usage: 76%\nMemory Usage: 53.6%\nCPU Load: 0.21\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 8:20PM up 22 days, 10:10, 1 user, load averages: 0.18, 0.18, 0.16\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:20:13 up 3 days, 12:51, 1 user, load average: 0.32, 0.18, 0.11\nDisk Usage: 79%\nMemory Usage: 14.2%\nCPU Load: 0.27\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:20:13 up 3:29, 1 user, load average: 1.22, 1.09, 1.09\nDisk Usage: 1%\nMemory Usage: 12.7%\nCPU Load: 1.20\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T04:20:22.023319+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_042522_b6adc9_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_042522_b6adc9_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..01e6fb1 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_042522_b6adc9_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `d37fe63216a14f478e02694e8a1e5969` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T04:25:00.001497+00:00 | +| **Fin** | 2025-12-18T04:25:22.022761+00:00 | +| **Durée** | 22.0s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.4gb.home] +ok: [raspi.8gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003416", "end": "2025-12-17 23:25:11.682152", "msg": "", "rc": 0, "start": "2025-12-17 23:25:11.678736", "stderr": "", "stderr_lines": [], "stdout": " 23:25:11 up 22 days, 10:36, 1 user, load average: 1.29, 0.87, 1.00", "stdout_lines": [" 23:25:11 up 22 days, 10:36, 1 user, load average: 1.29, 0.87, 1.00"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003321", "end": "2025-12-17 23:25:11.684574", "msg": "", "rc": 0, "start": "2025-12-17 23:25:11.681253", "stderr": "", "stderr_lines": [], "stdout": " 23:25:11 up 22 days, 12:35, 1 user, load average: 0.04, 0.06, 0.01", "stdout_lines": [" 23:25:11 up 22 days, 12:35, 1 user, load average: 0.04, 0.06, 0.01"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003828", "end": "2025-12-17 23:25:11.703290", "msg": "", "rc": 0, "start": "2025-12-17 23:25:11.699462", "stderr": "", "stderr_lines": [], "stdout": " 23:25:11 up 22 days, 11:49, 1 user, load average: 0.86, 0.75, 0.67", "stdout_lines": [" 23:25:11 up 22 days, 11:49, 1 user, load average: 0.86, 0.75, 0.67"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002840", "end": "2025-12-17 23:25:11.714082", "msg": "", "rc": 0, "start": "2025-12-17 23:25:11.711242", "stderr": "", "stderr_lines": [], "stdout": " 23:25:11 up 3 days, 12:57, 1 user, load average: 0.01, 0.13, 0.18", "stdout_lines": [" 23:25:11 up 3 days, 12:57, 1 user, load average: 0.01, 0.13, 0.18"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003063", "end": "2025-12-17 23:24:45.287051", "msg": "", "rc": 0, "start": "2025-12-17 23:24:45.283988", "stderr": "", "stderr_lines": [], "stdout": " 23:24:45 up 11 days, 11:14, 0 user, load average: 0.28, 0.23, 0.15", "stdout_lines": [" 23:24:45 up 11 days, 11:14, 0 user, load average: 0.28, 0.23, 0.15"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009318", "end": "2025-12-17 23:25:12.374031", "msg": "", "rc": 0, "start": "2025-12-17 23:25:12.364713", "stderr": "", "stderr_lines": [], "stdout": " 23:25:12 up 194 days, 14:58, 1 user, load average: 0.17, 0.21, 0.18", "stdout_lines": [" 23:25:12 up 194 days, 14:58, 1 user, load average: 0.17, 0.21, 0.18"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009347", "end": "2025-12-17 23:25:12.402796", "msg": "", "rc": 0, "start": "2025-12-17 23:25:12.393449", "stderr": "", "stderr_lines": [], "stdout": " 23:25:12 up 194 days, 14:58, 1 user, load average: 0.64, 0.53, 0.35", "stdout_lines": [" 23:25:12 up 194 days, 14:58, 1 user, load average: 0.64, 0.53, 0.35"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.003870", "end": "2025-12-17 23:25:12.672073", "msg": "", "rc": 0, "start": "2025-12-17 23:25:11.668203", "stderr": "", "stderr_lines": [], "stdout": " 23:25:11 up 22 days, 10:16, 1 user, load average: 0.34, 0.28, 0.27", "stdout_lines": [" 23:25:11 up 22 days, 10:16, 1 user, load average: 0.34, 0.28, 0.27"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003663", "end": "2025-12-17 23:24:39.131790", "msg": "", "rc": 0, "start": "2025-12-17 23:24:39.128127", "stderr": "", "stderr_lines": [], "stdout": " 23:24:39 up 18 days, 7:26, 0 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 23:24:39 up 18 days, 7:26, 0 user, load average: 0.00, 0.00, 0.00"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004825", "end": "2025-12-17 23:25:12.879451", "msg": "", "rc": 0, "start": "2025-12-17 23:25:12.874626", "stderr": "", "stderr_lines": [], "stdout": " 23:25:12 up 3 days, 12:56, 1 user, load average: 0.11, 0.13, 0.06", "stdout_lines": [" 23:25:12 up 3 days, 12:56, 1 user, load average: 0.11, 0.13, 0.06"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003128", "end": "2025-12-17 23:24:42.053490", "msg": "", "rc": 0, "start": "2025-12-17 23:24:42.050362", "stderr": "", "stderr_lines": [], "stdout": " 23:24:42 up 21 days, 2:18, 0 user, load average: 0.80, 0.67, 0.63", "stdout_lines": [" 23:24:42 up 21 days, 2:18, 0 user, load average: 0.80, 0.67, 0.63"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004254", "end": "2025-12-17 20:25:13.092494", "msg": "", "rc": 0, "start": "2025-12-17 20:25:13.088240", "stderr": "", "stderr_lines": [], "stdout": " 8:25PM up 22 days, 10:15, 1 user, load averages: 0.12, 0.14, 0.15", "stdout_lines": [" 8:25PM up 22 days, 10:15, 1 user, load averages: 0.12, 0.14, 0.15"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002969", "end": "2025-12-17 23:24:48.860577", "msg": "", "rc": 0, "start": "2025-12-17 23:24:48.857608", "stderr": "", "stderr_lines": [], "stdout": " 23:24:48 up 17 days, 12:40, 0 user, load average: 0.10, 0.14, 0.39", "stdout_lines": [" 23:24:48 up 17 days, 12:40, 0 user, load average: 0.10, 0.14, 0.39"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019078", "end": "2025-12-17 23:25:13.055534", "msg": "", "rc": 0, "start": "2025-12-17 23:25:13.036456", "stderr": "", "stderr_lines": [], "stdout": " 23:25:13 up 15 days, 12:51, 1 user, load average: 0.14, 0.15, 0.14", "stdout_lines": [" 23:25:13 up 15 days, 12:51, 1 user, load average: 0.14, 0.15, 0.14"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003661", "end": "2025-12-17 23:25:13.303504", "msg": "", "rc": 0, "start": "2025-12-17 23:25:13.299843", "stderr": "", "stderr_lines": [], "stdout": " 23:25:13 up 3 days, 12:56, 1 user, load average: 0.00, 0.07, 0.08", "stdout_lines": [" 23:25:13 up 3 days, 12:56, 1 user, load average: 0.00, 0.07, 0.08"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008360", "end": "2025-12-17 23:25:13.478283", "msg": "", "rc": 0, "start": "2025-12-17 23:25:13.469923", "stderr": "", "stderr_lines": [], "stdout": " 23:25:13 up 3:34, 1 user, load average: 1.30, 1.13, 1.10", "stdout_lines": [" 23:25:13 up 3:34, 1 user, load average: 1.30, 1.13, 1.10"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004216", "end": "2025-12-17 23:25:13.739263", "msg": "", "rc": 0, "start": "2025-12-17 23:25:13.735047", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004566", "end": "2025-12-17 23:25:13.746320", "msg": "", "rc": 0, "start": "2025-12-17 23:25:13.741754", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004082", "end": "2025-12-17 23:25:13.763746", "msg": "", "rc": 0, "start": "2025-12-17 23:25:13.759664", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005242", "end": "2025-12-17 23:25:13.787019", "msg": "", "rc": 0, "start": "2025-12-17 23:25:13.781777", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005709", "end": "2025-12-17 23:25:13.800996", "msg": "", "rc": 0, "start": "2025-12-17 23:25:13.795287", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004978", "end": "2025-12-17 23:24:47.392658", "msg": "", "rc": 0, "start": "2025-12-17 23:24:47.387680", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005288", "end": "2025-12-17 23:24:40.793208", "msg": "", "rc": 0, "start": "2025-12-17 23:24:40.787920", "stderr": "", "stderr_lines": [], "stdout": "24%", "stdout_lines": ["24%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010747", "end": "2025-12-17 23:25:14.467632", "msg": "", "rc": 0, "start": "2025-12-17 23:25:14.456885", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.012690", "end": "2025-12-17 23:25:14.558182", "msg": "", "rc": 0, "start": "2025-12-17 23:25:14.545492", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006027", "end": "2025-12-17 23:25:14.723274", "msg": "", "rc": 0, "start": "2025-12-17 23:25:14.717247", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005398", "end": "2025-12-17 23:24:43.962104", "msg": "", "rc": 0, "start": "2025-12-17 23:24:43.956706", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004842", "end": "2025-12-17 23:24:50.700815", "msg": "", "rc": 0, "start": "2025-12-17 23:24:50.695973", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005519", "end": "2025-12-17 20:25:15.015491", "msg": "", "rc": 0, "start": "2025-12-17 20:25:15.009972", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005442", "end": "2025-12-17 23:25:15.133568", "msg": "", "rc": 0, "start": "2025-12-17 23:25:15.128126", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.019971", "end": "2025-12-17 23:25:15.348565", "msg": "", "rc": 0, "start": "2025-12-17 23:25:15.328594", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.024986", "end": "2025-12-17 23:25:15.137933", "msg": "", "rc": 0, "start": "2025-12-17 23:25:15.112947", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004326", "end": "2025-12-17 23:25:15.653800", "msg": "", "rc": 0, "start": "2025-12-17 23:25:15.649474", "stderr": "", "stderr_lines": [], "stdout": "78.6%", "stdout_lines": ["78.6%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004158", "end": "2025-12-17 23:25:15.665202", "msg": "", "rc": 0, "start": "2025-12-17 23:25:15.661044", "stderr": "", "stderr_lines": [], "stdout": "22.7%", "stdout_lines": ["22.7%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004827", "end": "2025-12-17 23:25:15.689166", "msg": "", "rc": 0, "start": "2025-12-17 23:25:15.684339", "stderr": "", "stderr_lines": [], "stdout": "48.8%", "stdout_lines": ["48.8%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005004", "end": "2025-12-17 23:25:15.712513", "msg": "", "rc": 0, "start": "2025-12-17 23:25:15.707509", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005664", "end": "2025-12-17 23:25:15.730338", "msg": "", "rc": 0, "start": "2025-12-17 23:25:15.724674", "stderr": "", "stderr_lines": [], "stdout": "60.2%", "stdout_lines": ["60.2%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003503", "end": "2025-12-17 23:24:49.271869", "msg": "", "rc": 0, "start": "2025-12-17 23:24:49.268366", "stderr": "", "stderr_lines": [], "stdout": "71.2%", "stdout_lines": ["71.2%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004285", "end": "2025-12-17 23:24:42.709910", "msg": "", "rc": 0, "start": "2025-12-17 23:24:42.705625", "stderr": "", "stderr_lines": [], "stdout": "69.4%", "stdout_lines": ["69.4%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010878", "end": "2025-12-17 23:25:16.329360", "msg": "", "rc": 0, "start": "2025-12-17 23:25:16.318482", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012032", "end": "2025-12-17 23:25:16.380317", "msg": "", "rc": 0, "start": "2025-12-17 23:25:16.368285", "stderr": "", "stderr_lines": [], "stdout": "13.1%", "stdout_lines": ["13.1%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005773", "end": "2025-12-17 23:25:16.612971", "msg": "", "rc": 0, "start": "2025-12-17 23:25:16.607198", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004206", "end": "2025-12-17 23:24:45.868089", "msg": "", "rc": 0, "start": "2025-12-17 23:24:45.863883", "stderr": "", "stderr_lines": [], "stdout": "27.3%", "stdout_lines": ["27.3%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003664", "end": "2025-12-17 23:24:52.556591", "msg": "", "rc": 0, "start": "2025-12-17 23:24:52.552927", "stderr": "", "stderr_lines": [], "stdout": "53.8%", "stdout_lines": ["53.8%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005073", "end": "2025-12-17 20:25:16.838649", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 20:25:16.833576", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005331", "end": "2025-12-17 23:25:17.033096", "msg": "", "rc": 0, "start": "2025-12-17 23:25:17.027765", "stderr": "", "stderr_lines": [], "stdout": "14.0%", "stdout_lines": ["14.0%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.008966", "end": "2025-12-17 23:25:17.275151", "msg": "", "rc": 0, "start": "2025-12-17 23:25:17.266185", "stderr": "", "stderr_lines": [], "stdout": "12.8%", "stdout_lines": ["12.8%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025589", "end": "2025-12-17 23:25:17.032548", "msg": "", "rc": 0, "start": "2025-12-17 23:25:17.006959", "stderr": "", "stderr_lines": [], "stdout": "19.9%", "stdout_lines": ["19.9%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006251", "end": "2025-12-17 23:25:17.545482", "msg": "", "rc": 0, "start": "2025-12-17 23:25:17.539231", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004859", "end": "2025-12-17 23:25:17.560342", "msg": "", "rc": 0, "start": "2025-12-17 23:25:17.555483", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005810", "end": "2025-12-17 23:25:17.576508", "msg": "", "rc": 0, "start": "2025-12-17 23:25:17.570698", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002836", "end": "2025-12-17 23:25:17.592585", "msg": "", "rc": 0, "start": "2025-12-17 23:25:17.589749", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006941", "end": "2025-12-17 23:25:17.613327", "msg": "", "rc": 0, "start": "2025-12-17 23:25:17.606386", "stderr": "", "stderr_lines": [], "stdout": "51.5°C", "stdout_lines": ["51.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002365", "end": "2025-12-17 23:24:51.164721", "msg": "", "rc": 0, "start": "2025-12-17 23:24:51.162356", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002860", "end": "2025-12-17 23:24:44.599284", "msg": "", "rc": 0, "start": "2025-12-17 23:24:44.596424", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011708", "end": "2025-12-17 23:25:18.234981", "msg": "", "rc": 0, "start": "2025-12-17 23:25:18.223273", "stderr": "", "stderr_lines": [], "stdout": "30.2°C", "stdout_lines": ["30.2°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013041", "end": "2025-12-17 23:25:18.267670", "msg": "", "rc": 0, "start": "2025-12-17 23:25:18.254629", "stderr": "", "stderr_lines": [], "stdout": "35.5°C", "stdout_lines": ["35.5°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003174", "end": "2025-12-17 23:25:18.506996", "msg": "", "rc": 0, "start": "2025-12-17 23:25:18.503822", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002901", "end": "2025-12-17 23:24:47.776915", "msg": "", "rc": 0, "start": "2025-12-17 23:24:47.774014", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003874", "end": "2025-12-17 20:25:18.727792", "msg": "", "rc": 0, "start": "2025-12-17 20:25:18.723918", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002817", "end": "2025-12-17 23:24:54.472875", "msg": "", "rc": 0, "start": "2025-12-17 23:24:54.470058", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002922", "end": "2025-12-17 23:25:18.911693", "msg": "", "rc": 0, "start": "2025-12-17 23:25:18.908771", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004446", "end": "2025-12-17 23:25:19.268617", "msg": "", "rc": 0, "start": "2025-12-17 23:25:19.264171", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028595", "end": "2025-12-17 23:25:18.942648", "msg": "", "rc": 0, "start": "2025-12-17 23:25:18.914053", "stderr": "", "stderr_lines": [], "stdout": "34.1°C", "stdout_lines": ["34.1°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004121", "end": "2025-12-17 23:25:19.453873", "msg": "", "rc": 0, "start": "2025-12-17 23:25:19.449752", "stderr": "", "stderr_lines": [], "stdout": "0.28", "stdout_lines": ["0.28"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004144", "end": "2025-12-17 23:25:19.475062", "msg": "", "rc": 0, "start": "2025-12-17 23:25:19.470918", "stderr": "", "stderr_lines": [], "stdout": "0.09", "stdout_lines": ["0.09"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004665", "end": "2025-12-17 23:25:19.476948", "msg": "", "rc": 0, "start": "2025-12-17 23:25:19.472283", "stderr": "", "stderr_lines": [], "stdout": "1.25", "stdout_lines": ["1.25"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005640", "end": "2025-12-17 23:25:19.504965", "msg": "", "rc": 0, "start": "2025-12-17 23:25:19.499325", "stderr": "", "stderr_lines": [], "stdout": "0.04", "stdout_lines": ["0.04"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005618", "end": "2025-12-17 23:25:19.529290", "msg": "", "rc": 0, "start": "2025-12-17 23:25:19.523672", "stderr": "", "stderr_lines": [], "stdout": "0.87", "stdout_lines": ["0.87"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004093", "end": "2025-12-17 23:24:53.061897", "msg": "", "rc": 0, "start": "2025-12-17 23:24:53.057804", "stderr": "", "stderr_lines": [], "stdout": "0.24", "stdout_lines": ["0.24"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004947", "end": "2025-12-17 23:24:46.512152", "msg": "", "rc": 0, "start": "2025-12-17 23:24:46.507205", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010148", "end": "2025-12-17 23:25:20.219033", "msg": "", "rc": 0, "start": "2025-12-17 23:25:20.208885", "stderr": "", "stderr_lines": [], "stdout": "0.16", "stdout_lines": ["0.16"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011561", "end": "2025-12-17 23:25:20.267297", "msg": "", "rc": 0, "start": "2025-12-17 23:25:20.255736", "stderr": "", "stderr_lines": [], "stdout": "0.67", "stdout_lines": ["0.67"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005647", "end": "2025-12-17 23:25:20.394435", "msg": "", "rc": 0, "start": "2025-12-17 23:25:20.388788", "stderr": "", "stderr_lines": [], "stdout": "0.17", "stdout_lines": ["0.17"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005043", "end": "2025-12-17 23:24:49.671482", "msg": "", "rc": 0, "start": "2025-12-17 23:24:49.666439", "stderr": "", "stderr_lines": [], "stdout": "0.74", "stdout_lines": ["0.74"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004259", "end": "2025-12-17 23:24:56.451102", "msg": "", "rc": 0, "start": "2025-12-17 23:24:56.446843", "stderr": "", "stderr_lines": [], "stdout": "0.17", "stdout_lines": ["0.17"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005766", "end": "2025-12-17 20:25:20.730896", "msg": "", "rc": 0, "start": "2025-12-17 20:25:20.725130", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005334", "end": "2025-12-17 23:25:20.804488", "msg": "", "rc": 0, "start": "2025-12-17 23:25:20.799154", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006721", "end": "2025-12-17 23:25:21.140857", "msg": "", "rc": 0, "start": "2025-12-17 23:25:21.134136", "stderr": "", "stderr_lines": [], "stdout": "1.71", "stdout_lines": ["1.71"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024542", "end": "2025-12-17 23:25:20.831165", "msg": "", "rc": 0, "start": "2025-12-17 23:25:20.806623", "stderr": "", "stderr_lines": [], "stdout": "0.21", "stdout_lines": ["0.21"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:25:11 up 3 days, 12:57, 1 user, load average: 0.01, 0.13, 0.18\nDisk Usage: 22%\nMemory Usage: 22.7%\nCPU Load: 0.09\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:25:11 up 22 days, 10:16, 1 user, load average: 0.34, 0.28, 0.27\nDisk Usage: 23%\nMemory Usage: 78.6%\nCPU Load: 0.28\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:25:11 up 22 days, 10:36, 1 user, load average: 1.29, 0.87, 1.00\nDisk Usage: 14%\nMemory Usage: 48.8%\nCPU Load: 1.25\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:25:11 up 22 days, 11:49, 1 user, load average: 0.86, 0.75, 0.67\nDisk Usage: 14%\nMemory Usage: 60.2%\nCPU Load: 0.87\nCPU Temp: 51.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:25:11 up 22 days, 12:35, 1 user, load average: 0.04, 0.06, 0.01\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.04\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:25:13 up 15 days, 12:51, 1 user, load average: 0.14, 0.15, 0.14\nDisk Usage: 21%\nMemory Usage: 19.9%\nCPU Load: 0.21\nCPU Temp: 34.1°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:25:12 up 194 days, 14:58, 1 user, load average: 0.64, 0.53, 0.35\nDisk Usage: 6%\nMemory Usage: 13.1%\nCPU Load: 0.67\nCPU Temp: 35.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:25:12 up 194 days, 14:58, 1 user, load average: 0.17, 0.21, 0.18\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.16\nCPU Temp: 30.2°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:24:45 up 11 days, 11:14, 0 user, load average: 0.28, 0.23, 0.15\nDisk Usage: 48%\nMemory Usage: 71.2%\nCPU Load: 0.24\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:24:39 up 18 days, 7:26, 0 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 24%\nMemory Usage: 69.4%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:25:12 up 3 days, 12:56, 1 user, load average: 0.11, 0.13, 0.06\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.17\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:24:42 up 21 days, 2:18, 0 user, load average: 0.80, 0.67, 0.63\nDisk Usage: 28%\nMemory Usage: 27.3%\nCPU Load: 0.74\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:24:48 up 17 days, 12:40, 0 user, load average: 0.10, 0.14, 0.39\nDisk Usage: 76%\nMemory Usage: 53.8%\nCPU Load: 0.17\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 8:25PM up 22 days, 10:15, 1 user, load averages: 0.12, 0.14, 0.15\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:25:13 up 3 days, 12:56, 1 user, load average: 0.00, 0.07, 0.08\nDisk Usage: 79%\nMemory Usage: 14.0%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:25:13 up 3:34, 1 user, load average: 1.30, 1.13, 1.10\nDisk Usage: 1%\nMemory Usage: 12.8%\nCPU Load: 1.71\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T04:25:22.074295+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_043022_d2e88b_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_043022_d2e88b_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..041efee --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_043022_d2e88b_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `774a3c6cb83449998a813d2afde46cb0` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T04:30:00.001495+00:00 | +| **Fin** | 2025-12-18T04:30:22.569769+00:00 | +| **Durée** | 22.6s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003953", "end": "2025-12-17 23:30:11.621288", "msg": "", "rc": 0, "start": "2025-12-17 23:30:11.617335", "stderr": "", "stderr_lines": [], "stdout": " 23:30:11 up 22 days, 12:40, 1 user, load average: 0.04, 0.05, 0.00", "stdout_lines": [" 23:30:11 up 22 days, 12:40, 1 user, load average: 0.04, 0.05, 0.00"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002801", "end": "2025-12-17 23:30:11.649992", "msg": "", "rc": 0, "start": "2025-12-17 23:30:11.647191", "stderr": "", "stderr_lines": [], "stdout": " 23:30:11 up 3 days, 13:02, 1 user, load average: 0.17, 0.15, 0.17", "stdout_lines": [" 23:30:11 up 3 days, 13:02, 1 user, load average: 0.17, 0.15, 0.17"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009337", "end": "2025-12-17 23:30:12.419078", "msg": "", "rc": 0, "start": "2025-12-17 23:30:12.409741", "stderr": "", "stderr_lines": [], "stdout": " 23:30:12 up 194 days, 15:03, 1 user, load average: 0.29, 0.41, 0.35", "stdout_lines": [" 23:30:12 up 194 days, 15:03, 1 user, load average: 0.29, 0.41, 0.35"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004390", "end": "2025-12-17 23:30:12.611251", "msg": "", "rc": 0, "start": "2025-12-17 23:30:11.606861", "stderr": "", "stderr_lines": [], "stdout": " 23:30:11 up 22 days, 10:21, 1 user, load average: 0.08, 0.13, 0.20", "stdout_lines": [" 23:30:11 up 22 days, 10:21, 1 user, load average: 0.08, 0.13, 0.20"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004856", "end": "2025-12-17 23:30:12.633527", "msg": "", "rc": 0, "start": "2025-12-17 23:30:11.628671", "stderr": "", "stderr_lines": [], "stdout": " 23:30:11 up 22 days, 10:41, 1 user, load average: 0.98, 0.86, 0.95", "stdout_lines": [" 23:30:11 up 22 days, 10:41, 1 user, load average: 0.98, 0.86, 0.95"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004986", "end": "2025-12-17 23:30:12.650422", "msg": "", "rc": 0, "start": "2025-12-17 23:30:11.645436", "stderr": "", "stderr_lines": [], "stdout": " 23:30:11 up 22 days, 11:54, 1 user, load average: 0.53, 0.69, 0.67", "stdout_lines": [" 23:30:11 up 22 days, 11:54, 1 user, load average: 0.53, 0.69, 0.67"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019234", "end": "2025-12-17 23:30:12.986243", "msg": "", "rc": 0, "start": "2025-12-17 23:30:12.967009", "stderr": "", "stderr_lines": [], "stdout": " 23:30:12 up 15 days, 12:56, 1 user, load average: 0.14, 0.11, 0.11", "stdout_lines": [" 23:30:12 up 15 days, 12:56, 1 user, load average: 0.14, 0.11, 0.11"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004716", "end": "2025-12-17 23:30:13.122501", "msg": "", "rc": 0, "start": "2025-12-17 23:30:13.117785", "stderr": "", "stderr_lines": [], "stdout": " 23:30:13 up 3 days, 13:01, 1 user, load average: 0.02, 0.06, 0.04", "stdout_lines": [" 23:30:13 up 3 days, 13:01, 1 user, load average: 0.02, 0.06, 0.04"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002924", "end": "2025-12-17 23:29:46.257704", "msg": "", "rc": 0, "start": "2025-12-17 23:29:46.254780", "stderr": "", "stderr_lines": [], "stdout": " 23:29:46 up 11 days, 11:19, 0 user, load average: 0.09, 0.10, 0.10", "stdout_lines": [" 23:29:46 up 11 days, 11:19, 0 user, load average: 0.09, 0.10, 0.10"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003291", "end": "2025-12-17 23:29:39.595318", "msg": "", "rc": 0, "start": "2025-12-17 23:29:39.592027", "stderr": "", "stderr_lines": [], "stdout": " 23:29:39 up 18 days, 7:31, 0 user, load average: 0.06, 0.03, 0.00", "stdout_lines": [" 23:29:39 up 18 days, 7:31, 0 user, load average: 0.06, 0.03, 0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008439", "end": "2025-12-17 23:30:13.115661", "msg": "", "rc": 0, "start": "2025-12-17 23:30:13.107222", "stderr": "", "stderr_lines": [], "stdout": " 23:30:13 up 194 days, 15:03, 1 user, load average: 0.14, 0.15, 0.16", "stdout_lines": [" 23:30:13 up 194 days, 15:03, 1 user, load average: 0.14, 0.15, 0.16"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.007141", "end": "2025-12-17 23:30:13.826966", "msg": "", "rc": 0, "start": "2025-12-17 23:30:13.819825", "stderr": "", "stderr_lines": [], "stdout": " 23:30:13 up 3:39, 1 user, load average: 1.46, 1.19, 1.12", "stdout_lines": [" 23:30:13 up 3:39, 1 user, load average: 1.46, 1.19, 1.12"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004186", "end": "2025-12-17 20:30:13.562775", "msg": "", "rc": 0, "start": "2025-12-17 20:30:13.558589", "stderr": "", "stderr_lines": [], "stdout": " 8:30PM up 22 days, 10:20, 1 user, load averages: 0.04, 0.12, 0.14", "stdout_lines": [" 8:30PM up 22 days, 10:20, 1 user, load averages: 0.04, 0.12, 0.14"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003639", "end": "2025-12-17 23:30:13.578078", "msg": "", "rc": 0, "start": "2025-12-17 23:30:13.574439", "stderr": "", "stderr_lines": [], "stdout": " 23:30:13 up 3 days, 13:01, 1 user, load average: 0.04, 0.08, 0.08", "stdout_lines": [" 23:30:13 up 3 days, 13:01, 1 user, load average: 0.04, 0.08, 0.08"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004383", "end": "2025-12-17 23:29:49.358724", "msg": "", "rc": 0, "start": "2025-12-17 23:29:49.354341", "stderr": "", "stderr_lines": [], "stdout": " 23:29:49 up 17 days, 12:45, 0 user, load average: 0.46, 0.42, 0.45", "stdout_lines": [" 23:29:49 up 17 days, 12:45, 0 user, load average: 0.46, 0.42, 0.45"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003232", "end": "2025-12-17 23:29:42.717287", "msg": "", "rc": 0, "start": "2025-12-17 23:29:42.714055", "stderr": "", "stderr_lines": [], "stdout": " 23:29:42 up 21 days, 2:24, 0 user, load average: 0.26, 0.42, 0.53", "stdout_lines": [" 23:29:42 up 21 days, 2:24, 0 user, load average: 0.26, 0.42, 0.53"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004372", "end": "2025-12-17 23:30:14.035806", "msg": "", "rc": 0, "start": "2025-12-17 23:30:14.031434", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004057", "end": "2025-12-17 23:30:14.048476", "msg": "", "rc": 0, "start": "2025-12-17 23:30:14.044419", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004694", "end": "2025-12-17 23:30:14.077641", "msg": "", "rc": 0, "start": "2025-12-17 23:30:14.072947", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005637", "end": "2025-12-17 23:30:14.076471", "msg": "", "rc": 0, "start": "2025-12-17 23:30:14.070834", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006499", "end": "2025-12-17 23:30:14.088898", "msg": "", "rc": 0, "start": "2025-12-17 23:30:14.082399", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004801", "end": "2025-12-17 23:29:47.669261", "msg": "", "rc": 0, "start": "2025-12-17 23:29:47.664460", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005579", "end": "2025-12-17 23:29:41.085268", "msg": "", "rc": 0, "start": "2025-12-17 23:29:41.079689", "stderr": "", "stderr_lines": [], "stdout": "24%", "stdout_lines": ["24%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011986", "end": "2025-12-17 23:30:14.770919", "msg": "", "rc": 0, "start": "2025-12-17 23:30:14.758933", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011028", "end": "2025-12-17 23:30:14.833656", "msg": "", "rc": 0, "start": "2025-12-17 23:30:14.822628", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005723", "end": "2025-12-17 23:30:15.009155", "msg": "", "rc": 0, "start": "2025-12-17 23:30:15.003432", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005193", "end": "2025-12-17 23:29:44.254983", "msg": "", "rc": 0, "start": "2025-12-17 23:29:44.249790", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004693", "end": "2025-12-17 23:29:51.004209", "msg": "", "rc": 0, "start": "2025-12-17 23:29:50.999516", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005894", "end": "2025-12-17 20:30:15.297016", "msg": "", "rc": 0, "start": "2025-12-17 20:30:15.291122", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006143", "end": "2025-12-17 23:30:15.420909", "msg": "", "rc": 0, "start": "2025-12-17 23:30:15.414766", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.019599", "end": "2025-12-17 23:30:15.857106", "msg": "", "rc": 0, "start": "2025-12-17 23:30:15.837507", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.024922", "end": "2025-12-17 23:30:15.519824", "msg": "", "rc": 0, "start": "2025-12-17 23:30:15.494902", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004296", "end": "2025-12-17 23:30:16.036635", "msg": "", "rc": 0, "start": "2025-12-17 23:30:16.032339", "stderr": "", "stderr_lines": [], "stdout": "78.6%", "stdout_lines": ["78.6%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004395", "end": "2025-12-17 23:30:16.059848", "msg": "", "rc": 0, "start": "2025-12-17 23:30:16.055453", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005138", "end": "2025-12-17 23:30:16.079230", "msg": "", "rc": 0, "start": "2025-12-17 23:30:16.074092", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005760", "end": "2025-12-17 23:30:16.089547", "msg": "", "rc": 0, "start": "2025-12-17 23:30:16.083787", "stderr": "", "stderr_lines": [], "stdout": "60.2%", "stdout_lines": ["60.2%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005131", "end": "2025-12-17 23:30:16.093772", "msg": "", "rc": 0, "start": "2025-12-17 23:30:16.088641", "stderr": "", "stderr_lines": [], "stdout": "48.9%", "stdout_lines": ["48.9%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003627", "end": "2025-12-17 23:29:49.646468", "msg": "", "rc": 0, "start": "2025-12-17 23:29:49.642841", "stderr": "", "stderr_lines": [], "stdout": "71.2%", "stdout_lines": ["71.2%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004445", "end": "2025-12-17 23:29:43.068867", "msg": "", "rc": 0, "start": "2025-12-17 23:29:43.064422", "stderr": "", "stderr_lines": [], "stdout": "69.3%", "stdout_lines": ["69.3%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010907", "end": "2025-12-17 23:30:16.722270", "msg": "", "rc": 0, "start": "2025-12-17 23:30:16.711363", "stderr": "", "stderr_lines": [], "stdout": "6.9%", "stdout_lines": ["6.9%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011763", "end": "2025-12-17 23:30:16.773277", "msg": "", "rc": 0, "start": "2025-12-17 23:30:16.761514", "stderr": "", "stderr_lines": [], "stdout": "13.5%", "stdout_lines": ["13.5%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006309", "end": "2025-12-17 23:30:16.995066", "msg": "", "rc": 0, "start": "2025-12-17 23:30:16.988757", "stderr": "", "stderr_lines": [], "stdout": "35.4%", "stdout_lines": ["35.4%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006425", "end": "2025-12-17 23:29:46.237542", "msg": "", "rc": 0, "start": "2025-12-17 23:29:46.231117", "stderr": "", "stderr_lines": [], "stdout": "27.3%", "stdout_lines": ["27.3%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003951", "end": "2025-12-17 23:29:52.957927", "msg": "", "rc": 0, "start": "2025-12-17 23:29:52.953976", "stderr": "", "stderr_lines": [], "stdout": "54.9%", "stdout_lines": ["54.9%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005047", "end": "2025-12-17 20:30:17.235863", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 20:30:17.230816", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005413", "end": "2025-12-17 23:30:17.405881", "msg": "", "rc": 0, "start": "2025-12-17 23:30:17.400468", "stderr": "", "stderr_lines": [], "stdout": "14.1%", "stdout_lines": ["14.1%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.008776", "end": "2025-12-17 23:30:17.865195", "msg": "", "rc": 0, "start": "2025-12-17 23:30:17.856419", "stderr": "", "stderr_lines": [], "stdout": "12.9%", "stdout_lines": ["12.9%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025764", "end": "2025-12-17 23:30:17.409170", "msg": "", "rc": 0, "start": "2025-12-17 23:30:17.383406", "stderr": "", "stderr_lines": [], "stdout": "19.9%", "stdout_lines": ["19.9%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005681", "end": "2025-12-17 23:30:17.935684", "msg": "", "rc": 0, "start": "2025-12-17 23:30:17.930003", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005081", "end": "2025-12-17 23:30:17.953241", "msg": "", "rc": 0, "start": "2025-12-17 23:30:17.948160", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006219", "end": "2025-12-17 23:30:17.978583", "msg": "", "rc": 0, "start": "2025-12-17 23:30:17.972364", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003267", "end": "2025-12-17 23:30:17.982840", "msg": "", "rc": 0, "start": "2025-12-17 23:30:17.979573", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006704", "end": "2025-12-17 23:30:17.996952", "msg": "", "rc": 0, "start": "2025-12-17 23:30:17.990248", "stderr": "", "stderr_lines": [], "stdout": "51.5°C", "stdout_lines": ["51.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002621", "end": "2025-12-17 23:29:51.592981", "msg": "", "rc": 0, "start": "2025-12-17 23:29:51.590360", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003074", "end": "2025-12-17 23:29:44.976637", "msg": "", "rc": 0, "start": "2025-12-17 23:29:44.973563", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011720", "end": "2025-12-17 23:30:18.629477", "msg": "", "rc": 0, "start": "2025-12-17 23:30:18.617757", "stderr": "", "stderr_lines": [], "stdout": "30.2°C", "stdout_lines": ["30.2°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012964", "end": "2025-12-17 23:30:18.768469", "msg": "", "rc": 0, "start": "2025-12-17 23:30:18.755505", "stderr": "", "stderr_lines": [], "stdout": "35.0°C", "stdout_lines": ["35.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003122", "end": "2025-12-17 23:30:18.925159", "msg": "", "rc": 0, "start": "2025-12-17 23:30:18.922037", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003050", "end": "2025-12-17 23:29:48.136385", "msg": "", "rc": 0, "start": "2025-12-17 23:29:48.133335", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002646", "end": "2025-12-17 23:29:54.862497", "msg": "", "rc": 0, "start": "2025-12-17 23:29:54.859851", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003946", "end": "2025-12-17 20:30:19.215826", "msg": "", "rc": 0, "start": "2025-12-17 20:30:19.211880", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003116", "end": "2025-12-17 23:30:19.338020", "msg": "", "rc": 0, "start": "2025-12-17 23:30:19.334904", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004292", "end": "2025-12-17 23:30:19.800733", "msg": "", "rc": 0, "start": "2025-12-17 23:30:19.796441", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028501", "end": "2025-12-17 23:30:19.329941", "msg": "", "rc": 0, "start": "2025-12-17 23:30:19.301440", "stderr": "", "stderr_lines": [], "stdout": "34.1°C", "stdout_lines": ["34.1°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004086", "end": "2025-12-17 23:30:19.846278", "msg": "", "rc": 0, "start": "2025-12-17 23:30:19.842192", "stderr": "", "stderr_lines": [], "stdout": "0.14", "stdout_lines": ["0.14"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004042", "end": "2025-12-17 23:30:19.854456", "msg": "", "rc": 0, "start": "2025-12-17 23:30:19.850414", "stderr": "", "stderr_lines": [], "stdout": "0.16", "stdout_lines": ["0.16"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005132", "end": "2025-12-17 23:30:19.882089", "msg": "", "rc": 0, "start": "2025-12-17 23:30:19.876957", "stderr": "", "stderr_lines": [], "stdout": "0.04", "stdout_lines": ["0.04"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004744", "end": "2025-12-17 23:30:19.897024", "msg": "", "rc": 0, "start": "2025-12-17 23:30:19.892280", "stderr": "", "stderr_lines": [], "stdout": "1.28", "stdout_lines": ["1.28"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005468", "end": "2025-12-17 23:30:19.896737", "msg": "", "rc": 0, "start": "2025-12-17 23:30:19.891269", "stderr": "", "stderr_lines": [], "stdout": "0.48", "stdout_lines": ["0.48"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004471", "end": "2025-12-17 23:29:53.469976", "msg": "", "rc": 0, "start": "2025-12-17 23:29:53.465505", "stderr": "", "stderr_lines": [], "stdout": "0.16", "stdout_lines": ["0.16"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006815", "end": "2025-12-17 23:29:46.890004", "msg": "", "rc": 0, "start": "2025-12-17 23:29:46.883189", "stderr": "", "stderr_lines": [], "stdout": "0.05", "stdout_lines": ["0.05"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011177", "end": "2025-12-17 23:30:20.545440", "msg": "", "rc": 0, "start": "2025-12-17 23:30:20.534263", "stderr": "", "stderr_lines": [], "stdout": "0.26", "stdout_lines": ["0.26"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.009996", "end": "2025-12-17 23:30:20.616427", "msg": "", "rc": 0, "start": "2025-12-17 23:30:20.606431", "stderr": "", "stderr_lines": [], "stdout": "0.12", "stdout_lines": ["0.12"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005652", "end": "2025-12-17 23:30:20.818148", "msg": "", "rc": 0, "start": "2025-12-17 23:30:20.812496", "stderr": "", "stderr_lines": [], "stdout": "0.09", "stdout_lines": ["0.09"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004949", "end": "2025-12-17 23:29:50.067325", "msg": "", "rc": 0, "start": "2025-12-17 23:29:50.062376", "stderr": "", "stderr_lines": [], "stdout": "0.24", "stdout_lines": ["0.24"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004447", "end": "2025-12-17 23:29:56.781550", "msg": "", "rc": 0, "start": "2025-12-17 23:29:56.777103", "stderr": "", "stderr_lines": [], "stdout": "0.50", "stdout_lines": ["0.50"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005949", "end": "2025-12-17 20:30:21.071572", "msg": "", "rc": 0, "start": "2025-12-17 20:30:21.065623", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005323", "end": "2025-12-17 23:30:21.232588", "msg": "", "rc": 0, "start": "2025-12-17 23:30:21.227265", "stderr": "", "stderr_lines": [], "stdout": "0.04", "stdout_lines": ["0.04"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006647", "end": "2025-12-17 23:30:21.745677", "msg": "", "rc": 0, "start": "2025-12-17 23:30:21.739030", "stderr": "", "stderr_lines": [], "stdout": "1.39", "stdout_lines": ["1.39"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024337", "end": "2025-12-17 23:30:21.220356", "msg": "", "rc": 0, "start": "2025-12-17 23:30:21.196019", "stderr": "", "stderr_lines": [], "stdout": "0.21", "stdout_lines": ["0.21"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:30:11 up 3 days, 13:02, 1 user, load average: 0.17, 0.15, 0.17\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.16\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:30:11 up 22 days, 10:21, 1 user, load average: 0.08, 0.13, 0.20\nDisk Usage: 23%\nMemory Usage: 78.6%\nCPU Load: 0.14\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:30:11 up 22 days, 10:41, 1 user, load average: 0.98, 0.86, 0.95\nDisk Usage: 14%\nMemory Usage: 48.9%\nCPU Load: 1.28\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:30:11 up 22 days, 11:54, 1 user, load average: 0.53, 0.69, 0.67\nDisk Usage: 14%\nMemory Usage: 60.2%\nCPU Load: 0.48\nCPU Temp: 51.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:30:11 up 22 days, 12:40, 1 user, load average: 0.04, 0.05, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.04\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:30:12 up 15 days, 12:56, 1 user, load average: 0.14, 0.11, 0.11\nDisk Usage: 21%\nMemory Usage: 19.9%\nCPU Load: 0.21\nCPU Temp: 34.1°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:30:12 up 194 days, 15:03, 1 user, load average: 0.29, 0.41, 0.35\nDisk Usage: 6%\nMemory Usage: 13.5%\nCPU Load: 0.26\nCPU Temp: 35.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:30:13 up 194 days, 15:03, 1 user, load average: 0.14, 0.15, 0.16\nDisk Usage: 3%\nMemory Usage: 6.9%\nCPU Load: 0.12\nCPU Temp: 30.2°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:29:46 up 11 days, 11:19, 0 user, load average: 0.09, 0.10, 0.10\nDisk Usage: 48%\nMemory Usage: 71.2%\nCPU Load: 0.16\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:29:39 up 18 days, 7:31, 0 user, load average: 0.06, 0.03, 0.00\nDisk Usage: 24%\nMemory Usage: 69.3%\nCPU Load: 0.05\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:30:13 up 3 days, 13:01, 1 user, load average: 0.02, 0.06, 0.04\nDisk Usage: 1%\nMemory Usage: 35.4%\nCPU Load: 0.09\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:29:42 up 21 days, 2:24, 0 user, load average: 0.26, 0.42, 0.53\nDisk Usage: 28%\nMemory Usage: 27.3%\nCPU Load: 0.24\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:29:49 up 17 days, 12:45, 0 user, load average: 0.46, 0.42, 0.45\nDisk Usage: 76%\nMemory Usage: 54.9%\nCPU Load: 0.50\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 8:30PM up 22 days, 10:20, 1 user, load averages: 0.04, 0.12, 0.14\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:30:13 up 3 days, 13:01, 1 user, load average: 0.04, 0.08, 0.08\nDisk Usage: 79%\nMemory Usage: 14.1%\nCPU Load: 0.04\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:30:13 up 3:39, 1 user, load average: 1.46, 1.19, 1.12\nDisk Usage: 1%\nMemory Usage: 12.9%\nCPU Load: 1.39\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T04:30:22.619781+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_043521_d13c4d_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_043521_d13c4d_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..8ef5d27 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_043521_d13c4d_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `f6302aac2c4d4389b4afb8b95c82f5bd` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T04:35:00.002506+00:00 | +| **Fin** | 2025-12-18T04:35:21.751704+00:00 | +| **Durée** | 21.7s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [dev.prod.home] +ok: [hp.truenas.home] +ok: [raspi.4gb.home] +ok: [localhost] +ok: [jump.point.home] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003435", "end": "2025-12-17 23:35:11.589165", "msg": "", "rc": 0, "start": "2025-12-17 23:35:11.585730", "stderr": "", "stderr_lines": [], "stdout": " 23:35:11 up 22 days, 10:26, 1 user, load average: 0.09, 0.09, 0.16", "stdout_lines": [" 23:35:11 up 22 days, 10:26, 1 user, load average: 0.09, 0.09, 0.16"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003771", "end": "2025-12-17 23:35:11.600985", "msg": "", "rc": 0, "start": "2025-12-17 23:35:11.597214", "stderr": "", "stderr_lines": [], "stdout": " 23:35:11 up 22 days, 12:45, 1 user, load average: 0.06, 0.05, 0.01", "stdout_lines": [" 23:35:11 up 22 days, 12:45, 1 user, load average: 0.06, 0.05, 0.01"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002825", "end": "2025-12-17 23:35:11.630756", "msg": "", "rc": 0, "start": "2025-12-17 23:35:11.627931", "stderr": "", "stderr_lines": [], "stdout": " 23:35:11 up 3 days, 13:07, 1 user, load average: 0.95, 0.41, 0.26", "stdout_lines": [" 23:35:11 up 3 days, 13:07, 1 user, load average: 0.95, 0.41, 0.26"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004171", "end": "2025-12-17 23:35:11.637258", "msg": "", "rc": 0, "start": "2025-12-17 23:35:11.633087", "stderr": "", "stderr_lines": [], "stdout": " 23:35:11 up 22 days, 11:59, 1 user, load average: 0.86, 0.73, 0.68", "stdout_lines": [" 23:35:11 up 22 days, 11:59, 1 user, load average: 0.86, 0.73, 0.68"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002681", "end": "2025-12-17 23:34:45.183530", "msg": "", "rc": 0, "start": "2025-12-17 23:34:45.180849", "stderr": "", "stderr_lines": [], "stdout": " 23:34:45 up 11 days, 11:24, 0 user, load average: 0.21, 0.13, 0.10", "stdout_lines": [" 23:34:45 up 11 days, 11:24, 0 user, load average: 0.21, 0.13, 0.10"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008350", "end": "2025-12-17 23:35:12.270027", "msg": "", "rc": 0, "start": "2025-12-17 23:35:12.261677", "stderr": "", "stderr_lines": [], "stdout": " 23:35:12 up 194 days, 15:08, 1 user, load average: 0.24, 0.14, 0.15", "stdout_lines": [" 23:35:12 up 194 days, 15:08, 1 user, load average: 0.24, 0.14, 0.15"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009219", "end": "2025-12-17 23:35:12.312761", "msg": "", "rc": 0, "start": "2025-12-17 23:35:12.303542", "stderr": "", "stderr_lines": [], "stdout": " 23:35:12 up 194 days, 15:08, 1 user, load average: 0.30, 0.31, 0.32", "stdout_lines": [" 23:35:12 up 194 days, 15:08, 1 user, load average: 0.30, 0.31, 0.32"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004308", "end": "2025-12-17 23:35:12.597255", "msg": "", "rc": 0, "start": "2025-12-17 23:35:11.592947", "stderr": "", "stderr_lines": [], "stdout": " 23:35:11 up 22 days, 10:46, 1 user, load average: 0.60, 0.86, 0.94", "stdout_lines": [" 23:35:11 up 22 days, 10:46, 1 user, load average: 0.60, 0.86, 0.94"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003573", "end": "2025-12-17 23:34:39.027837", "msg": "", "rc": 0, "start": "2025-12-17 23:34:39.024264", "stderr": "", "stderr_lines": [], "stdout": " 23:34:39 up 18 days, 7:36, 0 user, load average: 0.03, 0.04, 0.00", "stdout_lines": [" 23:34:39 up 18 days, 7:36, 0 user, load average: 0.03, 0.04, 0.00"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004821", "end": "2025-12-17 23:35:12.775020", "msg": "", "rc": 0, "start": "2025-12-17 23:35:12.770199", "stderr": "", "stderr_lines": [], "stdout": " 23:35:12 up 3 days, 13:06, 1 user, load average: 0.47, 0.25, 0.11", "stdout_lines": [" 23:35:12 up 3 days, 13:06, 1 user, load average: 0.47, 0.25, 0.11"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003193", "end": "2025-12-17 23:34:41.951749", "msg": "", "rc": 0, "start": "2025-12-17 23:34:41.948556", "stderr": "", "stderr_lines": [], "stdout": " 23:34:41 up 21 days, 2:28, 0 user, load average: 0.56, 0.56, 0.57", "stdout_lines": [" 23:34:41 up 21 days, 2:28, 0 user, load average: 0.56, 0.56, 0.57"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004069", "end": "2025-12-17 20:35:13.018403", "msg": "", "rc": 0, "start": "2025-12-17 20:35:13.014334", "stderr": "", "stderr_lines": [], "stdout": " 8:35PM up 22 days, 10:25, 1 user, load averages: 0.24, 0.22, 0.17", "stdout_lines": [" 8:35PM up 22 days, 10:25, 1 user, load averages: 0.24, 0.22, 0.17"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002795", "end": "2025-12-17 23:34:48.764581", "msg": "", "rc": 0, "start": "2025-12-17 23:34:48.761786", "stderr": "", "stderr_lines": [], "stdout": " 23:34:48 up 17 days, 12:50, 0 user, load average: 0.18, 0.31, 0.39", "stdout_lines": [" 23:34:48 up 17 days, 12:50, 0 user, load average: 0.18, 0.31, 0.39"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019288", "end": "2025-12-17 23:35:12.958080", "msg": "", "rc": 0, "start": "2025-12-17 23:35:12.938792", "stderr": "", "stderr_lines": [], "stdout": " 23:35:12 up 15 days, 13:01, 1 user, load average: 0.14, 0.11, 0.10", "stdout_lines": [" 23:35:12 up 15 days, 13:01, 1 user, load average: 0.14, 0.11, 0.10"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.006967", "end": "2025-12-17 23:35:13.250169", "msg": "", "rc": 0, "start": "2025-12-17 23:35:13.243202", "stderr": "", "stderr_lines": [], "stdout": " 23:35:13 up 3:44, 1 user, load average: 1.08, 1.09, 1.09", "stdout_lines": [" 23:35:13 up 3:44, 1 user, load average: 1.08, 1.09, 1.09"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003712", "end": "2025-12-17 23:35:13.193250", "msg": "", "rc": 0, "start": "2025-12-17 23:35:13.189538", "stderr": "", "stderr_lines": [], "stdout": " 23:35:13 up 3 days, 13:06, 1 user, load average: 0.01, 0.06, 0.08", "stdout_lines": [" 23:35:13 up 3 days, 13:06, 1 user, load average: 0.01, 0.06, 0.08"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004290", "end": "2025-12-17 23:35:13.600481", "msg": "", "rc": 0, "start": "2025-12-17 23:35:13.596191", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004146", "end": "2025-12-17 23:35:13.608579", "msg": "", "rc": 0, "start": "2025-12-17 23:35:13.604433", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004939", "end": "2025-12-17 23:35:13.638331", "msg": "", "rc": 0, "start": "2025-12-17 23:35:13.633392", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004629", "end": "2025-12-17 23:35:13.645706", "msg": "", "rc": 0, "start": "2025-12-17 23:35:13.641077", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005415", "end": "2025-12-17 23:35:13.664058", "msg": "", "rc": 0, "start": "2025-12-17 23:35:13.658643", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005375", "end": "2025-12-17 23:34:47.222259", "msg": "", "rc": 0, "start": "2025-12-17 23:34:47.216884", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005409", "end": "2025-12-17 23:34:40.640855", "msg": "", "rc": 0, "start": "2025-12-17 23:34:40.635446", "stderr": "", "stderr_lines": [], "stdout": "24%", "stdout_lines": ["24%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011514", "end": "2025-12-17 23:35:14.318217", "msg": "", "rc": 0, "start": "2025-12-17 23:35:14.306703", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011629", "end": "2025-12-17 23:35:14.352605", "msg": "", "rc": 0, "start": "2025-12-17 23:35:14.340976", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005774", "end": "2025-12-17 23:35:14.569215", "msg": "", "rc": 0, "start": "2025-12-17 23:35:14.563441", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005451", "end": "2025-12-17 23:34:43.809802", "msg": "", "rc": 0, "start": "2025-12-17 23:34:43.804351", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005184", "end": "2025-12-17 20:35:14.812561", "msg": "", "rc": 0, "start": "2025-12-17 20:35:14.807377", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004589", "end": "2025-12-17 23:34:50.559362", "msg": "", "rc": 0, "start": "2025-12-17 23:34:50.554773", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005439", "end": "2025-12-17 23:35:14.981326", "msg": "", "rc": 0, "start": "2025-12-17 23:35:14.975887", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.019989", "end": "2025-12-17 23:35:15.149326", "msg": "", "rc": 0, "start": "2025-12-17 23:35:15.129337", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.024820", "end": "2025-12-17 23:35:14.973074", "msg": "", "rc": 0, "start": "2025-12-17 23:35:14.948254", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004215", "end": "2025-12-17 23:35:15.487351", "msg": "", "rc": 0, "start": "2025-12-17 23:35:15.483136", "stderr": "", "stderr_lines": [], "stdout": "78.6%", "stdout_lines": ["78.6%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004205", "end": "2025-12-17 23:35:15.502800", "msg": "", "rc": 0, "start": "2025-12-17 23:35:15.498595", "stderr": "", "stderr_lines": [], "stdout": "22.7%", "stdout_lines": ["22.7%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005101", "end": "2025-12-17 23:35:15.505442", "msg": "", "rc": 0, "start": "2025-12-17 23:35:15.500341", "stderr": "", "stderr_lines": [], "stdout": "49.0%", "stdout_lines": ["49.0%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005644", "end": "2025-12-17 23:35:15.549377", "msg": "", "rc": 0, "start": "2025-12-17 23:35:15.543733", "stderr": "", "stderr_lines": [], "stdout": "9.1%", "stdout_lines": ["9.1%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005646", "end": "2025-12-17 23:35:15.557202", "msg": "", "rc": 0, "start": "2025-12-17 23:35:15.551556", "stderr": "", "stderr_lines": [], "stdout": "60.1%", "stdout_lines": ["60.1%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003701", "end": "2025-12-17 23:34:49.124088", "msg": "", "rc": 0, "start": "2025-12-17 23:34:49.120387", "stderr": "", "stderr_lines": [], "stdout": "71.6%", "stdout_lines": ["71.6%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004807", "end": "2025-12-17 23:34:42.525888", "msg": "", "rc": 0, "start": "2025-12-17 23:34:42.521081", "stderr": "", "stderr_lines": [], "stdout": "69.4%", "stdout_lines": ["69.4%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011133", "end": "2025-12-17 23:35:16.171803", "msg": "", "rc": 0, "start": "2025-12-17 23:35:16.160670", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012088", "end": "2025-12-17 23:35:16.206245", "msg": "", "rc": 0, "start": "2025-12-17 23:35:16.194157", "stderr": "", "stderr_lines": [], "stdout": "13.6%", "stdout_lines": ["13.6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005881", "end": "2025-12-17 23:35:16.478598", "msg": "", "rc": 0, "start": "2025-12-17 23:35:16.472717", "stderr": "", "stderr_lines": [], "stdout": "35.6%", "stdout_lines": ["35.6%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004015", "end": "2025-12-17 23:34:45.695385", "msg": "", "rc": 0, "start": "2025-12-17 23:34:45.691370", "stderr": "", "stderr_lines": [], "stdout": "27.2%", "stdout_lines": ["27.2%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005079", "end": "2025-12-17 20:35:16.663142", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 20:35:16.658063", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004565", "end": "2025-12-17 23:34:52.450211", "msg": "", "rc": 0, "start": "2025-12-17 23:34:52.445646", "stderr": "", "stderr_lines": [], "stdout": "53.1%", "stdout_lines": ["53.1%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005472", "end": "2025-12-17 23:35:16.890145", "msg": "", "rc": 0, "start": "2025-12-17 23:35:16.884673", "stderr": "", "stderr_lines": [], "stdout": "13.8%", "stdout_lines": ["13.8%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.008298", "end": "2025-12-17 23:35:17.062408", "msg": "", "rc": 0, "start": "2025-12-17 23:35:17.054110", "stderr": "", "stderr_lines": [], "stdout": "12.9%", "stdout_lines": ["12.9%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.026196", "end": "2025-12-17 23:35:16.873140", "msg": "", "rc": 0, "start": "2025-12-17 23:35:16.846944", "stderr": "", "stderr_lines": [], "stdout": "20.3%", "stdout_lines": ["20.3%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005431", "end": "2025-12-17 23:35:17.378950", "msg": "", "rc": 0, "start": "2025-12-17 23:35:17.373519", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004896", "end": "2025-12-17 23:35:17.416307", "msg": "", "rc": 0, "start": "2025-12-17 23:35:17.411411", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006241", "end": "2025-12-17 23:35:17.423520", "msg": "", "rc": 0, "start": "2025-12-17 23:35:17.417279", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003302", "end": "2025-12-17 23:35:17.434702", "msg": "", "rc": 0, "start": "2025-12-17 23:35:17.431400", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006908", "end": "2025-12-17 23:35:17.444299", "msg": "", "rc": 0, "start": "2025-12-17 23:35:17.437391", "stderr": "", "stderr_lines": [], "stdout": "51.5°C", "stdout_lines": ["51.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002514", "end": "2025-12-17 23:34:50.990594", "msg": "", "rc": 0, "start": "2025-12-17 23:34:50.988080", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003337", "end": "2025-12-17 23:34:44.412555", "msg": "", "rc": 0, "start": "2025-12-17 23:34:44.409218", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011913", "end": "2025-12-17 23:35:18.083561", "msg": "", "rc": 0, "start": "2025-12-17 23:35:18.071648", "stderr": "", "stderr_lines": [], "stdout": "29.2°C", "stdout_lines": ["29.2°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013018", "end": "2025-12-17 23:35:18.115803", "msg": "", "rc": 0, "start": "2025-12-17 23:35:18.102785", "stderr": "", "stderr_lines": [], "stdout": "34.1°C", "stdout_lines": ["34.1°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003495", "end": "2025-12-17 23:35:18.330671", "msg": "", "rc": 0, "start": "2025-12-17 23:35:18.327176", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002797", "end": "2025-12-17 23:34:47.580647", "msg": "", "rc": 0, "start": "2025-12-17 23:34:47.577850", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003829", "end": "2025-12-17 20:35:18.586396", "msg": "", "rc": 0, "start": "2025-12-17 20:35:18.582567", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003047", "end": "2025-12-17 23:34:54.319007", "msg": "", "rc": 0, "start": "2025-12-17 23:34:54.315960", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002957", "end": "2025-12-17 23:35:18.744018", "msg": "", "rc": 0, "start": "2025-12-17 23:35:18.741061", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003790", "end": "2025-12-17 23:35:18.969817", "msg": "", "rc": 0, "start": "2025-12-17 23:35:18.966027", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028906", "end": "2025-12-17 23:35:18.756613", "msg": "", "rc": 0, "start": "2025-12-17 23:35:18.727707", "stderr": "", "stderr_lines": [], "stdout": "33.9°C", "stdout_lines": ["33.9°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004088", "end": "2025-12-17 23:35:19.266002", "msg": "", "rc": 0, "start": "2025-12-17 23:35:19.261914", "stderr": "", "stderr_lines": [], "stdout": "0.15", "stdout_lines": ["0.15"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004336", "end": "2025-12-17 23:35:19.292344", "msg": "", "rc": 0, "start": "2025-12-17 23:35:19.288008", "stderr": "", "stderr_lines": [], "stdout": "1.03", "stdout_lines": ["1.03"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004638", "end": "2025-12-17 23:35:19.302244", "msg": "", "rc": 0, "start": "2025-12-17 23:35:19.297606", "stderr": "", "stderr_lines": [], "stdout": "0.74", "stdout_lines": ["0.74"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005093", "end": "2025-12-17 23:35:19.315886", "msg": "", "rc": 0, "start": "2025-12-17 23:35:19.310793", "stderr": "", "stderr_lines": [], "stdout": "0.14", "stdout_lines": ["0.14"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005576", "end": "2025-12-17 23:35:19.324951", "msg": "", "rc": 0, "start": "2025-12-17 23:35:19.319375", "stderr": "", "stderr_lines": [], "stdout": "0.87", "stdout_lines": ["0.87"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004511", "end": "2025-12-17 23:34:52.903087", "msg": "", "rc": 0, "start": "2025-12-17 23:34:52.898576", "stderr": "", "stderr_lines": [], "stdout": "0.26", "stdout_lines": ["0.26"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004958", "end": "2025-12-17 23:34:46.284177", "msg": "", "rc": 0, "start": "2025-12-17 23:34:46.279219", "stderr": "", "stderr_lines": [], "stdout": "0.11", "stdout_lines": ["0.11"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011336", "end": "2025-12-17 23:35:19.990687", "msg": "", "rc": 0, "start": "2025-12-17 23:35:19.979351", "stderr": "", "stderr_lines": [], "stdout": "0.27", "stdout_lines": ["0.27"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010032", "end": "2025-12-17 23:35:20.041184", "msg": "", "rc": 0, "start": "2025-12-17 23:35:20.031152", "stderr": "", "stderr_lines": [], "stdout": "0.22", "stdout_lines": ["0.22"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005624", "end": "2025-12-17 23:35:20.238103", "msg": "", "rc": 0, "start": "2025-12-17 23:35:20.232479", "stderr": "", "stderr_lines": [], "stdout": "0.48", "stdout_lines": ["0.48"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004881", "end": "2025-12-17 23:34:49.448932", "msg": "", "rc": 0, "start": "2025-12-17 23:34:49.444051", "stderr": "", "stderr_lines": [], "stdout": "0.52", "stdout_lines": ["0.52"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005830", "end": "2025-12-17 20:35:20.492653", "msg": "", "rc": 0, "start": "2025-12-17 20:35:20.486823", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004334", "end": "2025-12-17 23:34:56.241905", "msg": "", "rc": 0, "start": "2025-12-17 23:34:56.237571", "stderr": "", "stderr_lines": [], "stdout": "0.16", "stdout_lines": ["0.16"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005297", "end": "2025-12-17 23:35:20.648813", "msg": "", "rc": 0, "start": "2025-12-17 23:35:20.643516", "stderr": "", "stderr_lines": [], "stdout": "0.01", "stdout_lines": ["0.01"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.007794", "end": "2025-12-17 23:35:20.877275", "msg": "", "rc": 0, "start": "2025-12-17 23:35:20.869481", "stderr": "", "stderr_lines": [], "stdout": "1.07", "stdout_lines": ["1.07"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.023915", "end": "2025-12-17 23:35:20.640114", "msg": "", "rc": 0, "start": "2025-12-17 23:35:20.616199", "stderr": "", "stderr_lines": [], "stdout": "0.21", "stdout_lines": ["0.21"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:35:11 up 3 days, 13:07, 1 user, load average: 0.95, 0.41, 0.26\nDisk Usage: 22%\nMemory Usage: 22.7%\nCPU Load: 1.03\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:35:11 up 22 days, 10:26, 1 user, load average: 0.09, 0.09, 0.16\nDisk Usage: 23%\nMemory Usage: 78.6%\nCPU Load: 0.15\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:35:11 up 22 days, 10:46, 1 user, load average: 0.60, 0.86, 0.94\nDisk Usage: 14%\nMemory Usage: 49.0%\nCPU Load: 0.74\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:35:11 up 22 days, 11:59, 1 user, load average: 0.86, 0.73, 0.68\nDisk Usage: 14%\nMemory Usage: 60.1%\nCPU Load: 0.87\nCPU Temp: 51.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:35:11 up 22 days, 12:45, 1 user, load average: 0.06, 0.05, 0.01\nDisk Usage: 9%\nMemory Usage: 9.1%\nCPU Load: 0.14\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:35:12 up 15 days, 13:01, 1 user, load average: 0.14, 0.11, 0.10\nDisk Usage: 21%\nMemory Usage: 20.3%\nCPU Load: 0.21\nCPU Temp: 33.9°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:35:12 up 194 days, 15:08, 1 user, load average: 0.30, 0.31, 0.32\nDisk Usage: 6%\nMemory Usage: 13.6%\nCPU Load: 0.27\nCPU Temp: 34.1°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:35:12 up 194 days, 15:08, 1 user, load average: 0.24, 0.14, 0.15\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.22\nCPU Temp: 29.2°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:34:45 up 11 days, 11:24, 0 user, load average: 0.21, 0.13, 0.10\nDisk Usage: 48%\nMemory Usage: 71.6%\nCPU Load: 0.26\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:34:39 up 18 days, 7:36, 0 user, load average: 0.03, 0.04, 0.00\nDisk Usage: 24%\nMemory Usage: 69.4%\nCPU Load: 0.11\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:35:12 up 3 days, 13:06, 1 user, load average: 0.47, 0.25, 0.11\nDisk Usage: 1%\nMemory Usage: 35.6%\nCPU Load: 0.48\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:34:41 up 21 days, 2:28, 0 user, load average: 0.56, 0.56, 0.57\nDisk Usage: 28%\nMemory Usage: 27.2%\nCPU Load: 0.52\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:34:48 up 17 days, 12:50, 0 user, load average: 0.18, 0.31, 0.39\nDisk Usage: 76%\nMemory Usage: 53.1%\nCPU Load: 0.16\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 8:35PM up 22 days, 10:25, 1 user, load averages: 0.24, 0.22, 0.17\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:35:13 up 3 days, 13:06, 1 user, load average: 0.01, 0.06, 0.08\nDisk Usage: 79%\nMemory Usage: 13.8%\nCPU Load: 0.01\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:35:13 up 3:44, 1 user, load average: 1.08, 1.09, 1.09\nDisk Usage: 1%\nMemory Usage: 12.9%\nCPU Load: 1.07\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T04:35:21.805929+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_044022_9d7724_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_044022_9d7724_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..de3a4fa --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_044022_9d7724_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `277c5321d874423395cc75a641c6984d` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T04:40:00.001802+00:00 | +| **Fin** | 2025-12-18T04:40:22.411238+00:00 | +| **Durée** | 22.4s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003278", "end": "2025-12-17 23:40:11.925030", "msg": "", "rc": 0, "start": "2025-12-17 23:40:11.921752", "stderr": "", "stderr_lines": [], "stdout": " 23:40:11 up 22 days, 10:31, 1 user, load average: 0.23, 0.13, 0.16", "stdout_lines": [" 23:40:11 up 22 days, 10:31, 1 user, load average: 0.23, 0.13, 0.16"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003754", "end": "2025-12-17 23:40:11.936247", "msg": "", "rc": 0, "start": "2025-12-17 23:40:11.932493", "stderr": "", "stderr_lines": [], "stdout": " 23:40:11 up 22 days, 12:50, 1 user, load average: 0.03, 0.09, 0.03", "stdout_lines": [" 23:40:11 up 22 days, 12:50, 1 user, load average: 0.03, 0.09, 0.03"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003033", "end": "2025-12-17 23:40:11.970356", "msg": "", "rc": 0, "start": "2025-12-17 23:40:11.967323", "stderr": "", "stderr_lines": [], "stdout": " 23:40:11 up 3 days, 13:12, 1 user, load average: 0.24, 0.26, 0.24", "stdout_lines": [" 23:40:11 up 3 days, 13:12, 1 user, load average: 0.24, 0.26, 0.24"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004055", "end": "2025-12-17 23:40:11.970419", "msg": "", "rc": 0, "start": "2025-12-17 23:40:11.966364", "stderr": "", "stderr_lines": [], "stdout": " 23:40:11 up 22 days, 12:04, 1 user, load average: 0.63, 0.75, 0.71", "stdout_lines": [" 23:40:11 up 22 days, 12:04, 1 user, load average: 0.63, 0.75, 0.71"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002810", "end": "2025-12-17 23:39:45.543922", "msg": "", "rc": 0, "start": "2025-12-17 23:39:45.541112", "stderr": "", "stderr_lines": [], "stdout": " 23:39:45 up 11 days, 11:29, 0 user, load average: 0.11, 0.14, 0.10", "stdout_lines": [" 23:39:45 up 11 days, 11:29, 0 user, load average: 0.11, 0.14, 0.10"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008506", "end": "2025-12-17 23:40:12.602083", "msg": "", "rc": 0, "start": "2025-12-17 23:40:12.593577", "stderr": "", "stderr_lines": [], "stdout": " 23:40:12 up 194 days, 15:13, 1 user, load average: 0.30, 0.17, 0.16", "stdout_lines": [" 23:40:12 up 194 days, 15:13, 1 user, load average: 0.30, 0.17, 0.16"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009260", "end": "2025-12-17 23:40:12.648071", "msg": "", "rc": 0, "start": "2025-12-17 23:40:12.638811", "stderr": "", "stderr_lines": [], "stdout": " 23:40:12 up 194 days, 15:13, 1 user, load average: 0.25, 0.26, 0.29", "stdout_lines": [" 23:40:12 up 194 days, 15:13, 1 user, load average: 0.25, 0.26, 0.29"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004123", "end": "2025-12-17 23:40:12.951021", "msg": "", "rc": 0, "start": "2025-12-17 23:40:11.946898", "stderr": "", "stderr_lines": [], "stdout": " 23:40:11 up 22 days, 10:51, 1 user, load average: 0.53, 0.67, 0.84", "stdout_lines": [" 23:40:11 up 22 days, 10:51, 1 user, load average: 0.53, 0.67, 0.84"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003763", "end": "2025-12-17 23:39:39.395795", "msg": "", "rc": 0, "start": "2025-12-17 23:39:39.392032", "stderr": "", "stderr_lines": [], "stdout": " 23:39:39 up 18 days, 7:41, 0 user, load average: 0.07, 0.03, 0.00", "stdout_lines": [" 23:39:39 up 18 days, 7:41, 0 user, load average: 0.07, 0.03, 0.00"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004716", "end": "2025-12-17 23:40:13.102253", "msg": "", "rc": 0, "start": "2025-12-17 23:40:13.097537", "stderr": "", "stderr_lines": [], "stdout": " 23:40:13 up 3 days, 13:11, 1 user, load average: 0.00, 0.09, 0.07", "stdout_lines": [" 23:40:13 up 3 days, 13:11, 1 user, load average: 0.00, 0.09, 0.07"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003349", "end": "2025-12-17 23:39:42.318838", "msg": "", "rc": 0, "start": "2025-12-17 23:39:42.315489", "stderr": "", "stderr_lines": [], "stdout": " 23:39:42 up 21 days, 2:34, 0 user, load average: 0.35, 0.40, 0.50", "stdout_lines": [" 23:39:42 up 21 days, 2:34, 0 user, load average: 0.35, 0.40, 0.50"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004163", "end": "2025-12-17 20:40:13.387734", "msg": "", "rc": 0, "start": "2025-12-17 20:40:13.383571", "stderr": "", "stderr_lines": [], "stdout": " 8:40PM up 22 days, 10:30, 1 user, load averages: 0.28, 0.22, 0.17", "stdout_lines": [" 8:40PM up 22 days, 10:30, 1 user, load averages: 0.28, 0.22, 0.17"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002900", "end": "2025-12-17 23:39:49.122994", "msg": "", "rc": 0, "start": "2025-12-17 23:39:49.120094", "stderr": "", "stderr_lines": [], "stdout": " 23:39:49 up 17 days, 12:55, 0 user, load average: 0.19, 0.24, 0.34", "stdout_lines": [" 23:39:49 up 17 days, 12:55, 0 user, load average: 0.19, 0.24, 0.34"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019376", "end": "2025-12-17 23:40:13.300490", "msg": "", "rc": 0, "start": "2025-12-17 23:40:13.281114", "stderr": "", "stderr_lines": [], "stdout": " 23:40:13 up 15 days, 13:06, 1 user, load average: 0.14, 0.11, 0.09", "stdout_lines": [" 23:40:13 up 15 days, 13:06, 1 user, load average: 0.14, 0.11, 0.09"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003678", "end": "2025-12-17 23:40:13.525900", "msg": "", "rc": 0, "start": "2025-12-17 23:40:13.522222", "stderr": "", "stderr_lines": [], "stdout": " 23:40:13 up 3 days, 13:11, 1 user, load average: 0.06, 0.05, 0.06", "stdout_lines": [" 23:40:13 up 3 days, 13:11, 1 user, load average: 0.06, 0.05, 0.06"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008095", "end": "2025-12-17 23:40:13.888989", "msg": "", "rc": 0, "start": "2025-12-17 23:40:13.880894", "stderr": "", "stderr_lines": [], "stdout": " 23:40:13 up 3:49, 1 user, load average: 1.23, 1.10, 1.09", "stdout_lines": [" 23:40:13 up 3:49, 1 user, load average: 1.23, 1.10, 1.09"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004371", "end": "2025-12-17 23:40:13.970599", "msg": "", "rc": 0, "start": "2025-12-17 23:40:13.966228", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004054", "end": "2025-12-17 23:40:13.983981", "msg": "", "rc": 0, "start": "2025-12-17 23:40:13.979927", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004838", "end": "2025-12-17 23:40:13.986995", "msg": "", "rc": 0, "start": "2025-12-17 23:40:13.982157", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004718", "end": "2025-12-17 23:40:14.011445", "msg": "", "rc": 0, "start": "2025-12-17 23:40:14.006727", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005469", "end": "2025-12-17 23:40:14.030369", "msg": "", "rc": 0, "start": "2025-12-17 23:40:14.024900", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005362", "end": "2025-12-17 23:39:47.549797", "msg": "", "rc": 0, "start": "2025-12-17 23:39:47.544435", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005475", "end": "2025-12-17 23:39:40.986229", "msg": "", "rc": 0, "start": "2025-12-17 23:39:40.980754", "stderr": "", "stderr_lines": [], "stdout": "24%", "stdout_lines": ["24%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010531", "end": "2025-12-17 23:40:14.694195", "msg": "", "rc": 0, "start": "2025-12-17 23:40:14.683664", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011620", "end": "2025-12-17 23:40:14.776463", "msg": "", "rc": 0, "start": "2025-12-17 23:40:14.764843", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005736", "end": "2025-12-17 23:40:14.894513", "msg": "", "rc": 0, "start": "2025-12-17 23:40:14.888777", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005629", "end": "2025-12-17 23:39:44.145275", "msg": "", "rc": 0, "start": "2025-12-17 23:39:44.139646", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005046", "end": "2025-12-17 23:39:50.918663", "msg": "", "rc": 0, "start": "2025-12-17 23:39:50.913617", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005164", "end": "2025-12-17 20:40:15.247010", "msg": "", "rc": 0, "start": "2025-12-17 20:40:15.241846", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005539", "end": "2025-12-17 23:40:15.318470", "msg": "", "rc": 0, "start": "2025-12-17 23:40:15.312931", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.019544", "end": "2025-12-17 23:40:15.734902", "msg": "", "rc": 0, "start": "2025-12-17 23:40:15.715358", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025233", "end": "2025-12-17 23:40:15.351704", "msg": "", "rc": 0, "start": "2025-12-17 23:40:15.326471", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004348", "end": "2025-12-17 23:40:15.866212", "msg": "", "rc": 0, "start": "2025-12-17 23:40:15.861864", "stderr": "", "stderr_lines": [], "stdout": "78.6%", "stdout_lines": ["78.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004653", "end": "2025-12-17 23:40:15.886882", "msg": "", "rc": 0, "start": "2025-12-17 23:40:15.882229", "stderr": "", "stderr_lines": [], "stdout": "49.4%", "stdout_lines": ["49.4%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004234", "end": "2025-12-17 23:40:15.887870", "msg": "", "rc": 0, "start": "2025-12-17 23:40:15.883636", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004510", "end": "2025-12-17 23:40:15.917529", "msg": "", "rc": 0, "start": "2025-12-17 23:40:15.913019", "stderr": "", "stderr_lines": [], "stdout": "9.1%", "stdout_lines": ["9.1%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005604", "end": "2025-12-17 23:40:15.930491", "msg": "", "rc": 0, "start": "2025-12-17 23:40:15.924887", "stderr": "", "stderr_lines": [], "stdout": "60.2%", "stdout_lines": ["60.2%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003923", "end": "2025-12-17 23:39:49.474732", "msg": "", "rc": 0, "start": "2025-12-17 23:39:49.470809", "stderr": "", "stderr_lines": [], "stdout": "71.2%", "stdout_lines": ["71.2%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004376", "end": "2025-12-17 23:39:42.893656", "msg": "", "rc": 0, "start": "2025-12-17 23:39:42.889280", "stderr": "", "stderr_lines": [], "stdout": "69.3%", "stdout_lines": ["69.3%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010937", "end": "2025-12-17 23:40:16.555072", "msg": "", "rc": 0, "start": "2025-12-17 23:40:16.544135", "stderr": "", "stderr_lines": [], "stdout": "6.9%", "stdout_lines": ["6.9%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012288", "end": "2025-12-17 23:40:16.608800", "msg": "", "rc": 0, "start": "2025-12-17 23:40:16.596512", "stderr": "", "stderr_lines": [], "stdout": "13.2%", "stdout_lines": ["13.2%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005863", "end": "2025-12-17 23:40:16.823510", "msg": "", "rc": 0, "start": "2025-12-17 23:40:16.817647", "stderr": "", "stderr_lines": [], "stdout": "35.6%", "stdout_lines": ["35.6%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004174", "end": "2025-12-17 23:39:46.057446", "msg": "", "rc": 0, "start": "2025-12-17 23:39:46.053272", "stderr": "", "stderr_lines": [], "stdout": "27.2%", "stdout_lines": ["27.2%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003894", "end": "2025-12-17 23:39:52.770034", "msg": "", "rc": 0, "start": "2025-12-17 23:39:52.766140", "stderr": "", "stderr_lines": [], "stdout": "56.1%", "stdout_lines": ["56.1%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005123", "end": "2025-12-17 20:40:17.056475", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 20:40:17.051352", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005346", "end": "2025-12-17 23:40:17.227994", "msg": "", "rc": 0, "start": "2025-12-17 23:40:17.222648", "stderr": "", "stderr_lines": [], "stdout": "14.1%", "stdout_lines": ["14.1%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.009518", "end": "2025-12-17 23:40:17.668371", "msg": "", "rc": 0, "start": "2025-12-17 23:40:17.658853", "stderr": "", "stderr_lines": [], "stdout": "12.7%", "stdout_lines": ["12.7%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025716", "end": "2025-12-17 23:40:17.241131", "msg": "", "rc": 0, "start": "2025-12-17 23:40:17.215415", "stderr": "", "stderr_lines": [], "stdout": "19.9%", "stdout_lines": ["19.9%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005519", "end": "2025-12-17 23:40:17.749353", "msg": "", "rc": 0, "start": "2025-12-17 23:40:17.743834", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004848", "end": "2025-12-17 23:40:17.775940", "msg": "", "rc": 0, "start": "2025-12-17 23:40:17.771092", "stderr": "", "stderr_lines": [], "stdout": "45.0°C", "stdout_lines": ["45.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005970", "end": "2025-12-17 23:40:17.792883", "msg": "", "rc": 0, "start": "2025-12-17 23:40:17.786913", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002875", "end": "2025-12-17 23:40:17.810503", "msg": "", "rc": 0, "start": "2025-12-17 23:40:17.807628", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006091", "end": "2025-12-17 23:40:17.823521", "msg": "", "rc": 0, "start": "2025-12-17 23:40:17.817430", "stderr": "", "stderr_lines": [], "stdout": "51.0°C", "stdout_lines": ["51.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002899", "end": "2025-12-17 23:39:51.388916", "msg": "", "rc": 0, "start": "2025-12-17 23:39:51.386017", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002963", "end": "2025-12-17 23:39:44.778713", "msg": "", "rc": 0, "start": "2025-12-17 23:39:44.775750", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011901", "end": "2025-12-17 23:40:18.449533", "msg": "", "rc": 0, "start": "2025-12-17 23:40:18.437632", "stderr": "", "stderr_lines": [], "stdout": "30.2°C", "stdout_lines": ["30.2°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013075", "end": "2025-12-17 23:40:18.483821", "msg": "", "rc": 0, "start": "2025-12-17 23:40:18.470746", "stderr": "", "stderr_lines": [], "stdout": "35.0°C", "stdout_lines": ["35.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003186", "end": "2025-12-17 23:40:18.747571", "msg": "", "rc": 0, "start": "2025-12-17 23:40:18.744385", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002803", "end": "2025-12-17 23:39:47.940540", "msg": "", "rc": 0, "start": "2025-12-17 23:39:47.937737", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002954", "end": "2025-12-17 23:39:54.647104", "msg": "", "rc": 0, "start": "2025-12-17 23:39:54.644150", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003809", "end": "2025-12-17 20:40:18.931924", "msg": "", "rc": 0, "start": "2025-12-17 20:40:18.928115", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002844", "end": "2025-12-17 23:40:19.151217", "msg": "", "rc": 0, "start": "2025-12-17 23:40:19.148373", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004318", "end": "2025-12-17 23:40:19.596143", "msg": "", "rc": 0, "start": "2025-12-17 23:40:19.591825", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028548", "end": "2025-12-17 23:40:19.139735", "msg": "", "rc": 0, "start": "2025-12-17 23:40:19.111187", "stderr": "", "stderr_lines": [], "stdout": "34.3°C", "stdout_lines": ["34.3°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004165", "end": "2025-12-17 23:40:19.659096", "msg": "", "rc": 0, "start": "2025-12-17 23:40:19.654931", "stderr": "", "stderr_lines": [], "stdout": "0.26", "stdout_lines": ["0.26"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004133", "end": "2025-12-17 23:40:19.678799", "msg": "", "rc": 0, "start": "2025-12-17 23:40:19.674666", "stderr": "", "stderr_lines": [], "stdout": "0.22", "stdout_lines": ["0.22"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004638", "end": "2025-12-17 23:40:19.690476", "msg": "", "rc": 0, "start": "2025-12-17 23:40:19.685838", "stderr": "", "stderr_lines": [], "stdout": "0.53", "stdout_lines": ["0.53"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004714", "end": "2025-12-17 23:40:19.711858", "msg": "", "rc": 0, "start": "2025-12-17 23:40:19.707144", "stderr": "", "stderr_lines": [], "stdout": "0.03", "stdout_lines": ["0.03"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005722", "end": "2025-12-17 23:40:19.734074", "msg": "", "rc": 0, "start": "2025-12-17 23:40:19.728352", "stderr": "", "stderr_lines": [], "stdout": "0.66", "stdout_lines": ["0.66"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004183", "end": "2025-12-17 23:39:53.273898", "msg": "", "rc": 0, "start": "2025-12-17 23:39:53.269715", "stderr": "", "stderr_lines": [], "stdout": "0.73", "stdout_lines": ["0.73"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005338", "end": "2025-12-17 23:39:46.705159", "msg": "", "rc": 0, "start": "2025-12-17 23:39:46.699821", "stderr": "", "stderr_lines": [], "stdout": "0.22", "stdout_lines": ["0.22"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011106", "end": "2025-12-17 23:40:20.425839", "msg": "", "rc": 0, "start": "2025-12-17 23:40:20.414733", "stderr": "", "stderr_lines": [], "stdout": "0.23", "stdout_lines": ["0.23"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010129", "end": "2025-12-17 23:40:20.436124", "msg": "", "rc": 0, "start": "2025-12-17 23:40:20.425995", "stderr": "", "stderr_lines": [], "stdout": "0.27", "stdout_lines": ["0.27"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005893", "end": "2025-12-17 23:40:20.628138", "msg": "", "rc": 0, "start": "2025-12-17 23:40:20.622245", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004875", "end": "2025-12-17 23:39:49.880963", "msg": "", "rc": 0, "start": "2025-12-17 23:39:49.876088", "stderr": "", "stderr_lines": [], "stdout": "0.32", "stdout_lines": ["0.32"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005963", "end": "2025-12-17 20:40:20.917820", "msg": "", "rc": 0, "start": "2025-12-17 20:40:20.911857", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004858", "end": "2025-12-17 23:39:56.708577", "msg": "", "rc": 0, "start": "2025-12-17 23:39:56.703719", "stderr": "", "stderr_lines": [], "stdout": "0.18", "stdout_lines": ["0.18"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005229", "end": "2025-12-17 23:40:21.049630", "msg": "", "rc": 0, "start": "2025-12-17 23:40:21.044401", "stderr": "", "stderr_lines": [], "stdout": "0.05", "stdout_lines": ["0.05"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.008386", "end": "2025-12-17 23:40:21.552198", "msg": "", "rc": 0, "start": "2025-12-17 23:40:21.543812", "stderr": "", "stderr_lines": [], "stdout": "1.35", "stdout_lines": ["1.35"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024312", "end": "2025-12-17 23:40:21.050312", "msg": "", "rc": 0, "start": "2025-12-17 23:40:21.026000", "stderr": "", "stderr_lines": [], "stdout": "0.21", "stdout_lines": ["0.21"]} + +TASK [Display health status] *************************************************** +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:40:11 up 22 days, 10:31, 1 user, load average: 0.23, 0.13, 0.16\nDisk Usage: 23%\nMemory Usage: 78.6%\nCPU Load: 0.26\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:40:11 up 3 days, 13:12, 1 user, load average: 0.24, 0.26, 0.24\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.22\nCPU Temp: 45.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:40:11 up 22 days, 10:51, 1 user, load average: 0.53, 0.67, 0.84\nDisk Usage: 14%\nMemory Usage: 49.4%\nCPU Load: 0.53\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:40:11 up 22 days, 12:04, 1 user, load average: 0.63, 0.75, 0.71\nDisk Usage: 14%\nMemory Usage: 60.2%\nCPU Load: 0.66\nCPU Temp: 51.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:40:11 up 22 days, 12:50, 1 user, load average: 0.03, 0.09, 0.03\nDisk Usage: 9%\nMemory Usage: 9.1%\nCPU Load: 0.03\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:40:13 up 15 days, 13:06, 1 user, load average: 0.14, 0.11, 0.09\nDisk Usage: 21%\nMemory Usage: 19.9%\nCPU Load: 0.21\nCPU Temp: 34.3°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:40:12 up 194 days, 15:13, 1 user, load average: 0.25, 0.26, 0.29\nDisk Usage: 6%\nMemory Usage: 13.2%\nCPU Load: 0.23\nCPU Temp: 35.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:40:12 up 194 days, 15:13, 1 user, load average: 0.30, 0.17, 0.16\nDisk Usage: 3%\nMemory Usage: 6.9%\nCPU Load: 0.27\nCPU Temp: 30.2°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:39:45 up 11 days, 11:29, 0 user, load average: 0.11, 0.14, 0.10\nDisk Usage: 48%\nMemory Usage: 71.2%\nCPU Load: 0.73\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:39:39 up 18 days, 7:41, 0 user, load average: 0.07, 0.03, 0.00\nDisk Usage: 24%\nMemory Usage: 69.3%\nCPU Load: 0.22\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:40:13 up 3 days, 13:11, 1 user, load average: 0.00, 0.09, 0.07\nDisk Usage: 1%\nMemory Usage: 35.6%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:39:42 up 21 days, 2:34, 0 user, load average: 0.35, 0.40, 0.50\nDisk Usage: 28%\nMemory Usage: 27.2%\nCPU Load: 0.32\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:39:49 up 17 days, 12:55, 0 user, load average: 0.19, 0.24, 0.34\nDisk Usage: 76%\nMemory Usage: 56.1%\nCPU Load: 0.18\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 8:40PM up 22 days, 10:30, 1 user, load averages: 0.28, 0.22, 0.17\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:40:13 up 3 days, 13:11, 1 user, load average: 0.06, 0.05, 0.06\nDisk Usage: 79%\nMemory Usage: 14.1%\nCPU Load: 0.05\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:40:13 up 3:49, 1 user, load average: 1.23, 1.10, 1.09\nDisk Usage: 1%\nMemory Usage: 12.7%\nCPU Load: 1.35\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T04:40:22.459460+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_044521_166a36_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_044521_166a36_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..9e566bc --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_044521_166a36_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `ef850b6f2e40415c89824d4312cb444a` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T04:45:00.001126+00:00 | +| **Fin** | 2025-12-18T04:45:21.898778+00:00 | +| **Durée** | 21.9s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [dev.prod.home] +ok: [hp.truenas.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003397", "end": "2025-12-17 23:45:11.659934", "msg": "", "rc": 0, "start": "2025-12-17 23:45:11.656537", "stderr": "", "stderr_lines": [], "stdout": " 23:45:11 up 22 days, 10:56, 1 user, load average: 0.29, 0.56, 0.75", "stdout_lines": [" 23:45:11 up 22 days, 10:56, 1 user, load average: 0.29, 0.56, 0.75"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003906", "end": "2025-12-17 23:45:11.664546", "msg": "", "rc": 0, "start": "2025-12-17 23:45:11.660640", "stderr": "", "stderr_lines": [], "stdout": " 23:45:11 up 22 days, 12:55, 1 user, load average: 0.06, 0.05, 0.02", "stdout_lines": [" 23:45:11 up 22 days, 12:55, 1 user, load average: 0.06, 0.05, 0.02"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002817", "end": "2025-12-17 23:45:11.691392", "msg": "", "rc": 0, "start": "2025-12-17 23:45:11.688575", "stderr": "", "stderr_lines": [], "stdout": " 23:45:11 up 3 days, 13:17, 1 user, load average: 0.14, 0.18, 0.20", "stdout_lines": [" 23:45:11 up 3 days, 13:17, 1 user, load average: 0.14, 0.18, 0.20"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003991", "end": "2025-12-17 23:45:11.700038", "msg": "", "rc": 0, "start": "2025-12-17 23:45:11.696047", "stderr": "", "stderr_lines": [], "stdout": " 23:45:11 up 22 days, 12:09, 1 user, load average: 0.72, 0.62, 0.65", "stdout_lines": [" 23:45:11 up 22 days, 12:09, 1 user, load average: 0.72, 0.62, 0.65"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003166", "end": "2025-12-17 23:44:45.238120", "msg": "", "rc": 0, "start": "2025-12-17 23:44:45.234954", "stderr": "", "stderr_lines": [], "stdout": " 23:44:45 up 11 days, 11:34, 0 user, load average: 0.44, 0.38, 0.21", "stdout_lines": [" 23:44:45 up 11 days, 11:34, 0 user, load average: 0.44, 0.38, 0.21"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008503", "end": "2025-12-17 23:45:12.331096", "msg": "", "rc": 0, "start": "2025-12-17 23:45:12.322593", "stderr": "", "stderr_lines": [], "stdout": " 23:45:12 up 194 days, 15:18, 1 user, load average: 0.45, 0.19, 0.16", "stdout_lines": [" 23:45:12 up 194 days, 15:18, 1 user, load average: 0.45, 0.19, 0.16"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009321", "end": "2025-12-17 23:45:12.362239", "msg": "", "rc": 0, "start": "2025-12-17 23:45:12.352918", "stderr": "", "stderr_lines": [], "stdout": " 23:45:12 up 194 days, 15:18, 1 user, load average: 0.41, 0.24, 0.27", "stdout_lines": [" 23:45:12 up 194 days, 15:18, 1 user, load average: 0.41, 0.24, 0.27"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.003893", "end": "2025-12-17 23:45:12.654056", "msg": "", "rc": 0, "start": "2025-12-17 23:45:11.650163", "stderr": "", "stderr_lines": [], "stdout": " 23:45:11 up 22 days, 10:36, 1 user, load average: 0.09, 0.08, 0.12", "stdout_lines": [" 23:45:11 up 22 days, 10:36, 1 user, load average: 0.09, 0.08, 0.12"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.007718", "end": "2025-12-17 23:44:39.107142", "msg": "", "rc": 0, "start": "2025-12-17 23:44:39.099424", "stderr": "", "stderr_lines": [], "stdout": " 23:44:39 up 18 days, 7:46, 0 user, load average: 0.10, 0.08, 0.02", "stdout_lines": [" 23:44:39 up 18 days, 7:46, 0 user, load average: 0.10, 0.08, 0.02"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004699", "end": "2025-12-17 23:45:12.840331", "msg": "", "rc": 0, "start": "2025-12-17 23:45:12.835632", "stderr": "", "stderr_lines": [], "stdout": " 23:45:12 up 3 days, 13:16, 1 user, load average: 0.25, 0.09, 0.07", "stdout_lines": [" 23:45:12 up 3 days, 13:16, 1 user, load average: 0.25, 0.09, 0.07"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003971", "end": "2025-12-17 23:44:42.026117", "msg": "", "rc": 0, "start": "2025-12-17 23:44:42.022146", "stderr": "", "stderr_lines": [], "stdout": " 23:44:42 up 21 days, 2:38, 0 user, load average: 0.59, 0.51, 0.51", "stdout_lines": [" 23:44:42 up 21 days, 2:38, 0 user, load average: 0.59, 0.51, 0.51"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002762", "end": "2025-12-17 23:44:48.816455", "msg": "", "rc": 0, "start": "2025-12-17 23:44:48.813693", "stderr": "", "stderr_lines": [], "stdout": " 23:44:48 up 17 days, 13:00, 0 user, load average: 0.06, 0.13, 0.25", "stdout_lines": [" 23:44:48 up 17 days, 13:00, 0 user, load average: 0.06, 0.13, 0.25"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004101", "end": "2025-12-17 20:45:13.103175", "msg": "", "rc": 0, "start": "2025-12-17 20:45:13.099074", "stderr": "", "stderr_lines": [], "stdout": " 8:45PM up 22 days, 10:35, 1 user, load averages: 0.22, 0.22, 0.17", "stdout_lines": [" 8:45PM up 22 days, 10:35, 1 user, load averages: 0.22, 0.22, 0.17"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019336", "end": "2025-12-17 23:45:13.044211", "msg": "", "rc": 0, "start": "2025-12-17 23:45:13.024875", "stderr": "", "stderr_lines": [], "stdout": " 23:45:13 up 15 days, 13:11, 1 user, load average: 0.27, 0.15, 0.10", "stdout_lines": [" 23:45:13 up 15 days, 13:11, 1 user, load average: 0.27, 0.15, 0.10"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.007821", "end": "2025-12-17 23:45:13.293726", "msg": "", "rc": 0, "start": "2025-12-17 23:45:13.285905", "stderr": "", "stderr_lines": [], "stdout": " 23:45:13 up 3:54, 1 user, load average: 1.41, 1.16, 1.11", "stdout_lines": [" 23:45:13 up 3:54, 1 user, load average: 1.41, 1.16, 1.11"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003756", "end": "2025-12-17 23:45:13.250273", "msg": "", "rc": 0, "start": "2025-12-17 23:45:13.246517", "stderr": "", "stderr_lines": [], "stdout": " 23:45:13 up 3 days, 13:16, 1 user, load average: 0.00, 0.02, 0.04", "stdout_lines": [" 23:45:13 up 3 days, 13:16, 1 user, load average: 0.00, 0.02, 0.04"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004326", "end": "2025-12-17 23:45:13.650976", "msg": "", "rc": 0, "start": "2025-12-17 23:45:13.646650", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004025", "end": "2025-12-17 23:45:13.681311", "msg": "", "rc": 0, "start": "2025-12-17 23:45:13.677286", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004705", "end": "2025-12-17 23:45:13.681987", "msg": "", "rc": 0, "start": "2025-12-17 23:45:13.677282", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004988", "end": "2025-12-17 23:45:13.706350", "msg": "", "rc": 0, "start": "2025-12-17 23:45:13.701362", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006031", "end": "2025-12-17 23:45:13.737006", "msg": "", "rc": 0, "start": "2025-12-17 23:45:13.730975", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004984", "end": "2025-12-17 23:44:47.265908", "msg": "", "rc": 0, "start": "2025-12-17 23:44:47.260924", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006446", "end": "2025-12-17 23:44:40.716256", "msg": "", "rc": 0, "start": "2025-12-17 23:44:40.709810", "stderr": "", "stderr_lines": [], "stdout": "24%", "stdout_lines": ["24%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010561", "end": "2025-12-17 23:45:14.439395", "msg": "", "rc": 0, "start": "2025-12-17 23:45:14.428834", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011581", "end": "2025-12-17 23:45:14.470823", "msg": "", "rc": 0, "start": "2025-12-17 23:45:14.459242", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005664", "end": "2025-12-17 23:45:14.618560", "msg": "", "rc": 0, "start": "2025-12-17 23:45:14.612896", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005484", "end": "2025-12-17 23:44:43.896357", "msg": "", "rc": 0, "start": "2025-12-17 23:44:43.890873", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005195", "end": "2025-12-17 23:44:50.652567", "msg": "", "rc": 0, "start": "2025-12-17 23:44:50.647372", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005264", "end": "2025-12-17 20:45:14.931411", "msg": "", "rc": 0, "start": "2025-12-17 20:45:14.926147", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005314", "end": "2025-12-17 23:45:15.030792", "msg": "", "rc": 0, "start": "2025-12-17 23:45:15.025478", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.022041", "end": "2025-12-17 23:45:15.212635", "msg": "", "rc": 0, "start": "2025-12-17 23:45:15.190594", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025442", "end": "2025-12-17 23:45:15.029239", "msg": "", "rc": 0, "start": "2025-12-17 23:45:15.003797", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004255", "end": "2025-12-17 23:45:15.562963", "msg": "", "rc": 0, "start": "2025-12-17 23:45:15.558708", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004338", "end": "2025-12-17 23:45:15.565964", "msg": "", "rc": 0, "start": "2025-12-17 23:45:15.561626", "stderr": "", "stderr_lines": [], "stdout": "78.7%", "stdout_lines": ["78.7%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004706", "end": "2025-12-17 23:45:15.590779", "msg": "", "rc": 0, "start": "2025-12-17 23:45:15.586073", "stderr": "", "stderr_lines": [], "stdout": "49.3%", "stdout_lines": ["49.3%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005277", "end": "2025-12-17 23:45:15.614327", "msg": "", "rc": 0, "start": "2025-12-17 23:45:15.609050", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005575", "end": "2025-12-17 23:45:15.618086", "msg": "", "rc": 0, "start": "2025-12-17 23:45:15.612511", "stderr": "", "stderr_lines": [], "stdout": "60.1%", "stdout_lines": ["60.1%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004184", "end": "2025-12-17 23:44:49.168713", "msg": "", "rc": 0, "start": "2025-12-17 23:44:49.164529", "stderr": "", "stderr_lines": [], "stdout": "70.9%", "stdout_lines": ["70.9%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004429", "end": "2025-12-17 23:44:42.587412", "msg": "", "rc": 0, "start": "2025-12-17 23:44:42.582983", "stderr": "", "stderr_lines": [], "stdout": "69.1%", "stdout_lines": ["69.1%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010889", "end": "2025-12-17 23:45:16.255296", "msg": "", "rc": 0, "start": "2025-12-17 23:45:16.244407", "stderr": "", "stderr_lines": [], "stdout": "6.7%", "stdout_lines": ["6.7%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011817", "end": "2025-12-17 23:45:16.290547", "msg": "", "rc": 0, "start": "2025-12-17 23:45:16.278730", "stderr": "", "stderr_lines": [], "stdout": "13.5%", "stdout_lines": ["13.5%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006517", "end": "2025-12-17 23:45:16.526926", "msg": "", "rc": 0, "start": "2025-12-17 23:45:16.520409", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004127", "end": "2025-12-17 23:44:45.750843", "msg": "", "rc": 0, "start": "2025-12-17 23:44:45.746716", "stderr": "", "stderr_lines": [], "stdout": "27.3%", "stdout_lines": ["27.3%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003812", "end": "2025-12-17 23:44:52.474863", "msg": "", "rc": 0, "start": "2025-12-17 23:44:52.471051", "stderr": "", "stderr_lines": [], "stdout": "53.7%", "stdout_lines": ["53.7%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005044", "end": "2025-12-17 20:45:16.765943", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 20:45:16.760899", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005343", "end": "2025-12-17 23:45:16.945917", "msg": "", "rc": 0, "start": "2025-12-17 23:45:16.940574", "stderr": "", "stderr_lines": [], "stdout": "14.0%", "stdout_lines": ["14.0%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.009592", "end": "2025-12-17 23:45:17.107345", "msg": "", "rc": 0, "start": "2025-12-17 23:45:17.097753", "stderr": "", "stderr_lines": [], "stdout": "12.6%", "stdout_lines": ["12.6%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025825", "end": "2025-12-17 23:45:16.960698", "msg": "", "rc": 0, "start": "2025-12-17 23:45:16.934873", "stderr": "", "stderr_lines": [], "stdout": "20.2%", "stdout_lines": ["20.2%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005535", "end": "2025-12-17 23:45:17.499010", "msg": "", "rc": 0, "start": "2025-12-17 23:45:17.493475", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004913", "end": "2025-12-17 23:45:17.503743", "msg": "", "rc": 0, "start": "2025-12-17 23:45:17.498830", "stderr": "", "stderr_lines": [], "stdout": "45.0°C", "stdout_lines": ["45.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006016", "end": "2025-12-17 23:45:17.505912", "msg": "", "rc": 0, "start": "2025-12-17 23:45:17.499896", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002896", "end": "2025-12-17 23:45:17.533202", "msg": "", "rc": 0, "start": "2025-12-17 23:45:17.530306", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006482", "end": "2025-12-17 23:45:17.562072", "msg": "", "rc": 0, "start": "2025-12-17 23:45:17.555590", "stderr": "", "stderr_lines": [], "stdout": "51.5°C", "stdout_lines": ["51.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002780", "end": "2025-12-17 23:44:51.085785", "msg": "", "rc": 0, "start": "2025-12-17 23:44:51.083005", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003118", "end": "2025-12-17 23:44:44.525856", "msg": "", "rc": 0, "start": "2025-12-17 23:44:44.522738", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011735", "end": "2025-12-17 23:45:18.194584", "msg": "", "rc": 0, "start": "2025-12-17 23:45:18.182849", "stderr": "", "stderr_lines": [], "stdout": "30.7°C", "stdout_lines": ["30.7°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012996", "end": "2025-12-17 23:45:18.224238", "msg": "", "rc": 0, "start": "2025-12-17 23:45:18.211242", "stderr": "", "stderr_lines": [], "stdout": "34.6°C", "stdout_lines": ["34.6°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003227", "end": "2025-12-17 23:45:18.439924", "msg": "", "rc": 0, "start": "2025-12-17 23:45:18.436697", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002886", "end": "2025-12-17 23:44:47.695082", "msg": "", "rc": 0, "start": "2025-12-17 23:44:47.692196", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003736", "end": "2025-12-17 20:45:18.686509", "msg": "", "rc": 0, "start": "2025-12-17 20:45:18.682773", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002578", "end": "2025-12-17 23:44:54.417749", "msg": "", "rc": 0, "start": "2025-12-17 23:44:54.415171", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002894", "end": "2025-12-17 23:45:18.849043", "msg": "", "rc": 0, "start": "2025-12-17 23:45:18.846149", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003956", "end": "2025-12-17 23:45:19.061156", "msg": "", "rc": 0, "start": "2025-12-17 23:45:19.057200", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028435", "end": "2025-12-17 23:45:18.898049", "msg": "", "rc": 0, "start": "2025-12-17 23:45:18.869614", "stderr": "", "stderr_lines": [], "stdout": "33.8°C", "stdout_lines": ["33.8°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004102", "end": "2025-12-17 23:45:19.407641", "msg": "", "rc": 0, "start": "2025-12-17 23:45:19.403539", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004258", "end": "2025-12-17 23:45:19.435177", "msg": "", "rc": 0, "start": "2025-12-17 23:45:19.430919", "stderr": "", "stderr_lines": [], "stdout": "0.20", "stdout_lines": ["0.20"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004722", "end": "2025-12-17 23:45:19.441094", "msg": "", "rc": 0, "start": "2025-12-17 23:45:19.436372", "stderr": "", "stderr_lines": [], "stdout": "0.32", "stdout_lines": ["0.32"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004964", "end": "2025-12-17 23:45:19.461982", "msg": "", "rc": 0, "start": "2025-12-17 23:45:19.457018", "stderr": "", "stderr_lines": [], "stdout": "0.14", "stdout_lines": ["0.14"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005176", "end": "2025-12-17 23:45:19.474315", "msg": "", "rc": 0, "start": "2025-12-17 23:45:19.469139", "stderr": "", "stderr_lines": [], "stdout": "0.83", "stdout_lines": ["0.83"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004314", "end": "2025-12-17 23:44:53.024666", "msg": "", "rc": 0, "start": "2025-12-17 23:44:53.020352", "stderr": "", "stderr_lines": [], "stdout": "0.38", "stdout_lines": ["0.38"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005147", "end": "2025-12-17 23:44:46.451313", "msg": "", "rc": 0, "start": "2025-12-17 23:44:46.446166", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011459", "end": "2025-12-17 23:45:20.160862", "msg": "", "rc": 0, "start": "2025-12-17 23:45:20.149403", "stderr": "", "stderr_lines": [], "stdout": "0.38", "stdout_lines": ["0.38"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010273", "end": "2025-12-17 23:45:20.193031", "msg": "", "rc": 0, "start": "2025-12-17 23:45:20.182758", "stderr": "", "stderr_lines": [], "stdout": "0.38", "stdout_lines": ["0.38"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005637", "end": "2025-12-17 23:45:20.383814", "msg": "", "rc": 0, "start": "2025-12-17 23:45:20.378177", "stderr": "", "stderr_lines": [], "stdout": "0.21", "stdout_lines": ["0.21"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004869", "end": "2025-12-17 23:44:49.616447", "msg": "", "rc": 0, "start": "2025-12-17 23:44:49.611578", "stderr": "", "stderr_lines": [], "stdout": "0.64", "stdout_lines": ["0.64"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006238", "end": "2025-12-17 20:45:20.660575", "msg": "", "rc": 0, "start": "2025-12-17 20:45:20.654337", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004717", "end": "2025-12-17 23:44:56.396351", "msg": "", "rc": 0, "start": "2025-12-17 23:44:56.391634", "stderr": "", "stderr_lines": [], "stdout": "0.06", "stdout_lines": ["0.06"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005200", "end": "2025-12-17 23:45:20.805551", "msg": "", "rc": 0, "start": "2025-12-17 23:45:20.800351", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.008790", "end": "2025-12-17 23:45:21.030394", "msg": "", "rc": 0, "start": "2025-12-17 23:45:21.021604", "stderr": "", "stderr_lines": [], "stdout": "1.45", "stdout_lines": ["1.45"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024234", "end": "2025-12-17 23:45:20.800796", "msg": "", "rc": 0, "start": "2025-12-17 23:45:20.776562", "stderr": "", "stderr_lines": [], "stdout": "0.25", "stdout_lines": ["0.25"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:45:11 up 3 days, 13:17, 1 user, load average: 0.14, 0.18, 0.20\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.20\nCPU Temp: 45.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:45:11 up 22 days, 10:36, 1 user, load average: 0.09, 0.08, 0.12\nDisk Usage: 23%\nMemory Usage: 78.7%\nCPU Load: 0.08\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:45:11 up 22 days, 10:56, 1 user, load average: 0.29, 0.56, 0.75\nDisk Usage: 14%\nMemory Usage: 49.3%\nCPU Load: 0.32\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:45:11 up 22 days, 12:09, 1 user, load average: 0.72, 0.62, 0.65\nDisk Usage: 14%\nMemory Usage: 60.1%\nCPU Load: 0.83\nCPU Temp: 51.5°C\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:45:13 up 15 days, 13:11, 1 user, load average: 0.27, 0.15, 0.10\nDisk Usage: 21%\nMemory Usage: 20.2%\nCPU Load: 0.25\nCPU Temp: 33.8°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:45:11 up 22 days, 12:55, 1 user, load average: 0.06, 0.05, 0.02\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.14\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:45:12 up 194 days, 15:18, 1 user, load average: 0.41, 0.24, 0.27\nDisk Usage: 6%\nMemory Usage: 13.5%\nCPU Load: 0.38\nCPU Temp: 34.6°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:45:12 up 194 days, 15:18, 1 user, load average: 0.45, 0.19, 0.16\nDisk Usage: 3%\nMemory Usage: 6.7%\nCPU Load: 0.38\nCPU Temp: 30.7°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:44:45 up 11 days, 11:34, 0 user, load average: 0.44, 0.38, 0.21\nDisk Usage: 48%\nMemory Usage: 70.9%\nCPU Load: 0.38\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:44:39 up 18 days, 7:46, 0 user, load average: 0.10, 0.08, 0.02\nDisk Usage: 24%\nMemory Usage: 69.1%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:45:12 up 3 days, 13:16, 1 user, load average: 0.25, 0.09, 0.07\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.21\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:44:42 up 21 days, 2:38, 0 user, load average: 0.59, 0.51, 0.51\nDisk Usage: 28%\nMemory Usage: 27.3%\nCPU Load: 0.64\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:44:48 up 17 days, 13:00, 0 user, load average: 0.06, 0.13, 0.25\nDisk Usage: 76%\nMemory Usage: 53.7%\nCPU Load: 0.06\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 8:45PM up 22 days, 10:35, 1 user, load averages: 0.22, 0.22, 0.17\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:45:13 up 3 days, 13:16, 1 user, load average: 0.00, 0.02, 0.04\nDisk Usage: 79%\nMemory Usage: 14.0%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:45:13 up 3:54, 1 user, load average: 1.41, 1.16, 1.11\nDisk Usage: 1%\nMemory Usage: 12.6%\nCPU Load: 1.45\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T04:45:21.950480+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_045022_82e9dd_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_045022_82e9dd_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..b9128ab --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_045022_82e9dd_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `90ac131a031b46c98c56ce8c72e46737` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T04:50:00.001233+00:00 | +| **Fin** | 2025-12-18T04:50:22.801202+00:00 | +| **Durée** | 22.8s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [dev.prod.home] +ok: [hp.truenas.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003176", "end": "2025-12-17 23:50:12.368547", "msg": "", "rc": 0, "start": "2025-12-17 23:50:12.365371", "stderr": "", "stderr_lines": [], "stdout": " 23:50:12 up 22 days, 10:41, 1 user, load average: 0.06, 0.06, 0.09", "stdout_lines": [" 23:50:12 up 22 days, 10:41, 1 user, load average: 0.06, 0.06, 0.09"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003862", "end": "2025-12-17 23:50:12.380924", "msg": "", "rc": 0, "start": "2025-12-17 23:50:12.377062", "stderr": "", "stderr_lines": [], "stdout": " 23:50:12 up 22 days, 13:00, 1 user, load average: 0.03, 0.04, 0.00", "stdout_lines": [" 23:50:12 up 22 days, 13:00, 1 user, load average: 0.03, 0.04, 0.00"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003136", "end": "2025-12-17 23:50:12.379563", "msg": "", "rc": 0, "start": "2025-12-17 23:50:12.376427", "stderr": "", "stderr_lines": [], "stdout": " 23:50:12 up 22 days, 11:01, 1 user, load average: 0.48, 0.67, 0.75", "stdout_lines": [" 23:50:12 up 22 days, 11:01, 1 user, load average: 0.48, 0.67, 0.75"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002975", "end": "2025-12-17 23:50:12.419155", "msg": "", "rc": 0, "start": "2025-12-17 23:50:12.416180", "stderr": "", "stderr_lines": [], "stdout": " 23:50:12 up 3 days, 13:22, 1 user, load average: 0.13, 0.10, 0.16", "stdout_lines": [" 23:50:12 up 3 days, 13:22, 1 user, load average: 0.13, 0.10, 0.16"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003751", "end": "2025-12-17 23:50:12.417114", "msg": "", "rc": 0, "start": "2025-12-17 23:50:12.413363", "stderr": "", "stderr_lines": [], "stdout": " 23:50:12 up 22 days, 12:14, 1 user, load average: 0.80, 0.63, 0.63", "stdout_lines": [" 23:50:12 up 22 days, 12:14, 1 user, load average: 0.80, 0.63, 0.63"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003083", "end": "2025-12-17 23:49:45.983781", "msg": "", "rc": 0, "start": "2025-12-17 23:49:45.980698", "stderr": "", "stderr_lines": [], "stdout": " 23:49:45 up 11 days, 11:39, 0 user, load average: 0.27, 0.21, 0.18", "stdout_lines": [" 23:49:45 up 11 days, 11:39, 0 user, load average: 0.27, 0.21, 0.18"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003809", "end": "2025-12-17 23:49:39.414758", "msg": "", "rc": 0, "start": "2025-12-17 23:49:39.410949", "stderr": "", "stderr_lines": [], "stdout": " 23:49:39 up 18 days, 7:51, 0 user, load average: 0.00, 0.02, 0.00", "stdout_lines": [" 23:49:39 up 18 days, 7:51, 0 user, load average: 0.00, 0.02, 0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008316", "end": "2025-12-17 23:50:13.071465", "msg": "", "rc": 0, "start": "2025-12-17 23:50:13.063149", "stderr": "", "stderr_lines": [], "stdout": " 23:50:13 up 194 days, 15:23, 1 user, load average: 0.31, 0.16, 0.14", "stdout_lines": [" 23:50:13 up 194 days, 15:23, 1 user, load average: 0.31, 0.16, 0.14"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.010012", "end": "2025-12-17 23:50:13.122416", "msg": "", "rc": 0, "start": "2025-12-17 23:50:13.112404", "stderr": "", "stderr_lines": [], "stdout": " 23:50:13 up 194 days, 15:23, 1 user, load average: 0.38, 0.21, 0.24", "stdout_lines": [" 23:50:13 up 194 days, 15:23, 1 user, load average: 0.38, 0.21, 0.24"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004934", "end": "2025-12-17 23:50:13.337673", "msg": "", "rc": 0, "start": "2025-12-17 23:50:13.332739", "stderr": "", "stderr_lines": [], "stdout": " 23:50:13 up 3 days, 13:21, 1 user, load average: 0.05, 0.07, 0.07", "stdout_lines": [" 23:50:13 up 3 days, 13:21, 1 user, load average: 0.05, 0.07, 0.07"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003332", "end": "2025-12-17 23:49:42.603942", "msg": "", "rc": 0, "start": "2025-12-17 23:49:42.600610", "stderr": "", "stderr_lines": [], "stdout": " 23:49:42 up 21 days, 2:44, 0 user, load average: 0.74, 0.59, 0.54", "stdout_lines": [" 23:49:42 up 21 days, 2:44, 0 user, load average: 0.74, 0.59, 0.54"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002954", "end": "2025-12-17 23:49:49.307136", "msg": "", "rc": 0, "start": "2025-12-17 23:49:49.304182", "stderr": "", "stderr_lines": [], "stdout": " 23:49:49 up 17 days, 13:05, 0 user, load average: 0.29, 0.18, 0.24", "stdout_lines": [" 23:49:49 up 17 days, 13:05, 0 user, load average: 0.29, 0.18, 0.24"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004127", "end": "2025-12-17 20:50:13.592603", "msg": "", "rc": 0, "start": "2025-12-17 20:50:13.588476", "stderr": "", "stderr_lines": [], "stdout": " 8:50PM up 22 days, 10:40, 1 user, load averages: 0.25, 0.30, 0.22", "stdout_lines": [" 8:50PM up 22 days, 10:40, 1 user, load averages: 0.25, 0.30, 0.22"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003642", "end": "2025-12-17 23:50:13.747698", "msg": "", "rc": 0, "start": "2025-12-17 23:50:13.744056", "stderr": "", "stderr_lines": [], "stdout": " 23:50:13 up 3 days, 13:21, 1 user, load average: 0.02, 0.03, 0.03", "stdout_lines": [" 23:50:13 up 3 days, 13:21, 1 user, load average: 0.02, 0.03, 0.03"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.006930", "end": "2025-12-17 23:50:14.115011", "msg": "", "rc": 0, "start": "2025-12-17 23:50:14.108081", "stderr": "", "stderr_lines": [], "stdout": " 23:50:14 up 3:59, 1 user, load average: 1.10, 1.13, 1.10", "stdout_lines": [" 23:50:14 up 3:59, 1 user, load average: 1.10, 1.13, 1.10"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019335", "end": "2025-12-17 23:50:13.757768", "msg": "", "rc": 0, "start": "2025-12-17 23:50:13.738433", "stderr": "", "stderr_lines": [], "stdout": " 23:50:13 up 15 days, 13:16, 1 user, load average: 0.13, 0.11, 0.09", "stdout_lines": [" 23:50:13 up 15 days, 13:16, 1 user, load average: 0.13, 0.11, 0.09"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004251", "end": "2025-12-17 23:50:14.323745", "msg": "", "rc": 0, "start": "2025-12-17 23:50:14.319494", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004327", "end": "2025-12-17 23:50:14.342241", "msg": "", "rc": 0, "start": "2025-12-17 23:50:14.337914", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004149", "end": "2025-12-17 23:50:14.351820", "msg": "", "rc": 0, "start": "2025-12-17 23:50:14.347671", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005425", "end": "2025-12-17 23:50:14.373102", "msg": "", "rc": 0, "start": "2025-12-17 23:50:14.367677", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005541", "end": "2025-12-17 23:50:14.402387", "msg": "", "rc": 0, "start": "2025-12-17 23:50:14.396846", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005228", "end": "2025-12-17 23:49:47.948963", "msg": "", "rc": 0, "start": "2025-12-17 23:49:47.943735", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006009", "end": "2025-12-17 23:49:41.387941", "msg": "", "rc": 0, "start": "2025-12-17 23:49:41.381932", "stderr": "", "stderr_lines": [], "stdout": "24%", "stdout_lines": ["24%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011546", "end": "2025-12-17 23:50:15.044558", "msg": "", "rc": 0, "start": "2025-12-17 23:50:15.033012", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010708", "end": "2025-12-17 23:50:15.118770", "msg": "", "rc": 0, "start": "2025-12-17 23:50:15.108062", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005926", "end": "2025-12-17 23:50:15.315991", "msg": "", "rc": 0, "start": "2025-12-17 23:50:15.310065", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005346", "end": "2025-12-17 23:49:44.571990", "msg": "", "rc": 0, "start": "2025-12-17 23:49:44.566644", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004683", "end": "2025-12-17 23:49:51.282700", "msg": "", "rc": 0, "start": "2025-12-17 23:49:51.278017", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005341", "end": "2025-12-17 20:50:15.593091", "msg": "", "rc": 0, "start": "2025-12-17 20:50:15.587750", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005295", "end": "2025-12-17 23:50:15.724637", "msg": "", "rc": 0, "start": "2025-12-17 23:50:15.719342", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.019551", "end": "2025-12-17 23:50:16.131026", "msg": "", "rc": 0, "start": "2025-12-17 23:50:16.111475", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.024768", "end": "2025-12-17 23:50:15.719902", "msg": "", "rc": 0, "start": "2025-12-17 23:50:15.695134", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004230", "end": "2025-12-17 23:50:16.246707", "msg": "", "rc": 0, "start": "2025-12-17 23:50:16.242477", "stderr": "", "stderr_lines": [], "stdout": "78.7%", "stdout_lines": ["78.7%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004135", "end": "2025-12-17 23:50:16.267204", "msg": "", "rc": 0, "start": "2025-12-17 23:50:16.263069", "stderr": "", "stderr_lines": [], "stdout": "22.5%", "stdout_lines": ["22.5%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005092", "end": "2025-12-17 23:50:16.274242", "msg": "", "rc": 0, "start": "2025-12-17 23:50:16.269150", "stderr": "", "stderr_lines": [], "stdout": "49.4%", "stdout_lines": ["49.4%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004936", "end": "2025-12-17 23:50:16.290443", "msg": "", "rc": 0, "start": "2025-12-17 23:50:16.285507", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005827", "end": "2025-12-17 23:50:16.321552", "msg": "", "rc": 0, "start": "2025-12-17 23:50:16.315725", "stderr": "", "stderr_lines": [], "stdout": "60.1%", "stdout_lines": ["60.1%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003684", "end": "2025-12-17 23:49:49.851413", "msg": "", "rc": 0, "start": "2025-12-17 23:49:49.847729", "stderr": "", "stderr_lines": [], "stdout": "70.7%", "stdout_lines": ["70.7%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004285", "end": "2025-12-17 23:49:43.280946", "msg": "", "rc": 0, "start": "2025-12-17 23:49:43.276661", "stderr": "", "stderr_lines": [], "stdout": "69.1%", "stdout_lines": ["69.1%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011067", "end": "2025-12-17 23:50:16.939378", "msg": "", "rc": 0, "start": "2025-12-17 23:50:16.928311", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011794", "end": "2025-12-17 23:50:16.995804", "msg": "", "rc": 0, "start": "2025-12-17 23:50:16.984010", "stderr": "", "stderr_lines": [], "stdout": "13.8%", "stdout_lines": ["13.8%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006157", "end": "2025-12-17 23:50:17.225241", "msg": "", "rc": 0, "start": "2025-12-17 23:50:17.219084", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004269", "end": "2025-12-17 23:49:46.448658", "msg": "", "rc": 0, "start": "2025-12-17 23:49:46.444389", "stderr": "", "stderr_lines": [], "stdout": "27.3%", "stdout_lines": ["27.3%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003845", "end": "2025-12-17 23:49:53.151663", "msg": "", "rc": 0, "start": "2025-12-17 23:49:53.147818", "stderr": "", "stderr_lines": [], "stdout": "60.9%", "stdout_lines": ["60.9%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005100", "end": "2025-12-17 20:50:17.456565", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 20:50:17.451465", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005368", "end": "2025-12-17 23:50:17.638853", "msg": "", "rc": 0, "start": "2025-12-17 23:50:17.633485", "stderr": "", "stderr_lines": [], "stdout": "14.0%", "stdout_lines": ["14.0%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.009697", "end": "2025-12-17 23:50:18.025223", "msg": "", "rc": 0, "start": "2025-12-17 23:50:18.015526", "stderr": "", "stderr_lines": [], "stdout": "12.8%", "stdout_lines": ["12.8%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025688", "end": "2025-12-17 23:50:17.633448", "msg": "", "rc": 0, "start": "2025-12-17 23:50:17.607760", "stderr": "", "stderr_lines": [], "stdout": "20.9%", "stdout_lines": ["20.9%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005345", "end": "2025-12-17 23:50:18.171874", "msg": "", "rc": 0, "start": "2025-12-17 23:50:18.166529", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004932", "end": "2025-12-17 23:50:18.188357", "msg": "", "rc": 0, "start": "2025-12-17 23:50:18.183425", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003297", "end": "2025-12-17 23:50:18.212042", "msg": "", "rc": 0, "start": "2025-12-17 23:50:18.208745", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006279", "end": "2025-12-17 23:50:18.221571", "msg": "", "rc": 0, "start": "2025-12-17 23:50:18.215292", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006736", "end": "2025-12-17 23:50:18.226354", "msg": "", "rc": 0, "start": "2025-12-17 23:50:18.219618", "stderr": "", "stderr_lines": [], "stdout": "51.5°C", "stdout_lines": ["51.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002638", "end": "2025-12-17 23:49:51.781055", "msg": "", "rc": 0, "start": "2025-12-17 23:49:51.778417", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003139", "end": "2025-12-17 23:49:45.204027", "msg": "", "rc": 0, "start": "2025-12-17 23:49:45.200888", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011893", "end": "2025-12-17 23:50:18.868868", "msg": "", "rc": 0, "start": "2025-12-17 23:50:18.856975", "stderr": "", "stderr_lines": [], "stdout": "29.7°C", "stdout_lines": ["29.7°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013030", "end": "2025-12-17 23:50:18.887852", "msg": "", "rc": 0, "start": "2025-12-17 23:50:18.874822", "stderr": "", "stderr_lines": [], "stdout": "36.0°C", "stdout_lines": ["36.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003124", "end": "2025-12-17 23:50:19.142175", "msg": "", "rc": 0, "start": "2025-12-17 23:50:19.139051", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002962", "end": "2025-12-17 23:49:48.370955", "msg": "", "rc": 0, "start": "2025-12-17 23:49:48.367993", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004038", "end": "2025-12-17 20:50:19.351298", "msg": "", "rc": 0, "start": "2025-12-17 20:50:19.347260", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002764", "end": "2025-12-17 23:49:55.080585", "msg": "", "rc": 0, "start": "2025-12-17 23:49:55.077821", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002964", "end": "2025-12-17 23:50:19.558531", "msg": "", "rc": 0, "start": "2025-12-17 23:50:19.555567", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004026", "end": "2025-12-17 23:50:19.996331", "msg": "", "rc": 0, "start": "2025-12-17 23:50:19.992305", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028669", "end": "2025-12-17 23:50:19.569701", "msg": "", "rc": 0, "start": "2025-12-17 23:50:19.541032", "stderr": "", "stderr_lines": [], "stdout": "33.7°C", "stdout_lines": ["33.7°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004066", "end": "2025-12-17 23:50:20.091449", "msg": "", "rc": 0, "start": "2025-12-17 23:50:20.087383", "stderr": "", "stderr_lines": [], "stdout": "0.13", "stdout_lines": ["0.13"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004188", "end": "2025-12-17 23:50:20.128671", "msg": "", "rc": 0, "start": "2025-12-17 23:50:20.124483", "stderr": "", "stderr_lines": [], "stdout": "0.12", "stdout_lines": ["0.12"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004781", "end": "2025-12-17 23:50:20.129452", "msg": "", "rc": 0, "start": "2025-12-17 23:50:20.124671", "stderr": "", "stderr_lines": [], "stdout": "0.45", "stdout_lines": ["0.45"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005975", "end": "2025-12-17 23:50:20.140885", "msg": "", "rc": 0, "start": "2025-12-17 23:50:20.134910", "stderr": "", "stderr_lines": [], "stdout": "0.03", "stdout_lines": ["0.03"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005319", "end": "2025-12-17 23:50:20.150537", "msg": "", "rc": 0, "start": "2025-12-17 23:50:20.145218", "stderr": "", "stderr_lines": [], "stdout": "0.82", "stdout_lines": ["0.82"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004422", "end": "2025-12-17 23:49:53.729526", "msg": "", "rc": 0, "start": "2025-12-17 23:49:53.725104", "stderr": "", "stderr_lines": [], "stdout": "0.31", "stdout_lines": ["0.31"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005618", "end": "2025-12-17 23:49:47.117835", "msg": "", "rc": 0, "start": "2025-12-17 23:49:47.112217", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010245", "end": "2025-12-17 23:50:20.890820", "msg": "", "rc": 0, "start": "2025-12-17 23:50:20.880575", "stderr": "", "stderr_lines": [], "stdout": "0.29", "stdout_lines": ["0.29"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011122", "end": "2025-12-17 23:50:20.923643", "msg": "", "rc": 0, "start": "2025-12-17 23:50:20.912521", "stderr": "", "stderr_lines": [], "stdout": "0.35", "stdout_lines": ["0.35"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005632", "end": "2025-12-17 23:50:21.092952", "msg": "", "rc": 0, "start": "2025-12-17 23:50:21.087320", "stderr": "", "stderr_lines": [], "stdout": "0.12", "stdout_lines": ["0.12"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005016", "end": "2025-12-17 23:49:50.276795", "msg": "", "rc": 0, "start": "2025-12-17 23:49:50.271779", "stderr": "", "stderr_lines": [], "stdout": "0.68", "stdout_lines": ["0.68"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005919", "end": "2025-12-17 20:50:21.386836", "msg": "", "rc": 0, "start": "2025-12-17 20:50:21.380917", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004519", "end": "2025-12-17 23:49:57.128610", "msg": "", "rc": 0, "start": "2025-12-17 23:49:57.124091", "stderr": "", "stderr_lines": [], "stdout": "0.27", "stdout_lines": ["0.27"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.008259", "end": "2025-12-17 23:50:21.924374", "msg": "", "rc": 0, "start": "2025-12-17 23:50:21.916115", "stderr": "", "stderr_lines": [], "stdout": "1.09", "stdout_lines": ["1.09"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005219", "end": "2025-12-17 23:50:21.512449", "msg": "", "rc": 0, "start": "2025-12-17 23:50:21.507230", "stderr": "", "stderr_lines": [], "stdout": "0.01", "stdout_lines": ["0.01"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024097", "end": "2025-12-17 23:50:21.480758", "msg": "", "rc": 0, "start": "2025-12-17 23:50:21.456661", "stderr": "", "stderr_lines": [], "stdout": "0.20", "stdout_lines": ["0.20"]} + +TASK [Display health status] *************************************************** +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:50:12 up 22 days, 10:41, 1 user, load average: 0.06, 0.06, 0.09\nDisk Usage: 23%\nMemory Usage: 78.7%\nCPU Load: 0.13\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:50:12 up 3 days, 13:22, 1 user, load average: 0.13, 0.10, 0.16\nDisk Usage: 22%\nMemory Usage: 22.5%\nCPU Load: 0.12\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:50:12 up 22 days, 11:01, 1 user, load average: 0.48, 0.67, 0.75\nDisk Usage: 14%\nMemory Usage: 49.4%\nCPU Load: 0.45\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:50:12 up 22 days, 12:14, 1 user, load average: 0.80, 0.63, 0.63\nDisk Usage: 14%\nMemory Usage: 60.1%\nCPU Load: 0.82\nCPU Temp: 51.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:50:12 up 22 days, 13:00, 1 user, load average: 0.03, 0.04, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.03\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:50:13 up 15 days, 13:16, 1 user, load average: 0.13, 0.11, 0.09\nDisk Usage: 21%\nMemory Usage: 20.9%\nCPU Load: 0.20\nCPU Temp: 33.7°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:50:13 up 194 days, 15:23, 1 user, load average: 0.38, 0.21, 0.24\nDisk Usage: 6%\nMemory Usage: 13.8%\nCPU Load: 0.35\nCPU Temp: 36.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:50:13 up 194 days, 15:23, 1 user, load average: 0.31, 0.16, 0.14\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.29\nCPU Temp: 29.7°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:49:45 up 11 days, 11:39, 0 user, load average: 0.27, 0.21, 0.18\nDisk Usage: 48%\nMemory Usage: 70.7%\nCPU Load: 0.31\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:49:39 up 18 days, 7:51, 0 user, load average: 0.00, 0.02, 0.00\nDisk Usage: 24%\nMemory Usage: 69.1%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:50:13 up 3 days, 13:21, 1 user, load average: 0.05, 0.07, 0.07\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.12\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:49:42 up 21 days, 2:44, 0 user, load average: 0.74, 0.59, 0.54\nDisk Usage: 28%\nMemory Usage: 27.3%\nCPU Load: 0.68\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:49:49 up 17 days, 13:05, 0 user, load average: 0.29, 0.18, 0.24\nDisk Usage: 76%\nMemory Usage: 60.9%\nCPU Load: 0.27\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 8:50PM up 22 days, 10:40, 1 user, load averages: 0.25, 0.30, 0.22\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:50:13 up 3 days, 13:21, 1 user, load average: 0.02, 0.03, 0.03\nDisk Usage: 79%\nMemory Usage: 14.0%\nCPU Load: 0.01\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:50:14 up 3:59, 1 user, load average: 1.10, 1.13, 1.10\nDisk Usage: 1%\nMemory Usage: 12.8%\nCPU Load: 1.09\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T04:50:22.855030+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_045523_1bec31_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_045523_1bec31_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..aa9c9a3 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_045523_1bec31_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `df7c6211c15e498b95a2b517cc472e24` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-18T04:55:00.002623+00:00 | +| **Fin** | 2025-12-18T04:55:22.840284+00:00 | +| **Durée** | 22.8s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.4gb.home] +ok: [raspi.8gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003284", "end": "2025-12-17 23:55:12.204988", "msg": "", "rc": 0, "start": "2025-12-17 23:55:12.201704", "stderr": "", "stderr_lines": [], "stdout": " 23:55:12 up 22 days, 11:06, 1 user, load average: 0.86, 0.79, 0.79", "stdout_lines": [" 23:55:12 up 22 days, 11:06, 1 user, load average: 0.86, 0.79, 0.79"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003631", "end": "2025-12-17 23:55:12.213726", "msg": "", "rc": 0, "start": "2025-12-17 23:55:12.210095", "stderr": "", "stderr_lines": [], "stdout": " 23:55:12 up 22 days, 13:05, 1 user, load average: 0.02, 0.03, 0.00", "stdout_lines": [" 23:55:12 up 22 days, 13:05, 1 user, load average: 0.02, 0.03, 0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003885", "end": "2025-12-17 23:55:12.230027", "msg": "", "rc": 0, "start": "2025-12-17 23:55:12.226142", "stderr": "", "stderr_lines": [], "stdout": " 23:55:12 up 22 days, 12:19, 1 user, load average: 0.58, 0.58, 0.62", "stdout_lines": [" 23:55:12 up 22 days, 12:19, 1 user, load average: 0.58, 0.58, 0.62"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002995", "end": "2025-12-17 23:55:12.239724", "msg": "", "rc": 0, "start": "2025-12-17 23:55:12.236729", "stderr": "", "stderr_lines": [], "stdout": " 23:55:12 up 3 days, 13:27, 1 user, load average: 0.27, 0.20, 0.18", "stdout_lines": [" 23:55:12 up 3 days, 13:27, 1 user, load average: 0.27, 0.20, 0.18"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002936", "end": "2025-12-17 23:54:45.814736", "msg": "", "rc": 0, "start": "2025-12-17 23:54:45.811800", "stderr": "", "stderr_lines": [], "stdout": " 23:54:45 up 11 days, 11:44, 0 user, load average: 0.04, 0.10, 0.14", "stdout_lines": [" 23:54:45 up 11 days, 11:44, 0 user, load average: 0.04, 0.10, 0.14"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008389", "end": "2025-12-17 23:55:12.916187", "msg": "", "rc": 0, "start": "2025-12-17 23:55:12.907798", "stderr": "", "stderr_lines": [], "stdout": " 23:55:12 up 194 days, 15:28, 1 user, load average: 0.09, 0.16, 0.14", "stdout_lines": [" 23:55:12 up 194 days, 15:28, 1 user, load average: 0.09, 0.16, 0.14"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009091", "end": "2025-12-17 23:55:12.965826", "msg": "", "rc": 0, "start": "2025-12-17 23:55:12.956735", "stderr": "", "stderr_lines": [], "stdout": " 23:55:12 up 194 days, 15:28, 1 user, load average: 0.21, 0.18, 0.21", "stdout_lines": [" 23:55:12 up 194 days, 15:28, 1 user, load average: 0.21, 0.18, 0.21"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004435", "end": "2025-12-17 23:55:13.199492", "msg": "", "rc": 0, "start": "2025-12-17 23:55:12.195057", "stderr": "", "stderr_lines": [], "stdout": " 23:55:12 up 22 days, 10:46, 1 user, load average: 0.20, 0.08, 0.09", "stdout_lines": [" 23:55:12 up 22 days, 10:46, 1 user, load average: 0.20, 0.08, 0.09"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003599", "end": "2025-12-17 23:54:39.686570", "msg": "", "rc": 0, "start": "2025-12-17 23:54:39.682971", "stderr": "", "stderr_lines": [], "stdout": " 23:54:39 up 18 days, 7:56, 0 user, load average: 0.08, 0.06, 0.01", "stdout_lines": [" 23:54:39 up 18 days, 7:56, 0 user, load average: 0.08, 0.06, 0.01"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004877", "end": "2025-12-17 23:55:13.431419", "msg": "", "rc": 0, "start": "2025-12-17 23:55:13.426542", "stderr": "", "stderr_lines": [], "stdout": " 23:55:13 up 3 days, 13:26, 1 user, load average: 0.07, 0.04, 0.05", "stdout_lines": [" 23:55:13 up 3 days, 13:26, 1 user, load average: 0.07, 0.04, 0.05"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003006", "end": "2025-12-17 23:54:42.612352", "msg": "", "rc": 0, "start": "2025-12-17 23:54:42.609346", "stderr": "", "stderr_lines": [], "stdout": " 23:54:42 up 21 days, 2:49, 0 user, load average: 0.36, 0.46, 0.50", "stdout_lines": [" 23:54:42 up 21 days, 2:49, 0 user, load average: 0.36, 0.46, 0.50"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003535", "end": "2025-12-17 23:54:49.390253", "msg": "", "rc": 0, "start": "2025-12-17 23:54:49.386718", "stderr": "", "stderr_lines": [], "stdout": " 23:54:49 up 17 days, 13:10, 0 user, load average: 1.10, 0.50, 0.34", "stdout_lines": [" 23:54:49 up 17 days, 13:10, 0 user, load average: 1.10, 0.50, 0.34"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004048", "end": "2025-12-17 20:55:13.712436", "msg": "", "rc": 0, "start": "2025-12-17 20:55:13.708388", "stderr": "", "stderr_lines": [], "stdout": " 8:55PM up 22 days, 10:45, 1 user, load averages: 0.11, 0.17, 0.17", "stdout_lines": [" 8:55PM up 22 days, 10:45, 1 user, load averages: 0.11, 0.17, 0.17"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019401", "end": "2025-12-17 23:55:13.599766", "msg": "", "rc": 0, "start": "2025-12-17 23:55:13.580365", "stderr": "", "stderr_lines": [], "stdout": " 23:55:13 up 15 days, 13:21, 1 user, load average: 0.21, 0.13, 0.10", "stdout_lines": [" 23:55:13 up 15 days, 13:21, 1 user, load average: 0.21, 0.13, 0.10"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003776", "end": "2025-12-17 23:55:13.871619", "msg": "", "rc": 0, "start": "2025-12-17 23:55:13.867843", "stderr": "", "stderr_lines": [], "stdout": " 23:55:13 up 3 days, 13:26, 1 user, load average: 0.04, 0.10, 0.07", "stdout_lines": [" 23:55:13 up 3 days, 13:26, 1 user, load average: 0.04, 0.10, 0.07"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008938", "end": "2025-12-17 23:55:14.424645", "msg": "", "rc": 0, "start": "2025-12-17 23:55:14.415707", "stderr": "", "stderr_lines": [], "stdout": " 23:55:14 up 4:05, 1 user, load average: 1.02, 1.10, 1.09", "stdout_lines": [" 23:55:14 up 4:05, 1 user, load average: 1.02, 1.10, 1.09"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004123", "end": "2025-12-17 23:55:14.311431", "msg": "", "rc": 0, "start": "2025-12-17 23:55:14.307308", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004282", "end": "2025-12-17 23:55:14.332319", "msg": "", "rc": 0, "start": "2025-12-17 23:55:14.328037", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004798", "end": "2025-12-17 23:55:14.331501", "msg": "", "rc": 0, "start": "2025-12-17 23:55:14.326703", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004916", "end": "2025-12-17 23:55:14.357635", "msg": "", "rc": 0, "start": "2025-12-17 23:55:14.352719", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006001", "end": "2025-12-17 23:55:14.373625", "msg": "", "rc": 0, "start": "2025-12-17 23:55:14.367624", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005403", "end": "2025-12-17 23:54:47.971115", "msg": "", "rc": 0, "start": "2025-12-17 23:54:47.965712", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005909", "end": "2025-12-17 23:54:41.374496", "msg": "", "rc": 0, "start": "2025-12-17 23:54:41.368587", "stderr": "", "stderr_lines": [], "stdout": "24%", "stdout_lines": ["24%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011624", "end": "2025-12-17 23:55:15.062805", "msg": "", "rc": 0, "start": "2025-12-17 23:55:15.051181", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010750", "end": "2025-12-17 23:55:15.123885", "msg": "", "rc": 0, "start": "2025-12-17 23:55:15.113135", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005910", "end": "2025-12-17 23:55:15.356129", "msg": "", "rc": 0, "start": "2025-12-17 23:55:15.350219", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005637", "end": "2025-12-17 23:54:44.590442", "msg": "", "rc": 0, "start": "2025-12-17 23:54:44.584805", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004895", "end": "2025-12-17 23:54:51.312087", "msg": "", "rc": 0, "start": "2025-12-17 23:54:51.307192", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005355", "end": "2025-12-17 20:55:15.612920", "msg": "", "rc": 0, "start": "2025-12-17 20:55:15.607565", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005364", "end": "2025-12-17 23:55:15.793330", "msg": "", "rc": 0, "start": "2025-12-17 23:55:15.787966", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025218", "end": "2025-12-17 23:55:15.725971", "msg": "", "rc": 0, "start": "2025-12-17 23:55:15.700753", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.021107", "end": "2025-12-17 23:55:15.964600", "msg": "", "rc": 0, "start": "2025-12-17 23:55:15.943493", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004251", "end": "2025-12-17 23:55:16.350102", "msg": "", "rc": 0, "start": "2025-12-17 23:55:16.345851", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004119", "end": "2025-12-17 23:55:16.349944", "msg": "", "rc": 0, "start": "2025-12-17 23:55:16.345825", "stderr": "", "stderr_lines": [], "stdout": "78.7%", "stdout_lines": ["78.7%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004941", "end": "2025-12-17 23:55:16.358594", "msg": "", "rc": 0, "start": "2025-12-17 23:55:16.353653", "stderr": "", "stderr_lines": [], "stdout": "49.3%", "stdout_lines": ["49.3%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005133", "end": "2025-12-17 23:55:16.391495", "msg": "", "rc": 0, "start": "2025-12-17 23:55:16.386362", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005789", "end": "2025-12-17 23:55:16.403795", "msg": "", "rc": 0, "start": "2025-12-17 23:55:16.398006", "stderr": "", "stderr_lines": [], "stdout": "60.1%", "stdout_lines": ["60.1%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003820", "end": "2025-12-17 23:54:49.989018", "msg": "", "rc": 0, "start": "2025-12-17 23:54:49.985198", "stderr": "", "stderr_lines": [], "stdout": "70.8%", "stdout_lines": ["70.8%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006790", "end": "2025-12-17 23:54:43.416839", "msg": "", "rc": 0, "start": "2025-12-17 23:54:43.410049", "stderr": "", "stderr_lines": [], "stdout": "69.2%", "stdout_lines": ["69.2%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011036", "end": "2025-12-17 23:55:17.063686", "msg": "", "rc": 0, "start": "2025-12-17 23:55:17.052650", "stderr": "", "stderr_lines": [], "stdout": "7.0%", "stdout_lines": ["7.0%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011854", "end": "2025-12-17 23:55:17.079821", "msg": "", "rc": 0, "start": "2025-12-17 23:55:17.067967", "stderr": "", "stderr_lines": [], "stdout": "13.5%", "stdout_lines": ["13.5%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005883", "end": "2025-12-17 23:55:17.412990", "msg": "", "rc": 0, "start": "2025-12-17 23:55:17.407107", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005731", "end": "2025-12-17 20:55:17.552575", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 20:55:17.546844", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004192", "end": "2025-12-17 23:54:46.620800", "msg": "", "rc": 0, "start": "2025-12-17 23:54:46.616608", "stderr": "", "stderr_lines": [], "stdout": "27.2%", "stdout_lines": ["27.2%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003733", "end": "2025-12-17 23:54:53.304966", "msg": "", "rc": 0, "start": "2025-12-17 23:54:53.301233", "stderr": "", "stderr_lines": [], "stdout": "58.3%", "stdout_lines": ["58.3%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005405", "end": "2025-12-17 23:55:17.856678", "msg": "", "rc": 0, "start": "2025-12-17 23:55:17.851273", "stderr": "", "stderr_lines": [], "stdout": "13.8%", "stdout_lines": ["13.8%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025479", "end": "2025-12-17 23:55:17.754162", "msg": "", "rc": 0, "start": "2025-12-17 23:55:17.728683", "stderr": "", "stderr_lines": [], "stdout": "20.0%", "stdout_lines": ["20.0%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010156", "end": "2025-12-17 23:55:17.970874", "msg": "", "rc": 0, "start": "2025-12-17 23:55:17.960718", "stderr": "", "stderr_lines": [], "stdout": "12.6%", "stdout_lines": ["12.6%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004867", "end": "2025-12-17 23:55:18.319450", "msg": "", "rc": 0, "start": "2025-12-17 23:55:18.314583", "stderr": "", "stderr_lines": [], "stdout": "45.0°C", "stdout_lines": ["45.0°C"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005418", "end": "2025-12-17 23:55:18.326710", "msg": "", "rc": 0, "start": "2025-12-17 23:55:18.321292", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002881", "end": "2025-12-17 23:55:18.368231", "msg": "", "rc": 0, "start": "2025-12-17 23:55:18.365350", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005704", "end": "2025-12-17 23:55:18.398785", "msg": "", "rc": 0, "start": "2025-12-17 23:55:18.393081", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006713", "end": "2025-12-17 23:55:18.398505", "msg": "", "rc": 0, "start": "2025-12-17 23:55:18.391792", "stderr": "", "stderr_lines": [], "stdout": "51.5°C", "stdout_lines": ["51.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002574", "end": "2025-12-17 23:54:51.981758", "msg": "", "rc": 0, "start": "2025-12-17 23:54:51.979184", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003280", "end": "2025-12-17 23:54:45.393185", "msg": "", "rc": 0, "start": "2025-12-17 23:54:45.389905", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011634", "end": "2025-12-17 23:55:19.058624", "msg": "", "rc": 0, "start": "2025-12-17 23:55:19.046990", "stderr": "", "stderr_lines": [], "stdout": "30.2°C", "stdout_lines": ["30.2°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013098", "end": "2025-12-17 23:55:19.112411", "msg": "", "rc": 0, "start": "2025-12-17 23:55:19.099313", "stderr": "", "stderr_lines": [], "stdout": "35.0°C", "stdout_lines": ["35.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003392", "end": "2025-12-17 23:55:19.368029", "msg": "", "rc": 0, "start": "2025-12-17 23:55:19.364637", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003123", "end": "2025-12-17 23:54:48.582502", "msg": "", "rc": 0, "start": "2025-12-17 23:54:48.579379", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002904", "end": "2025-12-17 23:54:55.296732", "msg": "", "rc": 0, "start": "2025-12-17 23:54:55.293828", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004617", "end": "2025-12-17 20:55:19.588753", "msg": "", "rc": 0, "start": "2025-12-17 20:55:19.584136", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003065", "end": "2025-12-17 23:55:19.809899", "msg": "", "rc": 0, "start": "2025-12-17 23:55:19.806834", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004855", "end": "2025-12-17 23:55:19.953561", "msg": "", "rc": 0, "start": "2025-12-17 23:55:19.948706", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028377", "end": "2025-12-17 23:55:19.758518", "msg": "", "rc": 0, "start": "2025-12-17 23:55:19.730141", "stderr": "", "stderr_lines": [], "stdout": "33.9°C", "stdout_lines": ["33.9°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004198", "end": "2025-12-17 23:55:20.306371", "msg": "", "rc": 0, "start": "2025-12-17 23:55:20.302173", "stderr": "", "stderr_lines": [], "stdout": "0.16", "stdout_lines": ["0.16"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.003951", "end": "2025-12-17 23:55:20.317650", "msg": "", "rc": 0, "start": "2025-12-17 23:55:20.313699", "stderr": "", "stderr_lines": [], "stdout": "0.25", "stdout_lines": ["0.25"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005079", "end": "2025-12-17 23:55:20.334088", "msg": "", "rc": 0, "start": "2025-12-17 23:55:20.329009", "stderr": "", "stderr_lines": [], "stdout": "0.95", "stdout_lines": ["0.95"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004983", "end": "2025-12-17 23:55:20.358969", "msg": "", "rc": 0, "start": "2025-12-17 23:55:20.353986", "stderr": "", "stderr_lines": [], "stdout": "0.01", "stdout_lines": ["0.01"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005478", "end": "2025-12-17 23:55:20.367088", "msg": "", "rc": 0, "start": "2025-12-17 23:55:20.361610", "stderr": "", "stderr_lines": [], "stdout": "0.78", "stdout_lines": ["0.78"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004362", "end": "2025-12-17 23:54:53.945717", "msg": "", "rc": 0, "start": "2025-12-17 23:54:53.941355", "stderr": "", "stderr_lines": [], "stdout": "0.19", "stdout_lines": ["0.19"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005080", "end": "2025-12-17 23:54:47.334510", "msg": "", "rc": 0, "start": "2025-12-17 23:54:47.329430", "stderr": "", "stderr_lines": [], "stdout": "0.07", "stdout_lines": ["0.07"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011171", "end": "2025-12-17 23:55:21.054105", "msg": "", "rc": 0, "start": "2025-12-17 23:55:21.042934", "stderr": "", "stderr_lines": [], "stdout": "0.28", "stdout_lines": ["0.28"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010114", "end": "2025-12-17 23:55:21.124722", "msg": "", "rc": 0, "start": "2025-12-17 23:55:21.114608", "stderr": "", "stderr_lines": [], "stdout": "0.16", "stdout_lines": ["0.16"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005525", "end": "2025-12-17 23:55:21.333404", "msg": "", "rc": 0, "start": "2025-12-17 23:55:21.327879", "stderr": "", "stderr_lines": [], "stdout": "0.14", "stdout_lines": ["0.14"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004988", "end": "2025-12-17 23:54:50.537961", "msg": "", "rc": 0, "start": "2025-12-17 23:54:50.532973", "stderr": "", "stderr_lines": [], "stdout": "0.53", "stdout_lines": ["0.53"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004519", "end": "2025-12-17 23:54:57.272439", "msg": "", "rc": 0, "start": "2025-12-17 23:54:57.267920", "stderr": "", "stderr_lines": [], "stdout": "1.02", "stdout_lines": ["1.02"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005902", "end": "2025-12-17 20:55:21.576143", "msg": "", "rc": 0, "start": "2025-12-17 20:55:21.570241", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005248", "end": "2025-12-17 23:55:21.770576", "msg": "", "rc": 0, "start": "2025-12-17 23:55:21.765328", "stderr": "", "stderr_lines": [], "stdout": "0.04", "stdout_lines": ["0.04"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.023748", "end": "2025-12-17 23:55:21.701410", "msg": "", "rc": 0, "start": "2025-12-17 23:55:21.677662", "stderr": "", "stderr_lines": [], "stdout": "0.27", "stdout_lines": ["0.27"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.009330", "end": "2025-12-17 23:55:21.950640", "msg": "", "rc": 0, "start": "2025-12-17 23:55:21.941310", "stderr": "", "stderr_lines": [], "stdout": "1.02", "stdout_lines": ["1.02"]} + +TASK [Display health status] *************************************************** +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:55:12 up 22 days, 10:46, 1 user, load average: 0.20, 0.08, 0.09\nDisk Usage: 23%\nMemory Usage: 78.7%\nCPU Load: 0.16\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:55:12 up 3 days, 13:27, 1 user, load average: 0.27, 0.20, 0.18\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.25\nCPU Temp: 45.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:55:12 up 22 days, 11:06, 1 user, load average: 0.86, 0.79, 0.79\nDisk Usage: 14%\nMemory Usage: 49.3%\nCPU Load: 0.95\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:55:12 up 22 days, 12:19, 1 user, load average: 0.58, 0.58, 0.62\nDisk Usage: 14%\nMemory Usage: 60.1%\nCPU Load: 0.78\nCPU Temp: 51.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:55:12 up 22 days, 13:05, 1 user, load average: 0.02, 0.03, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.01\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:55:13 up 15 days, 13:21, 1 user, load average: 0.21, 0.13, 0.10\nDisk Usage: 21%\nMemory Usage: 20.0%\nCPU Load: 0.27\nCPU Temp: 33.9°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:55:12 up 194 days, 15:28, 1 user, load average: 0.21, 0.18, 0.21\nDisk Usage: 6%\nMemory Usage: 13.5%\nCPU Load: 0.28\nCPU Temp: 35.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:55:12 up 194 days, 15:28, 1 user, load average: 0.09, 0.16, 0.14\nDisk Usage: 3%\nMemory Usage: 7.0%\nCPU Load: 0.16\nCPU Temp: 30.2°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:54:45 up 11 days, 11:44, 0 user, load average: 0.04, 0.10, 0.14\nDisk Usage: 48%\nMemory Usage: 70.8%\nCPU Load: 0.19\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:54:39 up 18 days, 7:56, 0 user, load average: 0.08, 0.06, 0.01\nDisk Usage: 24%\nMemory Usage: 69.2%\nCPU Load: 0.07\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:55:13 up 3 days, 13:26, 1 user, load average: 0.07, 0.04, 0.05\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.14\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:54:42 up 21 days, 2:49, 0 user, load average: 0.36, 0.46, 0.50\nDisk Usage: 28%\nMemory Usage: 27.2%\nCPU Load: 0.53\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:54:49 up 17 days, 13:10, 0 user, load average: 1.10, 0.50, 0.34\nDisk Usage: 76%\nMemory Usage: 58.3%\nCPU Load: 1.02\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 8:55PM up 22 days, 10:45, 1 user, load averages: 0.11, 0.17, 0.17\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:55:13 up 3 days, 13:26, 1 user, load average: 0.04, 0.10, 0.07\nDisk Usage: 79%\nMemory Usage: 13.8%\nCPU Load: 0.04\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 23:55:14 up 4:05, 1 user, load average: 1.02, 1.10, 1.09\nDisk Usage: 1%\nMemory Usage: 12.6%\nCPU Load: 1.02\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-18T04:55:23.045416+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_204524_8f158d_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_204524_8f158d_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..997845d --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_204524_8f158d_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `45139e88f6dd4d258b24166fdd81f1f0` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T20:45:00.000518+00:00 | +| **Fin** | 2025-12-17T20:45:24.459750+00:00 | +| **Durée** | 24.5s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [dev.prod.home] +ok: [hp.truenas.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003595", "end": "2025-12-17 15:45:10.930322", "msg": "", "rc": 0, "start": "2025-12-17 15:45:10.926727", "stderr": "", "stderr_lines": [], "stdout": " 15:45:10 up 22 days, 4:55, 1 user, load average: 0.06, 0.01, 0.00", "stdout_lines": [" 15:45:10 up 22 days, 4:55, 1 user, load average: 0.06, 0.01, 0.00"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003227", "end": "2025-12-17 15:45:10.925904", "msg": "", "rc": 0, "start": "2025-12-17 15:45:10.922677", "stderr": "", "stderr_lines": [], "stdout": " 15:45:10 up 22 days, 2:56, 1 user, load average: 0.43, 0.45, 0.58", "stdout_lines": [" 15:45:10 up 22 days, 2:56, 1 user, load average: 0.43, 0.45, 0.58"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002798", "end": "2025-12-17 15:45:10.955010", "msg": "", "rc": 0, "start": "2025-12-17 15:45:10.952212", "stderr": "", "stderr_lines": [], "stdout": " 15:45:10 up 3 days, 5:17, 1 user, load average: 0.29, 0.18, 0.16", "stdout_lines": [" 15:45:10 up 3 days, 5:17, 1 user, load average: 0.29, 0.18, 0.16"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004121", "end": "2025-12-17 15:45:10.948546", "msg": "", "rc": 0, "start": "2025-12-17 15:45:10.944425", "stderr": "", "stderr_lines": [], "stdout": " 15:45:10 up 22 days, 4:09, 1 user, load average: 0.81, 0.61, 0.57", "stdout_lines": [" 15:45:10 up 22 days, 4:09, 1 user, load average: 0.81, 0.61, 0.57"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003664", "end": "2025-12-17 15:44:45.058414", "msg": "", "rc": 0, "start": "2025-12-17 15:44:45.054750", "stderr": "", "stderr_lines": [], "stdout": " 15:44:45 up 11 days, 3:34, 0 user, load average: 0.00, 0.10, 0.16", "stdout_lines": [" 15:44:45 up 11 days, 3:34, 0 user, load average: 0.00, 0.10, 0.16"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004402", "end": "2025-12-17 15:45:11.915541", "msg": "", "rc": 0, "start": "2025-12-17 15:45:10.911139", "stderr": "", "stderr_lines": [], "stdout": " 15:45:10 up 22 days, 2:36, 1 user, load average: 0.54, 0.43, 0.44", "stdout_lines": [" 15:45:10 up 22 days, 2:36, 1 user, load average: 0.54, 0.43, 0.44"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008504", "end": "2025-12-17 15:45:11.923987", "msg": "", "rc": 0, "start": "2025-12-17 15:45:11.915483", "stderr": "", "stderr_lines": [], "stdout": " 15:45:11 up 194 days, 7:18, 1 user, load average: 0.14, 0.12, 0.09", "stdout_lines": [" 15:45:11 up 194 days, 7:18, 1 user, load average: 0.14, 0.12, 0.09"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009252", "end": "2025-12-17 15:45:11.944914", "msg": "", "rc": 0, "start": "2025-12-17 15:45:11.935662", "stderr": "", "stderr_lines": [], "stdout": " 15:45:11 up 194 days, 7:18, 1 user, load average: 0.29, 0.24, 0.20", "stdout_lines": [" 15:45:11 up 194 days, 7:18, 1 user, load average: 0.29, 0.24, 0.20"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003219", "end": "2025-12-17 15:44:39.278087", "msg": "", "rc": 0, "start": "2025-12-17 15:44:39.274868", "stderr": "", "stderr_lines": [], "stdout": " 15:44:39 up 17 days, 23:46, 0 user, load average: 0.08, 0.04, 0.01", "stdout_lines": [" 15:44:39 up 17 days, 23:46, 0 user, load average: 0.08, 0.04, 0.01"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019665", "end": "2025-12-17 15:45:12.507434", "msg": "", "rc": 0, "start": "2025-12-17 15:45:12.487769", "stderr": "", "stderr_lines": [], "stdout": " 15:45:12 up 15 days, 5:11, 1 user, load average: 0.20, 0.11, 0.10", "stdout_lines": [" 15:45:12 up 15 days, 5:11, 1 user, load average: 0.20, 0.11, 0.10"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004781", "end": "2025-12-17 15:45:12.646717", "msg": "", "rc": 0, "start": "2025-12-17 15:45:12.641936", "stderr": "", "stderr_lines": [], "stdout": " 15:45:12 up 3 days, 5:16, 1 user, load average: 0.11, 0.06, 0.06", "stdout_lines": [" 15:45:12 up 3 days, 5:16, 1 user, load average: 0.11, 0.06, 0.06"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003396", "end": "2025-12-17 15:44:48.823310", "msg": "", "rc": 0, "start": "2025-12-17 15:44:48.819914", "stderr": "", "stderr_lines": [], "stdout": " 15:44:48 up 17 days, 5:00, 0 user, load average: 0.06, 0.09, 0.09", "stdout_lines": [" 15:44:48 up 17 days, 5:00, 0 user, load average: 0.06, 0.09, 0.09"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003183", "end": "2025-12-17 15:44:42.331551", "msg": "", "rc": 0, "start": "2025-12-17 15:44:42.328368", "stderr": "", "stderr_lines": [], "stdout": " 15:44:42 up 20 days, 18:39, 0 user, load average: 0.56, 0.46, 0.45", "stdout_lines": [" 15:44:42 up 20 days, 18:39, 0 user, load average: 0.56, 0.46, 0.45"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.006992", "end": "2025-12-17 15:45:13.751726", "msg": "", "rc": 0, "start": "2025-12-17 15:45:13.744734", "stderr": "", "stderr_lines": [], "stdout": " 15:45:13 up 2:48, 1 user, load average: 2.03, 1.59, 1.44", "stdout_lines": [" 15:45:13 up 2:48, 1 user, load average: 2.03, 1.59, 1.44"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004080", "end": "2025-12-17 12:45:13.112002", "msg": "", "rc": 0, "start": "2025-12-17 12:45:13.107922", "stderr": "", "stderr_lines": [], "stdout": "12:45PM up 22 days, 2:35, 1 user, load averages: 0.26, 0.23, 0.18", "stdout_lines": ["12:45PM up 22 days, 2:35, 1 user, load averages: 0.26, 0.23, 0.18"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003798", "end": "2025-12-17 15:45:13.294741", "msg": "", "rc": 0, "start": "2025-12-17 15:45:13.290943", "stderr": "", "stderr_lines": [], "stdout": " 15:45:13 up 3 days, 5:16, 1 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 15:45:13 up 3 days, 5:16, 1 user, load average: 0.00, 0.00, 0.00"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004255", "end": "2025-12-17 15:45:13.892447", "msg": "", "rc": 0, "start": "2025-12-17 15:45:13.888192", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004664", "end": "2025-12-17 15:45:13.936583", "msg": "", "rc": 0, "start": "2025-12-17 15:45:13.931919", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004148", "end": "2025-12-17 15:45:13.929544", "msg": "", "rc": 0, "start": "2025-12-17 15:45:13.925396", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004944", "end": "2025-12-17 15:45:13.996810", "msg": "", "rc": 0, "start": "2025-12-17 15:45:13.991866", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005703", "end": "2025-12-17 15:45:14.014367", "msg": "", "rc": 0, "start": "2025-12-17 15:45:14.008664", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005380", "end": "2025-12-17 15:44:48.169869", "msg": "", "rc": 0, "start": "2025-12-17 15:44:48.164489", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005645", "end": "2025-12-17 15:44:41.673072", "msg": "", "rc": 0, "start": "2025-12-17 15:44:41.667427", "stderr": "", "stderr_lines": [], "stdout": "24%", "stdout_lines": ["24%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011775", "end": "2025-12-17 15:45:15.219038", "msg": "", "rc": 0, "start": "2025-12-17 15:45:15.207263", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005813", "end": "2025-12-17 15:45:15.414490", "msg": "", "rc": 0, "start": "2025-12-17 15:45:15.408677", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010502", "end": "2025-12-17 15:45:15.469596", "msg": "", "rc": 0, "start": "2025-12-17 15:45:15.459094", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005413", "end": "2025-12-17 15:44:45.076864", "msg": "", "rc": 0, "start": "2025-12-17 15:44:45.071451", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025348", "end": "2025-12-17 15:45:15.599560", "msg": "", "rc": 0, "start": "2025-12-17 15:45:15.574212", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.014812", "end": "2025-12-17 15:45:16.826692", "msg": "", "rc": 0, "start": "2025-12-17 15:45:16.811880", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004748", "end": "2025-12-17 15:44:52.126582", "msg": "", "rc": 0, "start": "2025-12-17 15:44:52.121834", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005499", "end": "2025-12-17 12:45:16.111304", "msg": "", "rc": 0, "start": "2025-12-17 12:45:16.105805", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.007052", "end": "2025-12-17 15:45:16.259163", "msg": "", "rc": 0, "start": "2025-12-17 15:45:16.252111", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004208", "end": "2025-12-17 15:45:16.927812", "msg": "", "rc": 0, "start": "2025-12-17 15:45:16.923604", "stderr": "", "stderr_lines": [], "stdout": "77.5%", "stdout_lines": ["77.5%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004125", "end": "2025-12-17 15:45:16.927727", "msg": "", "rc": 0, "start": "2025-12-17 15:45:16.923602", "stderr": "", "stderr_lines": [], "stdout": "22.5%", "stdout_lines": ["22.5%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004691", "end": "2025-12-17 15:45:16.935389", "msg": "", "rc": 0, "start": "2025-12-17 15:45:16.930698", "stderr": "", "stderr_lines": [], "stdout": "49.3%", "stdout_lines": ["49.3%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005069", "end": "2025-12-17 15:45:16.978445", "msg": "", "rc": 0, "start": "2025-12-17 15:45:16.973376", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005514", "end": "2025-12-17 15:45:16.997542", "msg": "", "rc": 0, "start": "2025-12-17 15:45:16.992028", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004262", "end": "2025-12-17 15:44:51.158134", "msg": "", "rc": 0, "start": "2025-12-17 15:44:51.153872", "stderr": "", "stderr_lines": [], "stdout": "71.3%", "stdout_lines": ["71.3%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004262", "end": "2025-12-17 15:44:44.671871", "msg": "", "rc": 0, "start": "2025-12-17 15:44:44.667609", "stderr": "", "stderr_lines": [], "stdout": "68.4%", "stdout_lines": ["68.4%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011089", "end": "2025-12-17 15:45:17.943673", "msg": "", "rc": 0, "start": "2025-12-17 15:45:17.932584", "stderr": "", "stderr_lines": [], "stdout": "6.7%", "stdout_lines": ["6.7%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011885", "end": "2025-12-17 15:45:17.944835", "msg": "", "rc": 0, "start": "2025-12-17 15:45:17.932950", "stderr": "", "stderr_lines": [], "stdout": "12.9%", "stdout_lines": ["12.9%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005751", "end": "2025-12-17 15:45:18.537995", "msg": "", "rc": 0, "start": "2025-12-17 15:45:18.532244", "stderr": "", "stderr_lines": [], "stdout": "35.3%", "stdout_lines": ["35.3%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005260", "end": "2025-12-17 15:44:48.140516", "msg": "", "rc": 0, "start": "2025-12-17 15:44:48.135256", "stderr": "", "stderr_lines": [], "stdout": "27.2%", "stdout_lines": ["27.2%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025906", "end": "2025-12-17 15:45:18.565979", "msg": "", "rc": 0, "start": "2025-12-17 15:45:18.540073", "stderr": "", "stderr_lines": [], "stdout": "19.2%", "stdout_lines": ["19.2%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005030", "end": "2025-12-17 12:45:18.731453", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 12:45:18.726423", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003839", "end": "2025-12-17 15:44:54.825290", "msg": "", "rc": 0, "start": "2025-12-17 15:44:54.821451", "stderr": "", "stderr_lines": [], "stdout": "57.0%", "stdout_lines": ["57.0%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010776", "end": "2025-12-17 15:45:19.963117", "msg": "", "rc": 0, "start": "2025-12-17 15:45:19.952341", "stderr": "", "stderr_lines": [], "stdout": "21.5%", "stdout_lines": ["21.5%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005681", "end": "2025-12-17 15:45:19.186640", "msg": "", "rc": 0, "start": "2025-12-17 15:45:19.180959", "stderr": "", "stderr_lines": [], "stdout": "13.9%", "stdout_lines": ["13.9%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005359", "end": "2025-12-17 15:45:19.588179", "msg": "", "rc": 0, "start": "2025-12-17 15:45:19.582820", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004806", "end": "2025-12-17 15:45:19.605960", "msg": "", "rc": 0, "start": "2025-12-17 15:45:19.601154", "stderr": "", "stderr_lines": [], "stdout": "47.0°C", "stdout_lines": ["47.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005559", "end": "2025-12-17 15:45:19.613086", "msg": "", "rc": 0, "start": "2025-12-17 15:45:19.607527", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003282", "end": "2025-12-17 15:45:19.635281", "msg": "", "rc": 0, "start": "2025-12-17 15:45:19.631999", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006776", "end": "2025-12-17 15:45:19.639379", "msg": "", "rc": 0, "start": "2025-12-17 15:45:19.632603", "stderr": "", "stderr_lines": [], "stdout": "52.5°C", "stdout_lines": ["52.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002512", "end": "2025-12-17 15:44:53.570923", "msg": "", "rc": 0, "start": "2025-12-17 15:44:53.568411", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003156", "end": "2025-12-17 15:44:47.103355", "msg": "", "rc": 0, "start": "2025-12-17 15:44:47.100199", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.015790", "end": "2025-12-17 15:45:20.366910", "msg": "", "rc": 0, "start": "2025-12-17 15:45:20.351120", "stderr": "", "stderr_lines": [], "stdout": "31.6°C", "stdout_lines": ["31.6°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013082", "end": "2025-12-17 15:45:20.405316", "msg": "", "rc": 0, "start": "2025-12-17 15:45:20.392234", "stderr": "", "stderr_lines": [], "stdout": "37.5°C", "stdout_lines": ["37.5°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003117", "end": "2025-12-17 15:45:20.588890", "msg": "", "rc": 0, "start": "2025-12-17 15:45:20.585773", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004756", "end": "2025-12-17 15:44:50.303807", "msg": "", "rc": 0, "start": "2025-12-17 15:44:50.299051", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002590", "end": "2025-12-17 15:44:56.976865", "msg": "", "rc": 0, "start": "2025-12-17 15:44:56.974275", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003728", "end": "2025-12-17 12:45:20.899539", "msg": "", "rc": 0, "start": "2025-12-17 12:45:20.895811", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028646", "end": "2025-12-17 15:45:21.010288", "msg": "", "rc": 0, "start": "2025-12-17 15:45:20.981642", "stderr": "", "stderr_lines": [], "stdout": "36.0°C", "stdout_lines": ["36.0°C"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003026", "end": "2025-12-17 15:45:21.148303", "msg": "", "rc": 0, "start": "2025-12-17 15:45:21.145277", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004692", "end": "2025-12-17 15:45:22.279384", "msg": "", "rc": 0, "start": "2025-12-17 15:45:22.274692", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004297", "end": "2025-12-17 15:45:21.760405", "msg": "", "rc": 0, "start": "2025-12-17 15:45:21.756108", "stderr": "", "stderr_lines": [], "stdout": "0.61", "stdout_lines": ["0.61"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004038", "end": "2025-12-17 15:45:21.781247", "msg": "", "rc": 0, "start": "2025-12-17 15:45:21.777209", "stderr": "", "stderr_lines": [], "stdout": "0.25", "stdout_lines": ["0.25"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004437", "end": "2025-12-17 15:45:21.824840", "msg": "", "rc": 0, "start": "2025-12-17 15:45:21.820403", "stderr": "", "stderr_lines": [], "stdout": "0.69", "stdout_lines": ["0.69"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006042", "end": "2025-12-17 15:45:21.824515", "msg": "", "rc": 0, "start": "2025-12-17 15:45:21.818473", "stderr": "", "stderr_lines": [], "stdout": "0.05", "stdout_lines": ["0.05"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005431", "end": "2025-12-17 15:45:21.845282", "msg": "", "rc": 0, "start": "2025-12-17 15:45:21.839851", "stderr": "", "stderr_lines": [], "stdout": "0.85", "stdout_lines": ["0.85"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004426", "end": "2025-12-17 15:44:55.936248", "msg": "", "rc": 0, "start": "2025-12-17 15:44:55.931822", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005226", "end": "2025-12-17 15:44:49.482089", "msg": "", "rc": 0, "start": "2025-12-17 15:44:49.476863", "stderr": "", "stderr_lines": [], "stdout": "0.07", "stdout_lines": ["0.07"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010039", "end": "2025-12-17 15:45:22.719996", "msg": "", "rc": 0, "start": "2025-12-17 15:45:22.709957", "stderr": "", "stderr_lines": [], "stdout": "0.12", "stdout_lines": ["0.12"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011409", "end": "2025-12-17 15:45:22.764631", "msg": "", "rc": 0, "start": "2025-12-17 15:45:22.753222", "stderr": "", "stderr_lines": [], "stdout": "0.24", "stdout_lines": ["0.24"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005527", "end": "2025-12-17 15:45:22.945468", "msg": "", "rc": 0, "start": "2025-12-17 15:45:22.939941", "stderr": "", "stderr_lines": [], "stdout": "0.09", "stdout_lines": ["0.09"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005282", "end": "2025-12-17 15:44:52.662632", "msg": "", "rc": 0, "start": "2025-12-17 15:44:52.657350", "stderr": "", "stderr_lines": [], "stdout": "0.63", "stdout_lines": ["0.63"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004390", "end": "2025-12-17 15:44:59.295991", "msg": "", "rc": 0, "start": "2025-12-17 15:44:59.291601", "stderr": "", "stderr_lines": [], "stdout": "0.13", "stdout_lines": ["0.13"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005853", "end": "2025-12-17 12:45:23.232782", "msg": "", "rc": 0, "start": "2025-12-17 12:45:23.226929", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005404", "end": "2025-12-17 15:45:23.369825", "msg": "", "rc": 0, "start": "2025-12-17 15:45:23.364421", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024480", "end": "2025-12-17 15:45:23.355164", "msg": "", "rc": 0, "start": "2025-12-17 15:45:23.330684", "stderr": "", "stderr_lines": [], "stdout": "0.17", "stdout_lines": ["0.17"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.050376", "end": "2025-12-17 15:45:24.686397", "msg": "", "rc": 0, "start": "2025-12-17 15:45:24.636021", "stderr": "", "stderr_lines": [], "stdout": "2.26", "stdout_lines": ["2.26"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:45:10 up 3 days, 5:17, 1 user, load average: 0.29, 0.18, 0.16\nDisk Usage: 22%\nMemory Usage: 22.5%\nCPU Load: 0.25\nCPU Temp: 47.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:45:10 up 22 days, 2:36, 1 user, load average: 0.54, 0.43, 0.44\nDisk Usage: 23%\nMemory Usage: 77.5%\nCPU Load: 0.61\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:45:10 up 22 days, 2:56, 1 user, load average: 0.43, 0.45, 0.58\nDisk Usage: 14%\nMemory Usage: 49.3%\nCPU Load: 0.69\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:45:10 up 22 days, 4:55, 1 user, load average: 0.06, 0.01, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.05\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:45:10 up 22 days, 4:09, 1 user, load average: 0.81, 0.61, 0.57\nDisk Usage: 14%\nMemory Usage: 59.7%\nCPU Load: 0.85\nCPU Temp: 52.5°C\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:45:12 up 15 days, 5:11, 1 user, load average: 0.20, 0.11, 0.10\nDisk Usage: 21%\nMemory Usage: 19.2%\nCPU Load: 0.17\nCPU Temp: 36.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:45:11 up 194 days, 7:18, 1 user, load average: 0.29, 0.24, 0.20\nDisk Usage: 6%\nMemory Usage: 12.9%\nCPU Load: 0.24\nCPU Temp: 37.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:45:11 up 194 days, 7:18, 1 user, load average: 0.14, 0.12, 0.09\nDisk Usage: 3%\nMemory Usage: 6.7%\nCPU Load: 0.12\nCPU Temp: 31.6°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:44:45 up 11 days, 3:34, 0 user, load average: 0.00, 0.10, 0.16\nDisk Usage: 48%\nMemory Usage: 71.3%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:44:39 up 17 days, 23:46, 0 user, load average: 0.08, 0.04, 0.01\nDisk Usage: 24%\nMemory Usage: 68.4%\nCPU Load: 0.07\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:45:12 up 3 days, 5:16, 1 user, load average: 0.11, 0.06, 0.06\nDisk Usage: 1%\nMemory Usage: 35.3%\nCPU Load: 0.09\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:44:42 up 20 days, 18:39, 0 user, load average: 0.56, 0.46, 0.45\nDisk Usage: 28%\nMemory Usage: 27.2%\nCPU Load: 0.63\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:44:48 up 17 days, 5:00, 0 user, load average: 0.06, 0.09, 0.09\nDisk Usage: 76%\nMemory Usage: 57.0%\nCPU Load: 0.13\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 12:45PM up 22 days, 2:35, 1 user, load averages: 0.26, 0.23, 0.18\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:45:13 up 3 days, 5:16, 1 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 79%\nMemory Usage: 13.9%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:45:13 up 2:48, 1 user, load average: 2.03, 1.59, 1.44\nDisk Usage: 1%\nMemory Usage: 21.5%\nCPU Load: 2.26\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T20:45:24.592584+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_205021_7cfd75_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_205021_7cfd75_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..8965fc2 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_205021_7cfd75_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `475b6ef34ffc4ba38376d6bdf7669fd7` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T20:50:00.001366+00:00 | +| **Fin** | 2025-12-17T20:50:21.192920+00:00 | +| **Durée** | 21.2s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003470", "end": "2025-12-17 15:50:10.303738", "msg": "", "rc": 0, "start": "2025-12-17 15:50:10.300268", "stderr": "", "stderr_lines": [], "stdout": " 15:50:10 up 22 days, 2:41, 1 user, load average: 0.30, 0.36, 0.42", "stdout_lines": [" 15:50:10 up 22 days, 2:41, 1 user, load average: 0.30, 0.36, 0.42"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004058", "end": "2025-12-17 15:50:10.314294", "msg": "", "rc": 0, "start": "2025-12-17 15:50:10.310236", "stderr": "", "stderr_lines": [], "stdout": " 15:50:10 up 22 days, 5:00, 1 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 15:50:10 up 22 days, 5:00, 1 user, load average: 0.00, 0.00, 0.00"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003352", "end": "2025-12-17 15:50:10.310629", "msg": "", "rc": 0, "start": "2025-12-17 15:50:10.307277", "stderr": "", "stderr_lines": [], "stdout": " 15:50:10 up 22 days, 3:01, 1 user, load average: 0.77, 0.58, 0.60", "stdout_lines": [" 15:50:10 up 22 days, 3:01, 1 user, load average: 0.77, 0.58, 0.60"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002916", "end": "2025-12-17 15:50:10.341222", "msg": "", "rc": 0, "start": "2025-12-17 15:50:10.338306", "stderr": "", "stderr_lines": [], "stdout": " 15:50:10 up 3 days, 5:22, 1 user, load average: 0.14, 0.13, 0.14", "stdout_lines": [" 15:50:10 up 3 days, 5:22, 1 user, load average: 0.14, 0.13, 0.14"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004065", "end": "2025-12-17 15:50:10.350619", "msg": "", "rc": 0, "start": "2025-12-17 15:50:10.346554", "stderr": "", "stderr_lines": [], "stdout": " 15:50:10 up 22 days, 4:14, 1 user, load average: 0.67, 0.57, 0.56", "stdout_lines": [" 15:50:10 up 22 days, 4:14, 1 user, load average: 0.67, 0.57, 0.56"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003181", "end": "2025-12-17 15:49:44.259373", "msg": "", "rc": 0, "start": "2025-12-17 15:49:44.256192", "stderr": "", "stderr_lines": [], "stdout": " 15:49:44 up 11 days, 3:39, 0 user, load average: 0.24, 0.30, 0.24", "stdout_lines": [" 15:49:44 up 11 days, 3:39, 0 user, load average: 0.24, 0.30, 0.24"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003788", "end": "2025-12-17 15:49:37.823738", "msg": "", "rc": 0, "start": "2025-12-17 15:49:37.819950", "stderr": "", "stderr_lines": [], "stdout": " 15:49:37 up 17 days, 23:51, 0 user, load average: 0.01, 0.02, 0.00", "stdout_lines": [" 15:49:37 up 17 days, 23:51, 0 user, load average: 0.01, 0.02, 0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008413", "end": "2025-12-17 15:50:11.007665", "msg": "", "rc": 0, "start": "2025-12-17 15:50:10.999252", "stderr": "", "stderr_lines": [], "stdout": " 15:50:10 up 194 days, 7:23, 1 user, load average: 0.20, 0.15, 0.10", "stdout_lines": [" 15:50:10 up 194 days, 7:23, 1 user, load average: 0.20, 0.15, 0.10"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009129", "end": "2025-12-17 15:50:11.044013", "msg": "", "rc": 0, "start": "2025-12-17 15:50:11.034884", "stderr": "", "stderr_lines": [], "stdout": " 15:50:11 up 194 days, 7:23, 1 user, load average: 0.30, 0.22, 0.19", "stdout_lines": [" 15:50:11 up 194 days, 7:23, 1 user, load average: 0.30, 0.22, 0.19"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004820", "end": "2025-12-17 15:50:11.280205", "msg": "", "rc": 0, "start": "2025-12-17 15:50:11.275385", "stderr": "", "stderr_lines": [], "stdout": " 15:50:11 up 3 days, 5:21, 1 user, load average: 0.08, 0.04, 0.04", "stdout_lines": [" 15:50:11 up 3 days, 5:21, 1 user, load average: 0.08, 0.04, 0.04"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003381", "end": "2025-12-17 15:49:41.042068", "msg": "", "rc": 0, "start": "2025-12-17 15:49:41.038687", "stderr": "", "stderr_lines": [], "stdout": " 15:49:41 up 20 days, 18:43, 0 user, load average: 0.77, 0.65, 0.54", "stdout_lines": [" 15:49:41 up 20 days, 18:43, 0 user, load average: 0.77, 0.65, 0.54"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004451", "end": "2025-12-17 12:50:11.529538", "msg": "", "rc": 0, "start": "2025-12-17 12:50:11.525087", "stderr": "", "stderr_lines": [], "stdout": "12:50PM up 22 days, 2:39, 1 user, load averages: 0.10, 0.18, 0.16", "stdout_lines": ["12:50PM up 22 days, 2:39, 1 user, load averages: 0.10, 0.18, 0.16"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002716", "end": "2025-12-17 15:49:47.613345", "msg": "", "rc": 0, "start": "2025-12-17 15:49:47.610629", "stderr": "", "stderr_lines": [], "stdout": " 15:49:47 up 17 days, 5:05, 0 user, load average: 0.02, 0.07, 0.08", "stdout_lines": [" 15:49:47 up 17 days, 5:05, 0 user, load average: 0.02, 0.07, 0.08"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004339", "end": "2025-12-17 15:50:11.715627", "msg": "", "rc": 0, "start": "2025-12-17 15:50:11.711288", "stderr": "", "stderr_lines": [], "stdout": " 15:50:11 up 3 days, 5:21, 1 user, load average: 0.01, 0.02, 0.00", "stdout_lines": [" 15:50:11 up 3 days, 5:21, 1 user, load average: 0.01, 0.02, 0.00"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019410", "end": "2025-12-17 15:50:11.704641", "msg": "", "rc": 0, "start": "2025-12-17 15:50:11.685231", "stderr": "", "stderr_lines": [], "stdout": " 15:50:11 up 15 days, 5:16, 1 user, load average: 0.27, 0.16, 0.10", "stdout_lines": [" 15:50:11 up 15 days, 5:16, 1 user, load average: 0.27, 0.16, 0.10"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.006315", "end": "2025-12-17 15:50:13.021491", "msg": "", "rc": 0, "start": "2025-12-17 15:50:13.015176", "stderr": "", "stderr_lines": [], "stdout": " 15:50:13 up 2:54, 1 user, load average: 1.13, 1.31, 1.36", "stdout_lines": [" 15:50:13 up 2:54, 1 user, load average: 1.13, 1.31, 1.36"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004289", "end": "2025-12-17 15:50:12.282131", "msg": "", "rc": 0, "start": "2025-12-17 15:50:12.277842", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004034", "end": "2025-12-17 15:50:12.304758", "msg": "", "rc": 0, "start": "2025-12-17 15:50:12.300724", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004636", "end": "2025-12-17 15:50:12.335011", "msg": "", "rc": 0, "start": "2025-12-17 15:50:12.330375", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004954", "end": "2025-12-17 15:50:12.328866", "msg": "", "rc": 0, "start": "2025-12-17 15:50:12.323912", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005436", "end": "2025-12-17 15:50:12.353618", "msg": "", "rc": 0, "start": "2025-12-17 15:50:12.348182", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004660", "end": "2025-12-17 15:49:46.298223", "msg": "", "rc": 0, "start": "2025-12-17 15:49:46.293563", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005669", "end": "2025-12-17 15:49:39.804469", "msg": "", "rc": 0, "start": "2025-12-17 15:49:39.798800", "stderr": "", "stderr_lines": [], "stdout": "24%", "stdout_lines": ["24%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010631", "end": "2025-12-17 15:50:13.073331", "msg": "", "rc": 0, "start": "2025-12-17 15:50:13.062700", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011547", "end": "2025-12-17 15:50:13.070070", "msg": "", "rc": 0, "start": "2025-12-17 15:50:13.058523", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006289", "end": "2025-12-17 15:50:13.321755", "msg": "", "rc": 0, "start": "2025-12-17 15:50:13.315466", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005520", "end": "2025-12-17 15:49:42.996427", "msg": "", "rc": 0, "start": "2025-12-17 15:49:42.990907", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005317", "end": "2025-12-17 12:50:13.546527", "msg": "", "rc": 0, "start": "2025-12-17 12:50:13.541210", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005232", "end": "2025-12-17 15:49:49.647348", "msg": "", "rc": 0, "start": "2025-12-17 15:49:49.642116", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005561", "end": "2025-12-17 15:50:13.748741", "msg": "", "rc": 0, "start": "2025-12-17 15:50:13.743180", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025238", "end": "2025-12-17 15:50:13.680261", "msg": "", "rc": 0, "start": "2025-12-17 15:50:13.655023", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.030037", "end": "2025-12-17 15:50:13.947358", "msg": "", "rc": 0, "start": "2025-12-17 15:50:13.917321", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004399", "end": "2025-12-17 15:50:14.335344", "msg": "", "rc": 0, "start": "2025-12-17 15:50:14.330945", "stderr": "", "stderr_lines": [], "stdout": "77.3%", "stdout_lines": ["77.3%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004295", "end": "2025-12-17 15:50:14.354651", "msg": "", "rc": 0, "start": "2025-12-17 15:50:14.350356", "stderr": "", "stderr_lines": [], "stdout": "22.5%", "stdout_lines": ["22.5%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004594", "end": "2025-12-17 15:50:14.356433", "msg": "", "rc": 0, "start": "2025-12-17 15:50:14.351839", "stderr": "", "stderr_lines": [], "stdout": "49.2%", "stdout_lines": ["49.2%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004803", "end": "2025-12-17 15:50:14.381348", "msg": "", "rc": 0, "start": "2025-12-17 15:50:14.376545", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005503", "end": "2025-12-17 15:50:14.394945", "msg": "", "rc": 0, "start": "2025-12-17 15:50:14.389442", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004230", "end": "2025-12-17 15:49:48.308698", "msg": "", "rc": 0, "start": "2025-12-17 15:49:48.304468", "stderr": "", "stderr_lines": [], "stdout": "70.6%", "stdout_lines": ["70.6%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004344", "end": "2025-12-17 15:49:41.833367", "msg": "", "rc": 0, "start": "2025-12-17 15:49:41.829023", "stderr": "", "stderr_lines": [], "stdout": "68.4%", "stdout_lines": ["68.4%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011010", "end": "2025-12-17 15:50:15.032618", "msg": "", "rc": 0, "start": "2025-12-17 15:50:15.021608", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011984", "end": "2025-12-17 15:50:15.089626", "msg": "", "rc": 0, "start": "2025-12-17 15:50:15.077642", "stderr": "", "stderr_lines": [], "stdout": "13.1%", "stdout_lines": ["13.1%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006937", "end": "2025-12-17 15:50:15.360153", "msg": "", "rc": 0, "start": "2025-12-17 15:50:15.353216", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004238", "end": "2025-12-17 15:49:45.025348", "msg": "", "rc": 0, "start": "2025-12-17 15:49:45.021110", "stderr": "", "stderr_lines": [], "stdout": "27.2%", "stdout_lines": ["27.2%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004058", "end": "2025-12-17 15:49:51.624286", "msg": "", "rc": 0, "start": "2025-12-17 15:49:51.620228", "stderr": "", "stderr_lines": [], "stdout": "58.4%", "stdout_lines": ["58.4%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005229", "end": "2025-12-17 12:50:15.576430", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 12:50:15.571201", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005373", "end": "2025-12-17 15:50:15.817103", "msg": "", "rc": 0, "start": "2025-12-17 15:50:15.811730", "stderr": "", "stderr_lines": [], "stdout": "13.9%", "stdout_lines": ["13.9%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025880", "end": "2025-12-17 15:50:15.736469", "msg": "", "rc": 0, "start": "2025-12-17 15:50:15.710589", "stderr": "", "stderr_lines": [], "stdout": "19.7%", "stdout_lines": ["19.7%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011615", "end": "2025-12-17 15:50:16.025142", "msg": "", "rc": 0, "start": "2025-12-17 15:50:16.013527", "stderr": "", "stderr_lines": [], "stdout": "21.6%", "stdout_lines": ["21.6%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005426", "end": "2025-12-17 15:50:16.291228", "msg": "", "rc": 0, "start": "2025-12-17 15:50:16.285802", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005146", "end": "2025-12-17 15:50:16.306591", "msg": "", "rc": 0, "start": "2025-12-17 15:50:16.301445", "stderr": "", "stderr_lines": [], "stdout": "47.0°C", "stdout_lines": ["47.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002962", "end": "2025-12-17 15:50:16.340973", "msg": "", "rc": 0, "start": "2025-12-17 15:50:16.338011", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005883", "end": "2025-12-17 15:50:16.336356", "msg": "", "rc": 0, "start": "2025-12-17 15:50:16.330473", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006017", "end": "2025-12-17 15:50:16.371322", "msg": "", "rc": 0, "start": "2025-12-17 15:50:16.365305", "stderr": "", "stderr_lines": [], "stdout": "52.5°C", "stdout_lines": ["52.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002599", "end": "2025-12-17 15:49:50.271251", "msg": "", "rc": 0, "start": "2025-12-17 15:49:50.268652", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003032", "end": "2025-12-17 15:49:43.809227", "msg": "", "rc": 0, "start": "2025-12-17 15:49:43.806195", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011930", "end": "2025-12-17 15:50:17.016420", "msg": "", "rc": 0, "start": "2025-12-17 15:50:17.004490", "stderr": "", "stderr_lines": [], "stdout": "33.1°C", "stdout_lines": ["33.1°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013023", "end": "2025-12-17 15:50:17.038806", "msg": "", "rc": 0, "start": "2025-12-17 15:50:17.025783", "stderr": "", "stderr_lines": [], "stdout": "37.5°C", "stdout_lines": ["37.5°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003176", "end": "2025-12-17 15:50:17.297933", "msg": "", "rc": 0, "start": "2025-12-17 15:50:17.294757", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002723", "end": "2025-12-17 15:49:46.990571", "msg": "", "rc": 0, "start": "2025-12-17 15:49:46.987848", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003880", "end": "2025-12-17 12:50:17.500282", "msg": "", "rc": 0, "start": "2025-12-17 12:50:17.496402", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002527", "end": "2025-12-17 15:49:53.587448", "msg": "", "rc": 0, "start": "2025-12-17 15:49:53.584921", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002873", "end": "2025-12-17 15:50:17.735933", "msg": "", "rc": 0, "start": "2025-12-17 15:50:17.733060", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004472", "end": "2025-12-17 15:50:18.043188", "msg": "", "rc": 0, "start": "2025-12-17 15:50:18.038716", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028492", "end": "2025-12-17 15:50:17.696324", "msg": "", "rc": 0, "start": "2025-12-17 15:50:17.667832", "stderr": "", "stderr_lines": [], "stdout": "36.3°C", "stdout_lines": ["36.3°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004225", "end": "2025-12-17 15:50:18.235210", "msg": "", "rc": 0, "start": "2025-12-17 15:50:18.230985", "stderr": "", "stderr_lines": [], "stdout": "0.34", "stdout_lines": ["0.34"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.003974", "end": "2025-12-17 15:50:18.257148", "msg": "", "rc": 0, "start": "2025-12-17 15:50:18.253174", "stderr": "", "stderr_lines": [], "stdout": "0.20", "stdout_lines": ["0.20"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004640", "end": "2025-12-17 15:50:18.264625", "msg": "", "rc": 0, "start": "2025-12-17 15:50:18.259985", "stderr": "", "stderr_lines": [], "stdout": "0.73", "stdout_lines": ["0.73"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005342", "end": "2025-12-17 15:50:18.306625", "msg": "", "rc": 0, "start": "2025-12-17 15:50:18.301283", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005549", "end": "2025-12-17 15:50:18.320183", "msg": "", "rc": 0, "start": "2025-12-17 15:50:18.314634", "stderr": "", "stderr_lines": [], "stdout": "0.70", "stdout_lines": ["0.70"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004545", "end": "2025-12-17 15:49:52.309309", "msg": "", "rc": 0, "start": "2025-12-17 15:49:52.304764", "stderr": "", "stderr_lines": [], "stdout": "0.22", "stdout_lines": ["0.22"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005177", "end": "2025-12-17 15:49:45.833160", "msg": "", "rc": 0, "start": "2025-12-17 15:49:45.827983", "stderr": "", "stderr_lines": [], "stdout": "0.09", "stdout_lines": ["0.09"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010131", "end": "2025-12-17 15:50:19.102669", "msg": "", "rc": 0, "start": "2025-12-17 15:50:19.092538", "stderr": "", "stderr_lines": [], "stdout": "0.27", "stdout_lines": ["0.27"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011175", "end": "2025-12-17 15:50:19.149261", "msg": "", "rc": 0, "start": "2025-12-17 15:50:19.138086", "stderr": "", "stderr_lines": [], "stdout": "0.28", "stdout_lines": ["0.28"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006192", "end": "2025-12-17 15:50:19.357222", "msg": "", "rc": 0, "start": "2025-12-17 15:50:19.351030", "stderr": "", "stderr_lines": [], "stdout": "0.07", "stdout_lines": ["0.07"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004903", "end": "2025-12-17 15:49:49.028789", "msg": "", "rc": 0, "start": "2025-12-17 15:49:49.023886", "stderr": "", "stderr_lines": [], "stdout": "0.65", "stdout_lines": ["0.65"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004216", "end": "2025-12-17 15:49:55.692762", "msg": "", "rc": 0, "start": "2025-12-17 15:49:55.688546", "stderr": "", "stderr_lines": [], "stdout": "0.09", "stdout_lines": ["0.09"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005687", "end": "2025-12-17 12:50:19.627417", "msg": "", "rc": 0, "start": "2025-12-17 12:50:19.621730", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024185", "end": "2025-12-17 15:50:19.700313", "msg": "", "rc": 0, "start": "2025-12-17 15:50:19.676128", "stderr": "", "stderr_lines": [], "stdout": "0.31", "stdout_lines": ["0.31"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005651", "end": "2025-12-17 15:50:19.825405", "msg": "", "rc": 0, "start": "2025-12-17 15:50:19.819754", "stderr": "", "stderr_lines": [], "stdout": "0.01", "stdout_lines": ["0.01"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010317", "end": "2025-12-17 15:50:20.230925", "msg": "", "rc": 0, "start": "2025-12-17 15:50:20.220608", "stderr": "", "stderr_lines": [], "stdout": "1.36", "stdout_lines": ["1.36"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:50:10 up 3 days, 5:22, 1 user, load average: 0.14, 0.13, 0.14\nDisk Usage: 22%\nMemory Usage: 22.5%\nCPU Load: 0.20\nCPU Temp: 47.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:50:10 up 22 days, 2:41, 1 user, load average: 0.30, 0.36, 0.42\nDisk Usage: 23%\nMemory Usage: 77.3%\nCPU Load: 0.34\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:50:10 up 22 days, 3:01, 1 user, load average: 0.77, 0.58, 0.60\nDisk Usage: 14%\nMemory Usage: 49.2%\nCPU Load: 0.73\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:50:10 up 22 days, 4:14, 1 user, load average: 0.67, 0.57, 0.56\nDisk Usage: 14%\nMemory Usage: 59.7%\nCPU Load: 0.70\nCPU Temp: 52.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:50:10 up 22 days, 5:00, 1 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:50:11 up 15 days, 5:16, 1 user, load average: 0.27, 0.16, 0.10\nDisk Usage: 21%\nMemory Usage: 19.7%\nCPU Load: 0.31\nCPU Temp: 36.3°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:50:11 up 194 days, 7:23, 1 user, load average: 0.30, 0.22, 0.19\nDisk Usage: 6%\nMemory Usage: 13.1%\nCPU Load: 0.28\nCPU Temp: 37.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:50:10 up 194 days, 7:23, 1 user, load average: 0.20, 0.15, 0.10\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.27\nCPU Temp: 33.1°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:49:44 up 11 days, 3:39, 0 user, load average: 0.24, 0.30, 0.24\nDisk Usage: 48%\nMemory Usage: 70.6%\nCPU Load: 0.22\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:49:37 up 17 days, 23:51, 0 user, load average: 0.01, 0.02, 0.00\nDisk Usage: 24%\nMemory Usage: 68.4%\nCPU Load: 0.09\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:50:11 up 3 days, 5:21, 1 user, load average: 0.08, 0.04, 0.04\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.07\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:49:41 up 20 days, 18:43, 0 user, load average: 0.77, 0.65, 0.54\nDisk Usage: 28%\nMemory Usage: 27.2%\nCPU Load: 0.65\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:49:47 up 17 days, 5:05, 0 user, load average: 0.02, 0.07, 0.08\nDisk Usage: 76%\nMemory Usage: 58.4%\nCPU Load: 0.09\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 12:50PM up 22 days, 2:39, 1 user, load averages: 0.10, 0.18, 0.16\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:50:11 up 3 days, 5:21, 1 user, load average: 0.01, 0.02, 0.00\nDisk Usage: 79%\nMemory Usage: 13.9%\nCPU Load: 0.01\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:50:13 up 2:54, 1 user, load average: 1.13, 1.31, 1.36\nDisk Usage: 1%\nMemory Usage: 21.6%\nCPU Load: 1.36\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T20:50:21.242262+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_205521_704592_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_205521_704592_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..cf4a1dd --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_205521_704592_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `ab571dab1bbb41469a766a4c8ed97495` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T20:55:00.004111+00:00 | +| **Fin** | 2025-12-17T20:55:21.099808+00:00 | +| **Durée** | 21.1s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [mimi.pc.home] +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [dev.prod.home] +ok: [hp.truenas.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003234", "end": "2025-12-17 15:55:09.935572", "msg": "", "rc": 0, "start": "2025-12-17 15:55:09.932338", "stderr": "", "stderr_lines": [], "stdout": " 15:55:09 up 22 days, 2:46, 1 user, load average: 0.45, 0.39, 0.41", "stdout_lines": [" 15:55:09 up 22 days, 2:46, 1 user, load average: 0.45, 0.39, 0.41"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003615", "end": "2025-12-17 15:55:09.944653", "msg": "", "rc": 0, "start": "2025-12-17 15:55:09.941038", "stderr": "", "stderr_lines": [], "stdout": " 15:55:09 up 22 days, 3:06, 1 user, load average: 0.68, 0.59, 0.60", "stdout_lines": [" 15:55:09 up 22 days, 3:06, 1 user, load average: 0.68, 0.59, 0.60"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003846", "end": "2025-12-17 15:55:09.951139", "msg": "", "rc": 0, "start": "2025-12-17 15:55:09.947293", "stderr": "", "stderr_lines": [], "stdout": " 15:55:09 up 22 days, 5:05, 1 user, load average: 0.08, 0.02, 0.01", "stdout_lines": [" 15:55:09 up 22 days, 5:05, 1 user, load average: 0.08, 0.02, 0.01"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002855", "end": "2025-12-17 15:55:09.977663", "msg": "", "rc": 0, "start": "2025-12-17 15:55:09.974808", "stderr": "", "stderr_lines": [], "stdout": " 15:55:09 up 3 days, 5:27, 1 user, load average: 0.64, 0.27, 0.18", "stdout_lines": [" 15:55:09 up 3 days, 5:27, 1 user, load average: 0.64, 0.27, 0.18"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003841", "end": "2025-12-17 15:55:09.983657", "msg": "", "rc": 0, "start": "2025-12-17 15:55:09.979816", "stderr": "", "stderr_lines": [], "stdout": " 15:55:09 up 22 days, 4:19, 1 user, load average: 0.59, 0.55, 0.55", "stdout_lines": [" 15:55:09 up 22 days, 4:19, 1 user, load average: 0.59, 0.55, 0.55"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002710", "end": "2025-12-17 15:54:43.880937", "msg": "", "rc": 0, "start": "2025-12-17 15:54:43.878227", "stderr": "", "stderr_lines": [], "stdout": " 15:54:43 up 11 days, 3:44, 0 user, load average: 0.17, 0.20, 0.20", "stdout_lines": [" 15:54:43 up 11 days, 3:44, 0 user, load average: 0.17, 0.20, 0.20"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003712", "end": "2025-12-17 15:54:37.441485", "msg": "", "rc": 0, "start": "2025-12-17 15:54:37.437773", "stderr": "", "stderr_lines": [], "stdout": " 15:54:37 up 17 days, 23:56, 0 user, load average: 0.05, 0.03, 0.00", "stdout_lines": [" 15:54:37 up 17 days, 23:56, 0 user, load average: 0.05, 0.03, 0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008627", "end": "2025-12-17 15:55:10.644644", "msg": "", "rc": 0, "start": "2025-12-17 15:55:10.636017", "stderr": "", "stderr_lines": [], "stdout": " 15:55:10 up 194 days, 7:28, 1 user, load average: 0.33, 0.17, 0.11", "stdout_lines": [" 15:55:10 up 194 days, 7:28, 1 user, load average: 0.33, 0.17, 0.11"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009670", "end": "2025-12-17 15:55:10.686087", "msg": "", "rc": 0, "start": "2025-12-17 15:55:10.676417", "stderr": "", "stderr_lines": [], "stdout": " 15:55:10 up 194 days, 7:28, 1 user, load average: 0.36, 0.29, 0.22", "stdout_lines": [" 15:55:10 up 194 days, 7:28, 1 user, load average: 0.36, 0.29, 0.22"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004843", "end": "2025-12-17 15:55:10.915261", "msg": "", "rc": 0, "start": "2025-12-17 15:55:10.910418", "stderr": "", "stderr_lines": [], "stdout": " 15:55:10 up 3 days, 5:26, 1 user, load average: 0.07, 0.02, 0.02", "stdout_lines": [" 15:55:10 up 3 days, 5:26, 1 user, load average: 0.07, 0.02, 0.02"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003314", "end": "2025-12-17 15:54:40.661756", "msg": "", "rc": 0, "start": "2025-12-17 15:54:40.658442", "stderr": "", "stderr_lines": [], "stdout": " 15:54:40 up 20 days, 18:48, 0 user, load average: 0.23, 0.45, 0.49", "stdout_lines": [" 15:54:40 up 20 days, 18:48, 0 user, load average: 0.23, 0.45, 0.49"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004183", "end": "2025-12-17 12:55:11.152919", "msg": "", "rc": 0, "start": "2025-12-17 12:55:11.148736", "stderr": "", "stderr_lines": [], "stdout": "12:55PM up 22 days, 2:44, 1 user, load averages: 0.28, 0.20, 0.17", "stdout_lines": ["12:55PM up 22 days, 2:44, 1 user, load averages: 0.28, 0.20, 0.17"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002817", "end": "2025-12-17 15:54:47.217706", "msg": "", "rc": 0, "start": "2025-12-17 15:54:47.214889", "stderr": "", "stderr_lines": [], "stdout": " 15:54:47 up 17 days, 5:10, 0 user, load average: 0.25, 0.12, 0.10", "stdout_lines": [" 15:54:47 up 17 days, 5:10, 0 user, load average: 0.25, 0.12, 0.10"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003792", "end": "2025-12-17 15:55:11.352280", "msg": "", "rc": 0, "start": "2025-12-17 15:55:11.348488", "stderr": "", "stderr_lines": [], "stdout": " 15:55:11 up 3 days, 5:26, 1 user, load average: 0.07, 0.02, 0.00", "stdout_lines": [" 15:55:11 up 3 days, 5:26, 1 user, load average: 0.07, 0.02, 0.00"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019427", "end": "2025-12-17 15:55:11.330447", "msg": "", "rc": 0, "start": "2025-12-17 15:55:11.311020", "stderr": "", "stderr_lines": [], "stdout": " 15:55:11 up 15 days, 5:21, 1 user, load average: 0.03, 0.08, 0.08", "stdout_lines": [" 15:55:11 up 15 days, 5:21, 1 user, load average: 0.03, 0.08, 0.08"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.006545", "end": "2025-12-17 15:55:11.941871", "msg": "", "rc": 0, "start": "2025-12-17 15:55:11.935326", "stderr": "", "stderr_lines": [], "stdout": " 15:55:11 up 2:59, 1 user, load average: 1.34, 1.27, 1.33", "stdout_lines": [" 15:55:11 up 2:59, 1 user, load average: 1.34, 1.27, 1.33"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004351", "end": "2025-12-17 15:55:11.907339", "msg": "", "rc": 0, "start": "2025-12-17 15:55:11.902988", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004055", "end": "2025-12-17 15:55:11.918179", "msg": "", "rc": 0, "start": "2025-12-17 15:55:11.914124", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004740", "end": "2025-12-17 15:55:11.915970", "msg": "", "rc": 0, "start": "2025-12-17 15:55:11.911230", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005040", "end": "2025-12-17 15:55:11.966806", "msg": "", "rc": 0, "start": "2025-12-17 15:55:11.961766", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005745", "end": "2025-12-17 15:55:11.977316", "msg": "", "rc": 0, "start": "2025-12-17 15:55:11.971571", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004829", "end": "2025-12-17 15:54:45.870812", "msg": "", "rc": 0, "start": "2025-12-17 15:54:45.865983", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006518", "end": "2025-12-17 15:54:39.421460", "msg": "", "rc": 0, "start": "2025-12-17 15:54:39.414942", "stderr": "", "stderr_lines": [], "stdout": "24%", "stdout_lines": ["24%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010574", "end": "2025-12-17 15:55:12.654293", "msg": "", "rc": 0, "start": "2025-12-17 15:55:12.643719", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011726", "end": "2025-12-17 15:55:12.698898", "msg": "", "rc": 0, "start": "2025-12-17 15:55:12.687172", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005807", "end": "2025-12-17 15:55:12.909714", "msg": "", "rc": 0, "start": "2025-12-17 15:55:12.903907", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005347", "end": "2025-12-17 15:54:42.629948", "msg": "", "rc": 0, "start": "2025-12-17 15:54:42.624601", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005365", "end": "2025-12-17 12:55:13.163626", "msg": "", "rc": 0, "start": "2025-12-17 12:55:13.158261", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005244", "end": "2025-12-17 15:54:49.229634", "msg": "", "rc": 0, "start": "2025-12-17 15:54:49.224390", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005295", "end": "2025-12-17 15:55:13.353864", "msg": "", "rc": 0, "start": "2025-12-17 15:55:13.348569", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025171", "end": "2025-12-17 15:55:13.309522", "msg": "", "rc": 0, "start": "2025-12-17 15:55:13.284351", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010854", "end": "2025-12-17 15:55:13.986086", "msg": "", "rc": 0, "start": "2025-12-17 15:55:13.975232", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004203", "end": "2025-12-17 15:55:13.896830", "msg": "", "rc": 0, "start": "2025-12-17 15:55:13.892627", "stderr": "", "stderr_lines": [], "stdout": "77.4%", "stdout_lines": ["77.4%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004087", "end": "2025-12-17 15:55:13.910736", "msg": "", "rc": 0, "start": "2025-12-17 15:55:13.906649", "stderr": "", "stderr_lines": [], "stdout": "22.5%", "stdout_lines": ["22.5%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005003", "end": "2025-12-17 15:55:13.917044", "msg": "", "rc": 0, "start": "2025-12-17 15:55:13.912041", "stderr": "", "stderr_lines": [], "stdout": "49.2%", "stdout_lines": ["49.2%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004720", "end": "2025-12-17 15:55:13.941694", "msg": "", "rc": 0, "start": "2025-12-17 15:55:13.936974", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005379", "end": "2025-12-17 15:55:13.939398", "msg": "", "rc": 0, "start": "2025-12-17 15:55:13.934019", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003539", "end": "2025-12-17 15:54:47.884849", "msg": "", "rc": 0, "start": "2025-12-17 15:54:47.881310", "stderr": "", "stderr_lines": [], "stdout": "70.8%", "stdout_lines": ["70.8%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004388", "end": "2025-12-17 15:54:41.414016", "msg": "", "rc": 0, "start": "2025-12-17 15:54:41.409628", "stderr": "", "stderr_lines": [], "stdout": "68.4%", "stdout_lines": ["68.4%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011121", "end": "2025-12-17 15:55:14.628010", "msg": "", "rc": 0, "start": "2025-12-17 15:55:14.616889", "stderr": "", "stderr_lines": [], "stdout": "6.9%", "stdout_lines": ["6.9%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012042", "end": "2025-12-17 15:55:14.665068", "msg": "", "rc": 0, "start": "2025-12-17 15:55:14.653026", "stderr": "", "stderr_lines": [], "stdout": "12.7%", "stdout_lines": ["12.7%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005920", "end": "2025-12-17 15:55:14.920379", "msg": "", "rc": 0, "start": "2025-12-17 15:55:14.914459", "stderr": "", "stderr_lines": [], "stdout": "35.4%", "stdout_lines": ["35.4%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005520", "end": "2025-12-17 15:54:44.597102", "msg": "", "rc": 0, "start": "2025-12-17 15:54:44.591582", "stderr": "", "stderr_lines": [], "stdout": "27.3%", "stdout_lines": ["27.3%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005059", "end": "2025-12-17 12:55:15.134769", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 12:55:15.129710", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003574", "end": "2025-12-17 15:54:51.217579", "msg": "", "rc": 0, "start": "2025-12-17 15:54:51.214005", "stderr": "", "stderr_lines": [], "stdout": "58.1%", "stdout_lines": ["58.1%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005418", "end": "2025-12-17 15:55:15.377190", "msg": "", "rc": 0, "start": "2025-12-17 15:55:15.371772", "stderr": "", "stderr_lines": [], "stdout": "14.0%", "stdout_lines": ["14.0%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.015750", "end": "2025-12-17 15:55:16.028799", "msg": "", "rc": 0, "start": "2025-12-17 15:55:16.013049", "stderr": "", "stderr_lines": [], "stdout": "21.7%", "stdout_lines": ["21.7%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.026677", "end": "2025-12-17 15:55:15.341608", "msg": "", "rc": 0, "start": "2025-12-17 15:55:15.314931", "stderr": "", "stderr_lines": [], "stdout": "19.8%", "stdout_lines": ["19.8%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005311", "end": "2025-12-17 15:55:15.883141", "msg": "", "rc": 0, "start": "2025-12-17 15:55:15.877830", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004779", "end": "2025-12-17 15:55:15.914656", "msg": "", "rc": 0, "start": "2025-12-17 15:55:15.909877", "stderr": "", "stderr_lines": [], "stdout": "47.0°C", "stdout_lines": ["47.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005722", "end": "2025-12-17 15:55:15.916290", "msg": "", "rc": 0, "start": "2025-12-17 15:55:15.910568", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003226", "end": "2025-12-17 15:55:15.943373", "msg": "", "rc": 0, "start": "2025-12-17 15:55:15.940147", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006750", "end": "2025-12-17 15:55:15.952731", "msg": "", "rc": 0, "start": "2025-12-17 15:55:15.945981", "stderr": "", "stderr_lines": [], "stdout": "52.5°C", "stdout_lines": ["52.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002584", "end": "2025-12-17 15:54:49.862104", "msg": "", "rc": 0, "start": "2025-12-17 15:54:49.859520", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003354", "end": "2025-12-17 15:54:43.382682", "msg": "", "rc": 0, "start": "2025-12-17 15:54:43.379328", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011810", "end": "2025-12-17 15:55:16.584620", "msg": "", "rc": 0, "start": "2025-12-17 15:55:16.572810", "stderr": "", "stderr_lines": [], "stdout": "32.1°C", "stdout_lines": ["32.1°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013059", "end": "2025-12-17 15:55:16.642987", "msg": "", "rc": 0, "start": "2025-12-17 15:55:16.629928", "stderr": "", "stderr_lines": [], "stdout": "37.5°C", "stdout_lines": ["37.5°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003115", "end": "2025-12-17 15:55:16.887714", "msg": "", "rc": 0, "start": "2025-12-17 15:55:16.884599", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002796", "end": "2025-12-17 15:54:46.557283", "msg": "", "rc": 0, "start": "2025-12-17 15:54:46.554487", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002730", "end": "2025-12-17 15:54:53.153837", "msg": "", "rc": 0, "start": "2025-12-17 15:54:53.151107", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004005", "end": "2025-12-17 12:55:17.102174", "msg": "", "rc": 0, "start": "2025-12-17 12:55:17.098169", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002989", "end": "2025-12-17 15:55:17.324242", "msg": "", "rc": 0, "start": "2025-12-17 15:55:17.321253", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004104", "end": "2025-12-17 15:55:18.068046", "msg": "", "rc": 0, "start": "2025-12-17 15:55:18.063942", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.029003", "end": "2025-12-17 15:55:17.297755", "msg": "", "rc": 0, "start": "2025-12-17 15:55:17.268752", "stderr": "", "stderr_lines": [], "stdout": "35.8°C", "stdout_lines": ["35.8°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004239", "end": "2025-12-17 15:55:17.828741", "msg": "", "rc": 0, "start": "2025-12-17 15:55:17.824502", "stderr": "", "stderr_lines": [], "stdout": "0.49", "stdout_lines": ["0.49"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004144", "end": "2025-12-17 15:55:17.848390", "msg": "", "rc": 0, "start": "2025-12-17 15:55:17.844246", "stderr": "", "stderr_lines": [], "stdout": "0.70", "stdout_lines": ["0.70"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005750", "end": "2025-12-17 15:55:17.890393", "msg": "", "rc": 0, "start": "2025-12-17 15:55:17.884643", "stderr": "", "stderr_lines": [], "stdout": "0.07", "stdout_lines": ["0.07"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004876", "end": "2025-12-17 15:55:17.884760", "msg": "", "rc": 0, "start": "2025-12-17 15:55:17.879884", "stderr": "", "stderr_lines": [], "stdout": "0.57", "stdout_lines": ["0.57"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005593", "end": "2025-12-17 15:55:17.889391", "msg": "", "rc": 0, "start": "2025-12-17 15:55:17.883798", "stderr": "", "stderr_lines": [], "stdout": "0.64", "stdout_lines": ["0.64"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004742", "end": "2025-12-17 15:54:51.813800", "msg": "", "rc": 0, "start": "2025-12-17 15:54:51.809058", "stderr": "", "stderr_lines": [], "stdout": "0.24", "stdout_lines": ["0.24"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004981", "end": "2025-12-17 15:54:45.333656", "msg": "", "rc": 0, "start": "2025-12-17 15:54:45.328675", "stderr": "", "stderr_lines": [], "stdout": "0.04", "stdout_lines": ["0.04"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010240", "end": "2025-12-17 15:55:18.616676", "msg": "", "rc": 0, "start": "2025-12-17 15:55:18.606436", "stderr": "", "stderr_lines": [], "stdout": "0.30", "stdout_lines": ["0.30"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011323", "end": "2025-12-17 15:55:18.635002", "msg": "", "rc": 0, "start": "2025-12-17 15:55:18.623679", "stderr": "", "stderr_lines": [], "stdout": "0.42", "stdout_lines": ["0.42"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005550", "end": "2025-12-17 15:55:18.867781", "msg": "", "rc": 0, "start": "2025-12-17 15:55:18.862231", "stderr": "", "stderr_lines": [], "stdout": "0.06", "stdout_lines": ["0.06"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004658", "end": "2025-12-17 15:54:48.578961", "msg": "", "rc": 0, "start": "2025-12-17 15:54:48.574303", "stderr": "", "stderr_lines": [], "stdout": "0.27", "stdout_lines": ["0.27"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005859", "end": "2025-12-17 12:55:19.148359", "msg": "", "rc": 0, "start": "2025-12-17 12:55:19.142500", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004594", "end": "2025-12-17 15:54:55.241240", "msg": "", "rc": 0, "start": "2025-12-17 15:54:55.236646", "stderr": "", "stderr_lines": [], "stdout": "0.28", "stdout_lines": ["0.28"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005242", "end": "2025-12-17 15:55:19.306259", "msg": "", "rc": 0, "start": "2025-12-17 15:55:19.301017", "stderr": "", "stderr_lines": [], "stdout": "0.14", "stdout_lines": ["0.14"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024236", "end": "2025-12-17 15:55:19.221445", "msg": "", "rc": 0, "start": "2025-12-17 15:55:19.197209", "stderr": "", "stderr_lines": [], "stdout": "0.11", "stdout_lines": ["0.11"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.009568", "end": "2025-12-17 15:55:20.175502", "msg": "", "rc": 0, "start": "2025-12-17 15:55:20.165934", "stderr": "", "stderr_lines": [], "stdout": "1.45", "stdout_lines": ["1.45"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:55:09 up 3 days, 5:27, 1 user, load average: 0.64, 0.27, 0.18\nDisk Usage: 22%\nMemory Usage: 22.5%\nCPU Load: 0.70\nCPU Temp: 47.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:55:09 up 22 days, 2:46, 1 user, load average: 0.45, 0.39, 0.41\nDisk Usage: 23%\nMemory Usage: 77.4%\nCPU Load: 0.49\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:55:09 up 22 days, 3:06, 1 user, load average: 0.68, 0.59, 0.60\nDisk Usage: 14%\nMemory Usage: 49.2%\nCPU Load: 0.57\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:55:09 up 22 days, 4:19, 1 user, load average: 0.59, 0.55, 0.55\nDisk Usage: 14%\nMemory Usage: 59.7%\nCPU Load: 0.64\nCPU Temp: 52.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:55:09 up 22 days, 5:05, 1 user, load average: 0.08, 0.02, 0.01\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.07\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:55:11 up 15 days, 5:21, 1 user, load average: 0.03, 0.08, 0.08\nDisk Usage: 21%\nMemory Usage: 19.8%\nCPU Load: 0.11\nCPU Temp: 35.8°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:55:10 up 194 days, 7:28, 1 user, load average: 0.36, 0.29, 0.22\nDisk Usage: 6%\nMemory Usage: 12.7%\nCPU Load: 0.42\nCPU Temp: 37.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:55:10 up 194 days, 7:28, 1 user, load average: 0.33, 0.17, 0.11\nDisk Usage: 3%\nMemory Usage: 6.9%\nCPU Load: 0.30\nCPU Temp: 32.1°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:54:43 up 11 days, 3:44, 0 user, load average: 0.17, 0.20, 0.20\nDisk Usage: 48%\nMemory Usage: 70.8%\nCPU Load: 0.24\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:54:37 up 17 days, 23:56, 0 user, load average: 0.05, 0.03, 0.00\nDisk Usage: 24%\nMemory Usage: 68.4%\nCPU Load: 0.04\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:55:10 up 3 days, 5:26, 1 user, load average: 0.07, 0.02, 0.02\nDisk Usage: 1%\nMemory Usage: 35.4%\nCPU Load: 0.06\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:54:40 up 20 days, 18:48, 0 user, load average: 0.23, 0.45, 0.49\nDisk Usage: 28%\nMemory Usage: 27.3%\nCPU Load: 0.27\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:54:47 up 17 days, 5:10, 0 user, load average: 0.25, 0.12, 0.10\nDisk Usage: 76%\nMemory Usage: 58.1%\nCPU Load: 0.28\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 12:55PM up 22 days, 2:44, 1 user, load averages: 0.28, 0.20, 0.17\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:55:11 up 3 days, 5:26, 1 user, load average: 0.07, 0.02, 0.00\nDisk Usage: 79%\nMemory Usage: 14.0%\nCPU Load: 0.14\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:55:11 up 2:59, 1 user, load average: 1.34, 1.27, 1.33\nDisk Usage: 1%\nMemory Usage: 21.7%\nCPU Load: 1.45\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T20:55:21.140880+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_210022_7c40f3_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_210022_7c40f3_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..db71878 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_210022_7c40f3_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `630936ea0b41494eace2992b3f87e7cf` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T21:00:00.001495+00:00 | +| **Fin** | 2025-12-17T21:00:22.032346+00:00 | +| **Durée** | 22.0s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [hp2.i7.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003647", "end": "2025-12-17 16:00:11.128592", "msg": "", "rc": 0, "start": "2025-12-17 16:00:11.124945", "stderr": "", "stderr_lines": [], "stdout": " 16:00:11 up 22 days, 5:10, 1 user, load average: 0.08, 0.02, 0.01", "stdout_lines": [" 16:00:11 up 22 days, 5:10, 1 user, load average: 0.08, 0.02, 0.01"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003026", "end": "2025-12-17 16:00:11.149461", "msg": "", "rc": 0, "start": "2025-12-17 16:00:11.146435", "stderr": "", "stderr_lines": [], "stdout": " 16:00:11 up 3 days, 5:32, 1 user, load average: 0.07, 0.17, 0.16", "stdout_lines": [" 16:00:11 up 3 days, 5:32, 1 user, load average: 0.07, 0.17, 0.16"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003858", "end": "2025-12-17 16:00:11.158394", "msg": "", "rc": 0, "start": "2025-12-17 16:00:11.154536", "stderr": "", "stderr_lines": [], "stdout": " 16:00:11 up 22 days, 4:24, 1 user, load average: 0.44, 0.57, 0.56", "stdout_lines": [" 16:00:11 up 22 days, 4:24, 1 user, load average: 0.44, 0.57, 0.56"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008493", "end": "2025-12-17 16:00:11.820614", "msg": "", "rc": 0, "start": "2025-12-17 16:00:11.812121", "stderr": "", "stderr_lines": [], "stdout": " 16:00:11 up 194 days, 7:33, 1 user, load average: 0.15, 0.13, 0.09", "stdout_lines": [" 16:00:11 up 194 days, 7:33, 1 user, load average: 0.15, 0.13, 0.09"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009159", "end": "2025-12-17 16:00:11.847927", "msg": "", "rc": 0, "start": "2025-12-17 16:00:11.838768", "stderr": "", "stderr_lines": [], "stdout": " 16:00:11 up 194 days, 7:33, 1 user, load average: 0.37, 0.32, 0.24", "stdout_lines": [" 16:00:11 up 194 days, 7:33, 1 user, load average: 0.37, 0.32, 0.24"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.003921", "end": "2025-12-17 16:00:12.111278", "msg": "", "rc": 0, "start": "2025-12-17 16:00:11.107357", "stderr": "", "stderr_lines": [], "stdout": " 16:00:11 up 22 days, 2:51, 1 user, load average: 0.19, 0.30, 0.36", "stdout_lines": [" 16:00:11 up 22 days, 2:51, 1 user, load average: 0.19, 0.30, 0.36"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004177", "end": "2025-12-17 16:00:12.117571", "msg": "", "rc": 0, "start": "2025-12-17 16:00:11.113394", "stderr": "", "stderr_lines": [], "stdout": " 16:00:11 up 22 days, 3:11, 1 user, load average: 0.27, 0.52, 0.57", "stdout_lines": [" 16:00:11 up 22 days, 3:11, 1 user, load average: 0.27, 0.52, 0.57"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002806", "end": "2025-12-17 15:59:45.777509", "msg": "", "rc": 0, "start": "2025-12-17 15:59:45.774703", "stderr": "", "stderr_lines": [], "stdout": " 15:59:45 up 11 days, 3:49, 0 user, load average: 0.32, 0.28, 0.22", "stdout_lines": [" 15:59:45 up 11 days, 3:49, 0 user, load average: 0.32, 0.28, 0.22"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004263", "end": "2025-12-17 15:59:39.331509", "msg": "", "rc": 0, "start": "2025-12-17 15:59:39.327246", "stderr": "", "stderr_lines": [], "stdout": " 15:59:39 up 18 days, 1 min, 0 user, load average: 0.00, 0.01, 0.00", "stdout_lines": [" 15:59:39 up 18 days, 1 min, 0 user, load average: 0.00, 0.01, 0.00"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004715", "end": "2025-12-17 16:00:12.581223", "msg": "", "rc": 0, "start": "2025-12-17 16:00:12.576508", "stderr": "", "stderr_lines": [], "stdout": " 16:00:12 up 3 days, 5:31, 1 user, load average: 0.06, 0.09, 0.05", "stdout_lines": [" 16:00:12 up 3 days, 5:31, 1 user, load average: 0.06, 0.09, 0.05"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019736", "end": "2025-12-17 16:00:12.519174", "msg": "", "rc": 0, "start": "2025-12-17 16:00:12.499438", "stderr": "", "stderr_lines": [], "stdout": " 16:00:12 up 15 days, 5:26, 1 user, load average: 0.30, 0.12, 0.10", "stdout_lines": [" 16:00:12 up 15 days, 5:26, 1 user, load average: 0.30, 0.12, 0.10"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003333", "end": "2025-12-17 15:59:42.198950", "msg": "", "rc": 0, "start": "2025-12-17 15:59:42.195617", "stderr": "", "stderr_lines": [], "stdout": " 15:59:42 up 20 days, 18:54, 0 user, load average: 0.28, 0.40, 0.46", "stdout_lines": [" 15:59:42 up 20 days, 18:54, 0 user, load average: 0.28, 0.40, 0.46"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003067", "end": "2025-12-17 15:59:48.852785", "msg": "", "rc": 0, "start": "2025-12-17 15:59:48.849718", "stderr": "", "stderr_lines": [], "stdout": " 15:59:48 up 17 days, 5:15, 0 user, load average: 0.06, 0.10, 0.09", "stdout_lines": [" 15:59:48 up 17 days, 5:15, 0 user, load average: 0.06, 0.10, 0.09"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004151", "end": "2025-12-17 13:00:12.895972", "msg": "", "rc": 0, "start": "2025-12-17 13:00:12.891821", "stderr": "", "stderr_lines": [], "stdout": " 1:00PM up 22 days, 2:50, 1 user, load averages: 0.10, 0.16, 0.16", "stdout_lines": [" 1:00PM up 22 days, 2:50, 1 user, load averages: 0.10, 0.16, 0.16"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.006731", "end": "2025-12-17 16:00:13.934982", "msg": "", "rc": 0, "start": "2025-12-17 16:00:13.928251", "stderr": "", "stderr_lines": [], "stdout": " 16:00:13 up 3:04, 1 user, load average: 1.43, 1.22, 1.28", "stdout_lines": [" 16:00:13 up 3:04, 1 user, load average: 1.43, 1.22, 1.28"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003720", "end": "2025-12-17 16:00:13.018828", "msg": "", "rc": 0, "start": "2025-12-17 16:00:13.015108", "stderr": "", "stderr_lines": [], "stdout": " 16:00:13 up 3 days, 5:31, 1 user, load average: 0.10, 0.07, 0.02", "stdout_lines": [" 16:00:13 up 3 days, 5:31, 1 user, load average: 0.10, 0.07, 0.02"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004157", "end": "2025-12-17 16:00:13.417575", "msg": "", "rc": 0, "start": "2025-12-17 16:00:13.413418", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004661", "end": "2025-12-17 16:00:13.441285", "msg": "", "rc": 0, "start": "2025-12-17 16:00:13.436624", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004241", "end": "2025-12-17 16:00:13.443135", "msg": "", "rc": 0, "start": "2025-12-17 16:00:13.438894", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004743", "end": "2025-12-17 16:00:13.486963", "msg": "", "rc": 0, "start": "2025-12-17 16:00:13.482220", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005686", "end": "2025-12-17 16:00:13.508603", "msg": "", "rc": 0, "start": "2025-12-17 16:00:13.502917", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004936", "end": "2025-12-17 15:59:47.406400", "msg": "", "rc": 0, "start": "2025-12-17 15:59:47.401464", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006151", "end": "2025-12-17 15:59:40.982078", "msg": "", "rc": 0, "start": "2025-12-17 15:59:40.975927", "stderr": "", "stderr_lines": [], "stdout": "24%", "stdout_lines": ["24%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010934", "end": "2025-12-17 16:00:14.178681", "msg": "", "rc": 0, "start": "2025-12-17 16:00:14.167747", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011443", "end": "2025-12-17 16:00:14.245414", "msg": "", "rc": 0, "start": "2025-12-17 16:00:14.233971", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006367", "end": "2025-12-17 16:00:14.443569", "msg": "", "rc": 0, "start": "2025-12-17 16:00:14.437202", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005337", "end": "2025-12-17 15:59:44.204512", "msg": "", "rc": 0, "start": "2025-12-17 15:59:44.199175", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004731", "end": "2025-12-17 15:59:50.812499", "msg": "", "rc": 0, "start": "2025-12-17 15:59:50.807768", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005281", "end": "2025-12-17 13:00:14.808944", "msg": "", "rc": 0, "start": "2025-12-17 13:00:14.803663", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005258", "end": "2025-12-17 16:00:14.901866", "msg": "", "rc": 0, "start": "2025-12-17 16:00:14.896608", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.024972", "end": "2025-12-17 16:00:14.819532", "msg": "", "rc": 0, "start": "2025-12-17 16:00:14.794560", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010536", "end": "2025-12-17 16:00:16.113658", "msg": "", "rc": 0, "start": "2025-12-17 16:00:16.103122", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004336", "end": "2025-12-17 16:00:15.441380", "msg": "", "rc": 0, "start": "2025-12-17 16:00:15.437044", "stderr": "", "stderr_lines": [], "stdout": "77.4%", "stdout_lines": ["77.4%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004153", "end": "2025-12-17 16:00:15.462297", "msg": "", "rc": 0, "start": "2025-12-17 16:00:15.458144", "stderr": "", "stderr_lines": [], "stdout": "22.5%", "stdout_lines": ["22.5%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004927", "end": "2025-12-17 16:00:15.481510", "msg": "", "rc": 0, "start": "2025-12-17 16:00:15.476583", "stderr": "", "stderr_lines": [], "stdout": "49.4%", "stdout_lines": ["49.4%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005111", "end": "2025-12-17 16:00:15.505462", "msg": "", "rc": 0, "start": "2025-12-17 16:00:15.500351", "stderr": "", "stderr_lines": [], "stdout": "9.1%", "stdout_lines": ["9.1%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005658", "end": "2025-12-17 16:00:15.531449", "msg": "", "rc": 0, "start": "2025-12-17 16:00:15.525791", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003693", "end": "2025-12-17 15:59:49.406631", "msg": "", "rc": 0, "start": "2025-12-17 15:59:49.402938", "stderr": "", "stderr_lines": [], "stdout": "70.7%", "stdout_lines": ["70.7%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004419", "end": "2025-12-17 15:59:42.942554", "msg": "", "rc": 0, "start": "2025-12-17 15:59:42.938135", "stderr": "", "stderr_lines": [], "stdout": "68.4%", "stdout_lines": ["68.4%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010955", "end": "2025-12-17 16:00:16.132415", "msg": "", "rc": 0, "start": "2025-12-17 16:00:16.121460", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012089", "end": "2025-12-17 16:00:16.176760", "msg": "", "rc": 0, "start": "2025-12-17 16:00:16.164671", "stderr": "", "stderr_lines": [], "stdout": "13.0%", "stdout_lines": ["13.0%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005965", "end": "2025-12-17 16:00:16.440205", "msg": "", "rc": 0, "start": "2025-12-17 16:00:16.434240", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004281", "end": "2025-12-17 15:59:46.127550", "msg": "", "rc": 0, "start": "2025-12-17 15:59:46.123269", "stderr": "", "stderr_lines": [], "stdout": "27.2%", "stdout_lines": ["27.2%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005098", "end": "2025-12-17 13:00:16.632720", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 13:00:16.627622", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003764", "end": "2025-12-17 15:59:52.702262", "msg": "", "rc": 0, "start": "2025-12-17 15:59:52.698498", "stderr": "", "stderr_lines": [], "stdout": "59.4%", "stdout_lines": ["59.4%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005411", "end": "2025-12-17 16:00:16.869792", "msg": "", "rc": 0, "start": "2025-12-17 16:00:16.864381", "stderr": "", "stderr_lines": [], "stdout": "14.1%", "stdout_lines": ["14.1%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012894", "end": "2025-12-17 16:00:18.085809", "msg": "", "rc": 0, "start": "2025-12-17 16:00:18.072915", "stderr": "", "stderr_lines": [], "stdout": "21.7%", "stdout_lines": ["21.7%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025711", "end": "2025-12-17 16:00:16.825249", "msg": "", "rc": 0, "start": "2025-12-17 16:00:16.799538", "stderr": "", "stderr_lines": [], "stdout": "20.4%", "stdout_lines": ["20.4%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005401", "end": "2025-12-17 16:00:17.351983", "msg": "", "rc": 0, "start": "2025-12-17 16:00:17.346582", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004886", "end": "2025-12-17 16:00:17.367359", "msg": "", "rc": 0, "start": "2025-12-17 16:00:17.362473", "stderr": "", "stderr_lines": [], "stdout": "47.0°C", "stdout_lines": ["47.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005544", "end": "2025-12-17 16:00:17.385580", "msg": "", "rc": 0, "start": "2025-12-17 16:00:17.380036", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003601", "end": "2025-12-17 16:00:17.412513", "msg": "", "rc": 0, "start": "2025-12-17 16:00:17.408912", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006597", "end": "2025-12-17 16:00:17.419466", "msg": "", "rc": 0, "start": "2025-12-17 16:00:17.412869", "stderr": "", "stderr_lines": [], "stdout": "52.5°C", "stdout_lines": ["52.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003346", "end": "2025-12-17 15:59:51.376585", "msg": "", "rc": 0, "start": "2025-12-17 15:59:51.373239", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003256", "end": "2025-12-17 15:59:44.856996", "msg": "", "rc": 0, "start": "2025-12-17 15:59:44.853740", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011845", "end": "2025-12-17 16:00:18.069371", "msg": "", "rc": 0, "start": "2025-12-17 16:00:18.057526", "stderr": "", "stderr_lines": [], "stdout": "32.1°C", "stdout_lines": ["32.1°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013314", "end": "2025-12-17 16:00:18.088403", "msg": "", "rc": 0, "start": "2025-12-17 16:00:18.075089", "stderr": "", "stderr_lines": [], "stdout": "37.5°C", "stdout_lines": ["37.5°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003108", "end": "2025-12-17 16:00:18.416644", "msg": "", "rc": 0, "start": "2025-12-17 16:00:18.413536", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003008", "end": "2025-12-17 15:59:48.051614", "msg": "", "rc": 0, "start": "2025-12-17 15:59:48.048606", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004012", "end": "2025-12-17 13:00:18.562527", "msg": "", "rc": 0, "start": "2025-12-17 13:00:18.558515", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002648", "end": "2025-12-17 15:59:54.647059", "msg": "", "rc": 0, "start": "2025-12-17 15:59:54.644411", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002900", "end": "2025-12-17 16:00:18.873026", "msg": "", "rc": 0, "start": "2025-12-17 16:00:18.870126", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028840", "end": "2025-12-17 16:00:18.769479", "msg": "", "rc": 0, "start": "2025-12-17 16:00:18.740639", "stderr": "", "stderr_lines": [], "stdout": "36.1°C", "stdout_lines": ["36.1°C"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004212", "end": "2025-12-17 16:00:19.131099", "msg": "", "rc": 0, "start": "2025-12-17 16:00:19.126887", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004113", "end": "2025-12-17 16:00:19.509922", "msg": "", "rc": 0, "start": "2025-12-17 16:00:19.505809", "stderr": "", "stderr_lines": [], "stdout": "0.32", "stdout_lines": ["0.32"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004140", "end": "2025-12-17 16:00:19.525417", "msg": "", "rc": 0, "start": "2025-12-17 16:00:19.521277", "stderr": "", "stderr_lines": [], "stdout": "0.06", "stdout_lines": ["0.06"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004792", "end": "2025-12-17 16:00:19.525919", "msg": "", "rc": 0, "start": "2025-12-17 16:00:19.521127", "stderr": "", "stderr_lines": [], "stdout": "0.45", "stdout_lines": ["0.45"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005148", "end": "2025-12-17 16:00:19.554791", "msg": "", "rc": 0, "start": "2025-12-17 16:00:19.549643", "stderr": "", "stderr_lines": [], "stdout": "0.07", "stdout_lines": ["0.07"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005223", "end": "2025-12-17 16:00:19.571922", "msg": "", "rc": 0, "start": "2025-12-17 16:00:19.566699", "stderr": "", "stderr_lines": [], "stdout": "0.56", "stdout_lines": ["0.56"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004357", "end": "2025-12-17 15:59:53.459704", "msg": "", "rc": 0, "start": "2025-12-17 15:59:53.455347", "stderr": "", "stderr_lines": [], "stdout": "0.27", "stdout_lines": ["0.27"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004960", "end": "2025-12-17 15:59:47.002158", "msg": "", "rc": 0, "start": "2025-12-17 15:59:46.997198", "stderr": "", "stderr_lines": [], "stdout": "0.07", "stdout_lines": ["0.07"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011963", "end": "2025-12-17 16:00:20.259975", "msg": "", "rc": 0, "start": "2025-12-17 16:00:20.248012", "stderr": "", "stderr_lines": [], "stdout": "0.54", "stdout_lines": ["0.54"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010185", "end": "2025-12-17 16:00:20.311611", "msg": "", "rc": 0, "start": "2025-12-17 16:00:20.301426", "stderr": "", "stderr_lines": [], "stdout": "0.21", "stdout_lines": ["0.21"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005654", "end": "2025-12-17 16:00:20.498999", "msg": "", "rc": 0, "start": "2025-12-17 16:00:20.493345", "stderr": "", "stderr_lines": [], "stdout": "0.05", "stdout_lines": ["0.05"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004926", "end": "2025-12-17 15:59:50.186762", "msg": "", "rc": 0, "start": "2025-12-17 15:59:50.181836", "stderr": "", "stderr_lines": [], "stdout": "0.31", "stdout_lines": ["0.31"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005862", "end": "2025-12-17 13:00:20.765305", "msg": "", "rc": 0, "start": "2025-12-17 13:00:20.759443", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004424", "end": "2025-12-17 15:59:56.827798", "msg": "", "rc": 0, "start": "2025-12-17 15:59:56.823374", "stderr": "", "stderr_lines": [], "stdout": "0.05", "stdout_lines": ["0.05"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005434", "end": "2025-12-17 16:00:20.940772", "msg": "", "rc": 0, "start": "2025-12-17 16:00:20.935338", "stderr": "", "stderr_lines": [], "stdout": "0.09", "stdout_lines": ["0.09"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.008347", "end": "2025-12-17 16:00:21.132744", "msg": "", "rc": 0, "start": "2025-12-17 16:00:21.124397", "stderr": "", "stderr_lines": [], "stdout": "1.79", "stdout_lines": ["1.79"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024343", "end": "2025-12-17 16:00:20.902215", "msg": "", "rc": 0, "start": "2025-12-17 16:00:20.877872", "stderr": "", "stderr_lines": [], "stdout": "0.40", "stdout_lines": ["0.40"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:00:11 up 3 days, 5:32, 1 user, load average: 0.07, 0.17, 0.16\nDisk Usage: 22%\nMemory Usage: 22.5%\nCPU Load: 0.06\nCPU Temp: 47.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:00:11 up 22 days, 2:51, 1 user, load average: 0.19, 0.30, 0.36\nDisk Usage: 23%\nMemory Usage: 77.4%\nCPU Load: 0.32\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:00:11 up 22 days, 3:11, 1 user, load average: 0.27, 0.52, 0.57\nDisk Usage: 14%\nMemory Usage: 49.4%\nCPU Load: 0.45\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:00:11 up 22 days, 4:24, 1 user, load average: 0.44, 0.57, 0.56\nDisk Usage: 14%\nMemory Usage: 59.7%\nCPU Load: 0.56\nCPU Temp: 52.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:00:11 up 22 days, 5:10, 1 user, load average: 0.08, 0.02, 0.01\nDisk Usage: 9%\nMemory Usage: 9.1%\nCPU Load: 0.07\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:00:12 up 15 days, 5:26, 1 user, load average: 0.30, 0.12, 0.10\nDisk Usage: 21%\nMemory Usage: 20.4%\nCPU Load: 0.40\nCPU Temp: 36.1°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:00:11 up 194 days, 7:33, 1 user, load average: 0.37, 0.32, 0.24\nDisk Usage: 6%\nMemory Usage: 13.0%\nCPU Load: 0.54\nCPU Temp: 37.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:00:11 up 194 days, 7:33, 1 user, load average: 0.15, 0.13, 0.09\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.21\nCPU Temp: 32.1°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:59:45 up 11 days, 3:49, 0 user, load average: 0.32, 0.28, 0.22\nDisk Usage: 48%\nMemory Usage: 70.7%\nCPU Load: 0.27\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:59:39 up 18 days, 1 min, 0 user, load average: 0.00, 0.01, 0.00\nDisk Usage: 24%\nMemory Usage: 68.4%\nCPU Load: 0.07\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:00:12 up 3 days, 5:31, 1 user, load average: 0.06, 0.09, 0.05\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.05\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:59:42 up 20 days, 18:54, 0 user, load average: 0.28, 0.40, 0.46\nDisk Usage: 28%\nMemory Usage: 27.2%\nCPU Load: 0.31\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 15:59:48 up 17 days, 5:15, 0 user, load average: 0.06, 0.10, 0.09\nDisk Usage: 76%\nMemory Usage: 59.4%\nCPU Load: 0.05\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 1:00PM up 22 days, 2:50, 1 user, load averages: 0.10, 0.16, 0.16\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:00:13 up 3 days, 5:31, 1 user, load average: 0.10, 0.07, 0.02\nDisk Usage: 79%\nMemory Usage: 14.1%\nCPU Load: 0.09\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:00:13 up 3:04, 1 user, load average: 1.43, 1.22, 1.28\nDisk Usage: 1%\nMemory Usage: 21.7%\nCPU Load: 1.79\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T21:00:22.088090+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_210520_02511d_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_210520_02511d_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..b1484ea --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_210520_02511d_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `9d3a943ff3c9457aa4e03b9c1dcf9012` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T21:05:00.002043+00:00 | +| **Fin** | 2025-12-17T21:05:20.810451+00:00 | +| **Durée** | 20.8s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003381", "end": "2025-12-17 16:05:10.068529", "msg": "", "rc": 0, "start": "2025-12-17 16:05:10.065148", "stderr": "", "stderr_lines": [], "stdout": " 16:05:10 up 22 days, 2:56, 1 user, load average: 0.25, 0.29, 0.34", "stdout_lines": [" 16:05:10 up 22 days, 2:56, 1 user, load average: 0.25, 0.29, 0.34"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003901", "end": "2025-12-17 16:05:10.081298", "msg": "", "rc": 0, "start": "2025-12-17 16:05:10.077397", "stderr": "", "stderr_lines": [], "stdout": " 16:05:10 up 22 days, 5:15, 1 user, load average: 0.08, 0.02, 0.01", "stdout_lines": [" 16:05:10 up 22 days, 5:15, 1 user, load average: 0.08, 0.02, 0.01"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003346", "end": "2025-12-17 16:05:10.088467", "msg": "", "rc": 0, "start": "2025-12-17 16:05:10.085121", "stderr": "", "stderr_lines": [], "stdout": " 16:05:10 up 22 days, 3:16, 1 user, load average: 0.72, 0.67, 0.63", "stdout_lines": [" 16:05:10 up 22 days, 3:16, 1 user, load average: 0.72, 0.67, 0.63"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002853", "end": "2025-12-17 16:05:10.100682", "msg": "", "rc": 0, "start": "2025-12-17 16:05:10.097829", "stderr": "", "stderr_lines": [], "stdout": " 16:05:10 up 3 days, 5:37, 1 user, load average: 0.39, 0.23, 0.19", "stdout_lines": [" 16:05:10 up 3 days, 5:37, 1 user, load average: 0.39, 0.23, 0.19"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004839", "end": "2025-12-17 16:05:10.118521", "msg": "", "rc": 0, "start": "2025-12-17 16:05:10.113682", "stderr": "", "stderr_lines": [], "stdout": " 16:05:10 up 22 days, 4:29, 1 user, load average: 0.64, 0.60, 0.57", "stdout_lines": [" 16:05:10 up 22 days, 4:29, 1 user, load average: 0.64, 0.60, 0.57"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002815", "end": "2025-12-17 16:04:44.028162", "msg": "", "rc": 0, "start": "2025-12-17 16:04:44.025347", "stderr": "", "stderr_lines": [], "stdout": " 16:04:44 up 11 days, 3:54, 0 user, load average: 0.27, 0.56, 0.38", "stdout_lines": [" 16:04:44 up 11 days, 3:54, 0 user, load average: 0.27, 0.56, 0.38"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003473", "end": "2025-12-17 16:04:37.541841", "msg": "", "rc": 0, "start": "2025-12-17 16:04:37.538368", "stderr": "", "stderr_lines": [], "stdout": " 16:04:37 up 18 days, 6 min, 0 user, load average: 0.14, 0.09, 0.02", "stdout_lines": [" 16:04:37 up 18 days, 6 min, 0 user, load average: 0.14, 0.09, 0.02"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008406", "end": "2025-12-17 16:05:10.781237", "msg": "", "rc": 0, "start": "2025-12-17 16:05:10.772831", "stderr": "", "stderr_lines": [], "stdout": " 16:05:10 up 194 days, 7:38, 1 user, load average: 0.21, 0.17, 0.11", "stdout_lines": [" 16:05:10 up 194 days, 7:38, 1 user, load average: 0.21, 0.17, 0.11"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009861", "end": "2025-12-17 16:05:10.802107", "msg": "", "rc": 0, "start": "2025-12-17 16:05:10.792246", "stderr": "", "stderr_lines": [], "stdout": " 16:05:10 up 194 days, 7:38, 1 user, load average: 0.22, 0.29, 0.26", "stdout_lines": [" 16:05:10 up 194 days, 7:38, 1 user, load average: 0.22, 0.29, 0.26"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004883", "end": "2025-12-17 16:05:11.059644", "msg": "", "rc": 0, "start": "2025-12-17 16:05:11.054761", "stderr": "", "stderr_lines": [], "stdout": " 16:05:11 up 3 days, 5:36, 1 user, load average: 0.01, 0.04, 0.02", "stdout_lines": [" 16:05:11 up 3 days, 5:36, 1 user, load average: 0.01, 0.04, 0.02"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003487", "end": "2025-12-17 16:04:40.746474", "msg": "", "rc": 0, "start": "2025-12-17 16:04:40.742987", "stderr": "", "stderr_lines": [], "stdout": " 16:04:40 up 20 days, 18:58, 0 user, load average: 0.41, 0.38, 0.43", "stdout_lines": [" 16:04:40 up 20 days, 18:58, 0 user, load average: 0.41, 0.38, 0.43"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004201", "end": "2025-12-17 13:05:11.269636", "msg": "", "rc": 0, "start": "2025-12-17 13:05:11.265435", "stderr": "", "stderr_lines": [], "stdout": " 1:05PM up 22 days, 2:54, 1 user, load averages: 0.17, 0.21, 0.17", "stdout_lines": [" 1:05PM up 22 days, 2:54, 1 user, load averages: 0.17, 0.21, 0.17"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003145", "end": "2025-12-17 16:04:47.339000", "msg": "", "rc": 0, "start": "2025-12-17 16:04:47.335855", "stderr": "", "stderr_lines": [], "stdout": " 16:04:47 up 17 days, 5:20, 0 user, load average: 0.03, 0.10, 0.09", "stdout_lines": [" 16:04:47 up 17 days, 5:20, 0 user, load average: 0.03, 0.10, 0.09"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003754", "end": "2025-12-17 16:05:11.501038", "msg": "", "rc": 0, "start": "2025-12-17 16:05:11.497284", "stderr": "", "stderr_lines": [], "stdout": " 16:05:11 up 3 days, 5:36, 1 user, load average: 0.12, 0.05, 0.01", "stdout_lines": [" 16:05:11 up 3 days, 5:36, 1 user, load average: 0.12, 0.05, 0.01"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.006784", "end": "2025-12-17 16:05:11.768713", "msg": "", "rc": 0, "start": "2025-12-17 16:05:11.761929", "stderr": "", "stderr_lines": [], "stdout": " 16:05:11 up 3:09, 1 user, load average: 1.49, 1.30, 1.28", "stdout_lines": [" 16:05:11 up 3:09, 1 user, load average: 1.49, 1.30, 1.28"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019615", "end": "2025-12-17 16:05:11.467615", "msg": "", "rc": 0, "start": "2025-12-17 16:05:11.448000", "stderr": "", "stderr_lines": [], "stdout": " 16:05:11 up 15 days, 5:31, 1 user, load average: 0.16, 0.09, 0.09", "stdout_lines": [" 16:05:11 up 15 days, 5:31, 1 user, load average: 0.16, 0.09, 0.09"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004222", "end": "2025-12-17 16:05:11.980437", "msg": "", "rc": 0, "start": "2025-12-17 16:05:11.976215", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004214", "end": "2025-12-17 16:05:12.012398", "msg": "", "rc": 0, "start": "2025-12-17 16:05:12.008184", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004900", "end": "2025-12-17 16:05:12.049704", "msg": "", "rc": 0, "start": "2025-12-17 16:05:12.044804", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004918", "end": "2025-12-17 16:05:12.053292", "msg": "", "rc": 0, "start": "2025-12-17 16:05:12.048374", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005568", "end": "2025-12-17 16:05:12.061134", "msg": "", "rc": 0, "start": "2025-12-17 16:05:12.055566", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005258", "end": "2025-12-17 16:04:45.964135", "msg": "", "rc": 0, "start": "2025-12-17 16:04:45.958877", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.007791", "end": "2025-12-17 16:04:39.486621", "msg": "", "rc": 0, "start": "2025-12-17 16:04:39.478830", "stderr": "", "stderr_lines": [], "stdout": "24%", "stdout_lines": ["24%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010473", "end": "2025-12-17 16:05:12.772087", "msg": "", "rc": 0, "start": "2025-12-17 16:05:12.761614", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011662", "end": "2025-12-17 16:05:12.764745", "msg": "", "rc": 0, "start": "2025-12-17 16:05:12.753083", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005723", "end": "2025-12-17 16:05:13.003675", "msg": "", "rc": 0, "start": "2025-12-17 16:05:12.997952", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005614", "end": "2025-12-17 16:04:42.707822", "msg": "", "rc": 0, "start": "2025-12-17 16:04:42.702208", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005373", "end": "2025-12-17 13:05:13.241377", "msg": "", "rc": 0, "start": "2025-12-17 13:05:13.236004", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005245", "end": "2025-12-17 16:04:49.339066", "msg": "", "rc": 0, "start": "2025-12-17 16:04:49.333821", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005300", "end": "2025-12-17 16:05:13.436422", "msg": "", "rc": 0, "start": "2025-12-17 16:05:13.431122", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025199", "end": "2025-12-17 16:05:13.367278", "msg": "", "rc": 0, "start": "2025-12-17 16:05:13.342079", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010186", "end": "2025-12-17 16:05:13.833784", "msg": "", "rc": 0, "start": "2025-12-17 16:05:13.823598", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004162", "end": "2025-12-17 16:05:13.939570", "msg": "", "rc": 0, "start": "2025-12-17 16:05:13.935408", "stderr": "", "stderr_lines": [], "stdout": "77.4%", "stdout_lines": ["77.4%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004181", "end": "2025-12-17 16:05:13.956228", "msg": "", "rc": 0, "start": "2025-12-17 16:05:13.952047", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004763", "end": "2025-12-17 16:05:13.958264", "msg": "", "rc": 0, "start": "2025-12-17 16:05:13.953501", "stderr": "", "stderr_lines": [], "stdout": "49.2%", "stdout_lines": ["49.2%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004995", "end": "2025-12-17 16:05:13.988271", "msg": "", "rc": 0, "start": "2025-12-17 16:05:13.983276", "stderr": "", "stderr_lines": [], "stdout": "9.1%", "stdout_lines": ["9.1%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005740", "end": "2025-12-17 16:05:14.018101", "msg": "", "rc": 0, "start": "2025-12-17 16:05:14.012361", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003876", "end": "2025-12-17 16:04:47.896985", "msg": "", "rc": 0, "start": "2025-12-17 16:04:47.893109", "stderr": "", "stderr_lines": [], "stdout": "70.6%", "stdout_lines": ["70.6%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005630", "end": "2025-12-17 16:04:41.458762", "msg": "", "rc": 0, "start": "2025-12-17 16:04:41.453132", "stderr": "", "stderr_lines": [], "stdout": "68.5%", "stdout_lines": ["68.5%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010862", "end": "2025-12-17 16:05:14.630599", "msg": "", "rc": 0, "start": "2025-12-17 16:05:14.619737", "stderr": "", "stderr_lines": [], "stdout": "6.9%", "stdout_lines": ["6.9%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012033", "end": "2025-12-17 16:05:14.666419", "msg": "", "rc": 0, "start": "2025-12-17 16:05:14.654386", "stderr": "", "stderr_lines": [], "stdout": "12.8%", "stdout_lines": ["12.8%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005764", "end": "2025-12-17 16:05:14.955915", "msg": "", "rc": 0, "start": "2025-12-17 16:05:14.950151", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003586", "end": "2025-12-17 16:04:51.185808", "msg": "", "rc": 0, "start": "2025-12-17 16:04:51.182222", "stderr": "", "stderr_lines": [], "stdout": "57.9%", "stdout_lines": ["57.9%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005215", "end": "2025-12-17 13:05:15.135183", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 13:05:15.129968", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004483", "end": "2025-12-17 16:04:44.696492", "msg": "", "rc": 0, "start": "2025-12-17 16:04:44.692009", "stderr": "", "stderr_lines": [], "stdout": "26.9%", "stdout_lines": ["26.9%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005536", "end": "2025-12-17 16:05:15.389025", "msg": "", "rc": 0, "start": "2025-12-17 16:05:15.383489", "stderr": "", "stderr_lines": [], "stdout": "14.1%", "stdout_lines": ["14.1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.026186", "end": "2025-12-17 16:05:15.334377", "msg": "", "rc": 0, "start": "2025-12-17 16:05:15.308191", "stderr": "", "stderr_lines": [], "stdout": "20.6%", "stdout_lines": ["20.6%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010564", "end": "2025-12-17 16:05:15.866246", "msg": "", "rc": 0, "start": "2025-12-17 16:05:15.855682", "stderr": "", "stderr_lines": [], "stdout": "21.8%", "stdout_lines": ["21.8%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005487", "end": "2025-12-17 16:05:15.879473", "msg": "", "rc": 0, "start": "2025-12-17 16:05:15.873986", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004979", "end": "2025-12-17 16:05:15.905908", "msg": "", "rc": 0, "start": "2025-12-17 16:05:15.900929", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003113", "end": "2025-12-17 16:05:15.934437", "msg": "", "rc": 0, "start": "2025-12-17 16:05:15.931324", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006014", "end": "2025-12-17 16:05:15.931138", "msg": "", "rc": 0, "start": "2025-12-17 16:05:15.925124", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006963", "end": "2025-12-17 16:05:15.960744", "msg": "", "rc": 0, "start": "2025-12-17 16:05:15.953781", "stderr": "", "stderr_lines": [], "stdout": "52.5°C", "stdout_lines": ["52.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002813", "end": "2025-12-17 16:04:49.836998", "msg": "", "rc": 0, "start": "2025-12-17 16:04:49.834185", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003367", "end": "2025-12-17 16:04:43.411089", "msg": "", "rc": 0, "start": "2025-12-17 16:04:43.407722", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011732", "end": "2025-12-17 16:05:16.609677", "msg": "", "rc": 0, "start": "2025-12-17 16:05:16.597945", "stderr": "", "stderr_lines": [], "stdout": "32.6°C", "stdout_lines": ["32.6°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012773", "end": "2025-12-17 16:05:16.616449", "msg": "", "rc": 0, "start": "2025-12-17 16:05:16.603676", "stderr": "", "stderr_lines": [], "stdout": "37.5°C", "stdout_lines": ["37.5°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003167", "end": "2025-12-17 16:05:16.849057", "msg": "", "rc": 0, "start": "2025-12-17 16:05:16.845890", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003936", "end": "2025-12-17 13:05:17.086881", "msg": "", "rc": 0, "start": "2025-12-17 13:05:17.082945", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003014", "end": "2025-12-17 16:04:46.597518", "msg": "", "rc": 0, "start": "2025-12-17 16:04:46.594504", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003194", "end": "2025-12-17 16:04:53.171554", "msg": "", "rc": 0, "start": "2025-12-17 16:04:53.168360", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003077", "end": "2025-12-17 16:05:17.275083", "msg": "", "rc": 0, "start": "2025-12-17 16:05:17.272006", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028513", "end": "2025-12-17 16:05:17.274365", "msg": "", "rc": 0, "start": "2025-12-17 16:05:17.245852", "stderr": "", "stderr_lines": [], "stdout": "35.5°C", "stdout_lines": ["35.5°C"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004970", "end": "2025-12-17 16:05:17.899985", "msg": "", "rc": 0, "start": "2025-12-17 16:05:17.895015", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004244", "end": "2025-12-17 16:05:17.845669", "msg": "", "rc": 0, "start": "2025-12-17 16:05:17.841425", "stderr": "", "stderr_lines": [], "stdout": "0.31", "stdout_lines": ["0.31"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004120", "end": "2025-12-17 16:05:17.859236", "msg": "", "rc": 0, "start": "2025-12-17 16:05:17.855116", "stderr": "", "stderr_lines": [], "stdout": "0.41", "stdout_lines": ["0.41"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005520", "end": "2025-12-17 16:05:17.886390", "msg": "", "rc": 0, "start": "2025-12-17 16:05:17.880870", "stderr": "", "stderr_lines": [], "stdout": "0.61", "stdout_lines": ["0.61"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006046", "end": "2025-12-17 16:05:17.896886", "msg": "", "rc": 0, "start": "2025-12-17 16:05:17.890840", "stderr": "", "stderr_lines": [], "stdout": "0.07", "stdout_lines": ["0.07"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005582", "end": "2025-12-17 16:05:17.911456", "msg": "", "rc": 0, "start": "2025-12-17 16:05:17.905874", "stderr": "", "stderr_lines": [], "stdout": "0.77", "stdout_lines": ["0.77"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004835", "end": "2025-12-17 16:04:51.828508", "msg": "", "rc": 0, "start": "2025-12-17 16:04:51.823673", "stderr": "", "stderr_lines": [], "stdout": "0.25", "stdout_lines": ["0.25"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005251", "end": "2025-12-17 16:04:45.334526", "msg": "", "rc": 0, "start": "2025-12-17 16:04:45.329275", "stderr": "", "stderr_lines": [], "stdout": "0.21", "stdout_lines": ["0.21"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011056", "end": "2025-12-17 16:05:18.645157", "msg": "", "rc": 0, "start": "2025-12-17 16:05:18.634101", "stderr": "", "stderr_lines": [], "stdout": "0.20", "stdout_lines": ["0.20"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010123", "end": "2025-12-17 16:05:18.675828", "msg": "", "rc": 0, "start": "2025-12-17 16:05:18.665705", "stderr": "", "stderr_lines": [], "stdout": "0.19", "stdout_lines": ["0.19"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005923", "end": "2025-12-17 16:05:18.867384", "msg": "", "rc": 0, "start": "2025-12-17 16:05:18.861461", "stderr": "", "stderr_lines": [], "stdout": "0.17", "stdout_lines": ["0.17"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004743", "end": "2025-12-17 16:04:48.521120", "msg": "", "rc": 0, "start": "2025-12-17 16:04:48.516377", "stderr": "", "stderr_lines": [], "stdout": "0.46", "stdout_lines": ["0.46"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005822", "end": "2025-12-17 13:05:19.171574", "msg": "", "rc": 0, "start": "2025-12-17 13:05:19.165752", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004237", "end": "2025-12-17 16:04:55.241457", "msg": "", "rc": 0, "start": "2025-12-17 16:04:55.237220", "stderr": "", "stderr_lines": [], "stdout": "0.02", "stdout_lines": ["0.02"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024418", "end": "2025-12-17 16:05:19.241806", "msg": "", "rc": 0, "start": "2025-12-17 16:05:19.217388", "stderr": "", "stderr_lines": [], "stdout": "0.23", "stdout_lines": ["0.23"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005359", "end": "2025-12-17 16:05:19.366811", "msg": "", "rc": 0, "start": "2025-12-17 16:05:19.361452", "stderr": "", "stderr_lines": [], "stdout": "0.11", "stdout_lines": ["0.11"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.009737", "end": "2025-12-17 16:05:19.969963", "msg": "", "rc": 0, "start": "2025-12-17 16:05:19.960226", "stderr": "", "stderr_lines": [], "stdout": "1.85", "stdout_lines": ["1.85"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:05:10 up 3 days, 5:37, 1 user, load average: 0.39, 0.23, 0.19\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.41\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:05:10 up 22 days, 2:56, 1 user, load average: 0.25, 0.29, 0.34\nDisk Usage: 23%\nMemory Usage: 77.4%\nCPU Load: 0.31\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:05:10 up 22 days, 3:16, 1 user, load average: 0.72, 0.67, 0.63\nDisk Usage: 14%\nMemory Usage: 49.2%\nCPU Load: 0.61\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:05:10 up 22 days, 4:29, 1 user, load average: 0.64, 0.60, 0.57\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.77\nCPU Temp: 52.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:05:10 up 22 days, 5:15, 1 user, load average: 0.08, 0.02, 0.01\nDisk Usage: 9%\nMemory Usage: 9.1%\nCPU Load: 0.07\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:05:11 up 15 days, 5:31, 1 user, load average: 0.16, 0.09, 0.09\nDisk Usage: 21%\nMemory Usage: 20.6%\nCPU Load: 0.23\nCPU Temp: 35.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:05:10 up 194 days, 7:38, 1 user, load average: 0.22, 0.29, 0.26\nDisk Usage: 6%\nMemory Usage: 12.8%\nCPU Load: 0.20\nCPU Temp: 37.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:05:10 up 194 days, 7:38, 1 user, load average: 0.21, 0.17, 0.11\nDisk Usage: 3%\nMemory Usage: 6.9%\nCPU Load: 0.19\nCPU Temp: 32.6°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:04:44 up 11 days, 3:54, 0 user, load average: 0.27, 0.56, 0.38\nDisk Usage: 48%\nMemory Usage: 70.6%\nCPU Load: 0.25\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:04:37 up 18 days, 6 min, 0 user, load average: 0.14, 0.09, 0.02\nDisk Usage: 24%\nMemory Usage: 68.5%\nCPU Load: 0.21\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:05:11 up 3 days, 5:36, 1 user, load average: 0.01, 0.04, 0.02\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.17\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:04:40 up 20 days, 18:58, 0 user, load average: 0.41, 0.38, 0.43\nDisk Usage: 28%\nMemory Usage: 26.9%\nCPU Load: 0.46\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:04:47 up 17 days, 5:20, 0 user, load average: 0.03, 0.10, 0.09\nDisk Usage: 76%\nMemory Usage: 57.9%\nCPU Load: 0.02\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 1:05PM up 22 days, 2:54, 1 user, load averages: 0.17, 0.21, 0.17\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:05:11 up 3 days, 5:36, 1 user, load average: 0.12, 0.05, 0.01\nDisk Usage: 79%\nMemory Usage: 14.1%\nCPU Load: 0.11\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:05:11 up 3:09, 1 user, load average: 1.49, 1.30, 1.28\nDisk Usage: 1%\nMemory Usage: 21.8%\nCPU Load: 1.85\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T21:05:20.856830+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_211022_6d6312_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_211022_6d6312_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..df5406f --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_211022_6d6312_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `22983bdd8295444f9fbba66bf90d2b7f` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T21:10:00.001542+00:00 | +| **Fin** | 2025-12-17T21:10:22.559325+00:00 | +| **Durée** | 22.6s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003953", "end": "2025-12-17 16:10:11.187282", "msg": "", "rc": 0, "start": "2025-12-17 16:10:11.183329", "stderr": "", "stderr_lines": [], "stdout": " 16:10:11 up 22 days, 5:20, 1 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 16:10:11 up 22 days, 5:20, 1 user, load average: 0.00, 0.00, 0.00"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003281", "end": "2025-12-17 16:10:11.187146", "msg": "", "rc": 0, "start": "2025-12-17 16:10:11.183865", "stderr": "", "stderr_lines": [], "stdout": " 16:10:11 up 22 days, 3:21, 1 user, load average: 1.11, 0.73, 0.65", "stdout_lines": [" 16:10:11 up 22 days, 3:21, 1 user, load average: 1.11, 0.73, 0.65"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003901", "end": "2025-12-17 16:10:11.203305", "msg": "", "rc": 0, "start": "2025-12-17 16:10:11.199404", "stderr": "", "stderr_lines": [], "stdout": " 16:10:11 up 22 days, 4:34, 1 user, load average: 0.64, 0.58, 0.56", "stdout_lines": [" 16:10:11 up 22 days, 4:34, 1 user, load average: 0.64, 0.58, 0.56"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002892", "end": "2025-12-17 16:10:11.216108", "msg": "", "rc": 0, "start": "2025-12-17 16:10:11.213216", "stderr": "", "stderr_lines": [], "stdout": " 16:10:11 up 3 days, 5:42, 1 user, load average: 0.34, 0.22, 0.19", "stdout_lines": [" 16:10:11 up 3 days, 5:42, 1 user, load average: 0.34, 0.22, 0.19"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002948", "end": "2025-12-17 16:09:45.119671", "msg": "", "rc": 0, "start": "2025-12-17 16:09:45.116723", "stderr": "", "stderr_lines": [], "stdout": " 16:09:45 up 11 days, 3:59, 0 user, load average: 0.13, 0.25, 0.28", "stdout_lines": [" 16:09:45 up 11 days, 3:59, 0 user, load average: 0.13, 0.25, 0.28"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008521", "end": "2025-12-17 16:10:11.870172", "msg": "", "rc": 0, "start": "2025-12-17 16:10:11.861651", "stderr": "", "stderr_lines": [], "stdout": " 16:10:11 up 194 days, 7:43, 1 user, load average: 0.06, 0.15, 0.11", "stdout_lines": [" 16:10:11 up 194 days, 7:43, 1 user, load average: 0.06, 0.15, 0.11"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009244", "end": "2025-12-17 16:10:11.929935", "msg": "", "rc": 0, "start": "2025-12-17 16:10:11.920691", "stderr": "", "stderr_lines": [], "stdout": " 16:10:11 up 194 days, 7:43, 1 user, load average: 0.13, 0.24, 0.25", "stdout_lines": [" 16:10:11 up 194 days, 7:43, 1 user, load average: 0.13, 0.24, 0.25"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004460", "end": "2025-12-17 16:10:12.174029", "msg": "", "rc": 0, "start": "2025-12-17 16:10:11.169569", "stderr": "", "stderr_lines": [], "stdout": " 16:10:11 up 22 days, 3:01, 1 user, load average: 0.19, 0.27, 0.33", "stdout_lines": [" 16:10:11 up 22 days, 3:01, 1 user, load average: 0.19, 0.27, 0.33"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004194", "end": "2025-12-17 16:09:39.100086", "msg": "", "rc": 0, "start": "2025-12-17 16:09:39.095892", "stderr": "", "stderr_lines": [], "stdout": " 16:09:39 up 18 days, 11 min, 0 user, load average: 0.06, 0.08, 0.02", "stdout_lines": [" 16:09:39 up 18 days, 11 min, 0 user, load average: 0.06, 0.08, 0.02"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004898", "end": "2025-12-17 16:10:12.386594", "msg": "", "rc": 0, "start": "2025-12-17 16:10:12.381696", "stderr": "", "stderr_lines": [], "stdout": " 16:10:12 up 3 days, 5:41, 1 user, load average: 0.13, 0.07, 0.03", "stdout_lines": [" 16:10:12 up 3 days, 5:41, 1 user, load average: 0.13, 0.07, 0.03"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003062", "end": "2025-12-17 16:09:42.035781", "msg": "", "rc": 0, "start": "2025-12-17 16:09:42.032719", "stderr": "", "stderr_lines": [], "stdout": " 16:09:42 up 20 days, 19:03, 0 user, load average: 0.46, 0.37, 0.40", "stdout_lines": [" 16:09:42 up 20 days, 19:03, 0 user, load average: 0.46, 0.37, 0.40"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002903", "end": "2025-12-17 16:09:48.689781", "msg": "", "rc": 0, "start": "2025-12-17 16:09:48.686878", "stderr": "", "stderr_lines": [], "stdout": " 16:09:48 up 17 days, 5:25, 0 user, load average: 0.30, 0.18, 0.11", "stdout_lines": [" 16:09:48 up 17 days, 5:25, 0 user, load average: 0.30, 0.18, 0.11"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004152", "end": "2025-12-17 13:10:12.668223", "msg": "", "rc": 0, "start": "2025-12-17 13:10:12.664071", "stderr": "", "stderr_lines": [], "stdout": " 1:10PM up 22 days, 3 hrs, 1 user, load averages: 0.12, 0.17, 0.16", "stdout_lines": [" 1:10PM up 22 days, 3 hrs, 1 user, load averages: 0.12, 0.17, 0.16"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019403", "end": "2025-12-17 16:10:12.575283", "msg": "", "rc": 0, "start": "2025-12-17 16:10:12.555880", "stderr": "", "stderr_lines": [], "stdout": " 16:10:12 up 15 days, 5:36, 1 user, load average: 0.35, 0.18, 0.12", "stdout_lines": [" 16:10:12 up 15 days, 5:36, 1 user, load average: 0.35, 0.18, 0.12"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003624", "end": "2025-12-17 16:10:12.834074", "msg": "", "rc": 0, "start": "2025-12-17 16:10:12.830450", "stderr": "", "stderr_lines": [], "stdout": " 16:10:12 up 3 days, 5:41, 1 user, load average: 0.15, 0.06, 0.01", "stdout_lines": [" 16:10:12 up 3 days, 5:41, 1 user, load average: 0.15, 0.06, 0.01"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.006451", "end": "2025-12-17 16:10:13.595697", "msg": "", "rc": 0, "start": "2025-12-17 16:10:13.589246", "stderr": "", "stderr_lines": [], "stdout": " 16:10:13 up 3:14, 1 user, load average: 1.29, 1.39, 1.34", "stdout_lines": [" 16:10:13 up 3:14, 1 user, load average: 1.29, 1.39, 1.34"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004380", "end": "2025-12-17 16:10:13.244070", "msg": "", "rc": 0, "start": "2025-12-17 16:10:13.239690", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004059", "end": "2025-12-17 16:10:13.272845", "msg": "", "rc": 0, "start": "2025-12-17 16:10:13.268786", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004741", "end": "2025-12-17 16:10:13.296642", "msg": "", "rc": 0, "start": "2025-12-17 16:10:13.291901", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004631", "end": "2025-12-17 16:10:13.300159", "msg": "", "rc": 0, "start": "2025-12-17 16:10:13.295528", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005744", "end": "2025-12-17 16:10:13.315479", "msg": "", "rc": 0, "start": "2025-12-17 16:10:13.309735", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005346", "end": "2025-12-17 16:09:47.202660", "msg": "", "rc": 0, "start": "2025-12-17 16:09:47.197314", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005663", "end": "2025-12-17 16:09:40.721536", "msg": "", "rc": 0, "start": "2025-12-17 16:09:40.715873", "stderr": "", "stderr_lines": [], "stdout": "24%", "stdout_lines": ["24%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010531", "end": "2025-12-17 16:10:14.009145", "msg": "", "rc": 0, "start": "2025-12-17 16:10:13.998614", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011499", "end": "2025-12-17 16:10:14.020180", "msg": "", "rc": 0, "start": "2025-12-17 16:10:14.008681", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006490", "end": "2025-12-17 16:10:14.241493", "msg": "", "rc": 0, "start": "2025-12-17 16:10:14.235003", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005404", "end": "2025-12-17 16:09:43.908103", "msg": "", "rc": 0, "start": "2025-12-17 16:09:43.902699", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005431", "end": "2025-12-17 13:10:14.484474", "msg": "", "rc": 0, "start": "2025-12-17 13:10:14.479043", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004639", "end": "2025-12-17 16:09:50.561093", "msg": "", "rc": 0, "start": "2025-12-17 16:09:50.556454", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005349", "end": "2025-12-17 16:10:14.669953", "msg": "", "rc": 0, "start": "2025-12-17 16:10:14.664604", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.013138", "end": "2025-12-17 16:10:15.553854", "msg": "", "rc": 0, "start": "2025-12-17 16:10:15.540716", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025394", "end": "2025-12-17 16:10:14.644805", "msg": "", "rc": 0, "start": "2025-12-17 16:10:14.619411", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004274", "end": "2025-12-17 16:10:15.216306", "msg": "", "rc": 0, "start": "2025-12-17 16:10:15.212032", "stderr": "", "stderr_lines": [], "stdout": "77.4%", "stdout_lines": ["77.4%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004355", "end": "2025-12-17 16:10:15.223988", "msg": "", "rc": 0, "start": "2025-12-17 16:10:15.219633", "stderr": "", "stderr_lines": [], "stdout": "22.5%", "stdout_lines": ["22.5%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004914", "end": "2025-12-17 16:10:15.264239", "msg": "", "rc": 0, "start": "2025-12-17 16:10:15.259325", "stderr": "", "stderr_lines": [], "stdout": "49.4%", "stdout_lines": ["49.4%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004896", "end": "2025-12-17 16:10:15.279573", "msg": "", "rc": 0, "start": "2025-12-17 16:10:15.274677", "stderr": "", "stderr_lines": [], "stdout": "9.1%", "stdout_lines": ["9.1%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006827", "end": "2025-12-17 16:10:15.315524", "msg": "", "rc": 0, "start": "2025-12-17 16:10:15.308697", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003994", "end": "2025-12-17 16:09:49.179469", "msg": "", "rc": 0, "start": "2025-12-17 16:09:49.175475", "stderr": "", "stderr_lines": [], "stdout": "70.6%", "stdout_lines": ["70.6%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006741", "end": "2025-12-17 16:09:42.755581", "msg": "", "rc": 0, "start": "2025-12-17 16:09:42.748840", "stderr": "", "stderr_lines": [], "stdout": "68.5%", "stdout_lines": ["68.5%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011008", "end": "2025-12-17 16:10:15.929373", "msg": "", "rc": 0, "start": "2025-12-17 16:10:15.918365", "stderr": "", "stderr_lines": [], "stdout": "6.7%", "stdout_lines": ["6.7%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011537", "end": "2025-12-17 16:10:15.937382", "msg": "", "rc": 0, "start": "2025-12-17 16:10:15.925845", "stderr": "", "stderr_lines": [], "stdout": "13.0%", "stdout_lines": ["13.0%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006081", "end": "2025-12-17 16:10:16.214100", "msg": "", "rc": 0, "start": "2025-12-17 16:10:16.208019", "stderr": "", "stderr_lines": [], "stdout": "35.4%", "stdout_lines": ["35.4%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005163", "end": "2025-12-17 13:10:16.401609", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 13:10:16.396446", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003681", "end": "2025-12-17 16:09:52.505833", "msg": "", "rc": 0, "start": "2025-12-17 16:09:52.502152", "stderr": "", "stderr_lines": [], "stdout": "58.3%", "stdout_lines": ["58.3%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011009", "end": "2025-12-17 16:09:45.964209", "msg": "", "rc": 0, "start": "2025-12-17 16:09:45.953200", "stderr": "", "stderr_lines": [], "stdout": "26.7%", "stdout_lines": ["26.7%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005381", "end": "2025-12-17 16:10:16.655930", "msg": "", "rc": 0, "start": "2025-12-17 16:10:16.650549", "stderr": "", "stderr_lines": [], "stdout": "13.8%", "stdout_lines": ["13.8%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.009931", "end": "2025-12-17 16:10:17.628044", "msg": "", "rc": 0, "start": "2025-12-17 16:10:17.618113", "stderr": "", "stderr_lines": [], "stdout": "21.9%", "stdout_lines": ["21.9%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.026237", "end": "2025-12-17 16:10:16.608299", "msg": "", "rc": 0, "start": "2025-12-17 16:10:16.582062", "stderr": "", "stderr_lines": [], "stdout": "19.3%", "stdout_lines": ["19.3%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005494", "end": "2025-12-17 16:10:17.149325", "msg": "", "rc": 0, "start": "2025-12-17 16:10:17.143831", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005996", "end": "2025-12-17 16:10:17.157008", "msg": "", "rc": 0, "start": "2025-12-17 16:10:17.151012", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005029", "end": "2025-12-17 16:10:17.162393", "msg": "", "rc": 0, "start": "2025-12-17 16:10:17.157364", "stderr": "", "stderr_lines": [], "stdout": "47.0°C", "stdout_lines": ["47.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002704", "end": "2025-12-17 16:10:17.185009", "msg": "", "rc": 0, "start": "2025-12-17 16:10:17.182305", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.007891", "end": "2025-12-17 16:10:17.207277", "msg": "", "rc": 0, "start": "2025-12-17 16:10:17.199386", "stderr": "", "stderr_lines": [], "stdout": "53.0°C", "stdout_lines": ["53.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002429", "end": "2025-12-17 16:09:51.084471", "msg": "", "rc": 0, "start": "2025-12-17 16:09:51.082042", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003477", "end": "2025-12-17 16:09:44.670046", "msg": "", "rc": 0, "start": "2025-12-17 16:09:44.666569", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012219", "end": "2025-12-17 16:10:17.840892", "msg": "", "rc": 0, "start": "2025-12-17 16:10:17.828673", "stderr": "", "stderr_lines": [], "stdout": "33.1°C", "stdout_lines": ["33.1°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012904", "end": "2025-12-17 16:10:17.876843", "msg": "", "rc": 0, "start": "2025-12-17 16:10:17.863939", "stderr": "", "stderr_lines": [], "stdout": "36.0°C", "stdout_lines": ["36.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003104", "end": "2025-12-17 16:10:18.118642", "msg": "", "rc": 0, "start": "2025-12-17 16:10:18.115538", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002832", "end": "2025-12-17 16:09:54.405912", "msg": "", "rc": 0, "start": "2025-12-17 16:09:54.403080", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003981", "end": "2025-12-17 13:10:18.355380", "msg": "", "rc": 0, "start": "2025-12-17 13:10:18.351399", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002935", "end": "2025-12-17 16:09:47.878606", "msg": "", "rc": 0, "start": "2025-12-17 16:09:47.875671", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004042", "end": "2025-12-17 16:10:18.552088", "msg": "", "rc": 0, "start": "2025-12-17 16:10:18.548046", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004237", "end": "2025-12-17 16:10:19.641449", "msg": "", "rc": 0, "start": "2025-12-17 16:10:19.637212", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028499", "end": "2025-12-17 16:10:18.556491", "msg": "", "rc": 0, "start": "2025-12-17 16:10:18.527992", "stderr": "", "stderr_lines": [], "stdout": "35.7°C", "stdout_lines": ["35.7°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004125", "end": "2025-12-17 16:10:19.083981", "msg": "", "rc": 0, "start": "2025-12-17 16:10:19.079856", "stderr": "", "stderr_lines": [], "stdout": "0.32", "stdout_lines": ["0.32"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.003929", "end": "2025-12-17 16:10:19.109887", "msg": "", "rc": 0, "start": "2025-12-17 16:10:19.105958", "stderr": "", "stderr_lines": [], "stdout": "0.47", "stdout_lines": ["0.47"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004546", "end": "2025-12-17 16:10:19.116171", "msg": "", "rc": 0, "start": "2025-12-17 16:10:19.111625", "stderr": "", "stderr_lines": [], "stdout": "1.10", "stdout_lines": ["1.10"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005602", "end": "2025-12-17 16:10:19.148762", "msg": "", "rc": 0, "start": "2025-12-17 16:10:19.143160", "stderr": "", "stderr_lines": [], "stdout": "0.67", "stdout_lines": ["0.67"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004994", "end": "2025-12-17 16:10:19.141788", "msg": "", "rc": 0, "start": "2025-12-17 16:10:19.136794", "stderr": "", "stderr_lines": [], "stdout": "0.16", "stdout_lines": ["0.16"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004145", "end": "2025-12-17 16:09:53.163447", "msg": "", "rc": 0, "start": "2025-12-17 16:09:53.159302", "stderr": "", "stderr_lines": [], "stdout": "0.12", "stdout_lines": ["0.12"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005023", "end": "2025-12-17 16:09:46.658972", "msg": "", "rc": 0, "start": "2025-12-17 16:09:46.653949", "stderr": "", "stderr_lines": [], "stdout": "0.14", "stdout_lines": ["0.14"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010147", "end": "2025-12-17 16:10:19.965219", "msg": "", "rc": 0, "start": "2025-12-17 16:10:19.955072", "stderr": "", "stderr_lines": [], "stdout": "0.13", "stdout_lines": ["0.13"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011087", "end": "2025-12-17 16:10:19.995219", "msg": "", "rc": 0, "start": "2025-12-17 16:10:19.984132", "stderr": "", "stderr_lines": [], "stdout": "0.12", "stdout_lines": ["0.12"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006179", "end": "2025-12-17 16:10:20.186372", "msg": "", "rc": 0, "start": "2025-12-17 16:10:20.180193", "stderr": "", "stderr_lines": [], "stdout": "0.12", "stdout_lines": ["0.12"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004949", "end": "2025-12-17 16:09:49.842171", "msg": "", "rc": 0, "start": "2025-12-17 16:09:49.837222", "stderr": "", "stderr_lines": [], "stdout": "0.69", "stdout_lines": ["0.69"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005729", "end": "2025-12-17 13:10:20.469945", "msg": "", "rc": 0, "start": "2025-12-17 13:10:20.464216", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004049", "end": "2025-12-17 16:09:56.532744", "msg": "", "rc": 0, "start": "2025-12-17 16:09:56.528695", "stderr": "", "stderr_lines": [], "stdout": "0.25", "stdout_lines": ["0.25"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005336", "end": "2025-12-17 16:10:20.627663", "msg": "", "rc": 0, "start": "2025-12-17 16:10:20.622327", "stderr": "", "stderr_lines": [], "stdout": "0.13", "stdout_lines": ["0.13"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.009513", "end": "2025-12-17 16:10:21.729704", "msg": "", "rc": 0, "start": "2025-12-17 16:10:21.720191", "stderr": "", "stderr_lines": [], "stdout": "1.63", "stdout_lines": ["1.63"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024297", "end": "2025-12-17 16:10:20.541405", "msg": "", "rc": 0, "start": "2025-12-17 16:10:20.517108", "stderr": "", "stderr_lines": [], "stdout": "0.53", "stdout_lines": ["0.53"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:10:11 up 3 days, 5:42, 1 user, load average: 0.34, 0.22, 0.19\nDisk Usage: 22%\nMemory Usage: 22.5%\nCPU Load: 0.47\nCPU Temp: 47.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:10:11 up 22 days, 3:01, 1 user, load average: 0.19, 0.27, 0.33\nDisk Usage: 23%\nMemory Usage: 77.4%\nCPU Load: 0.32\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:10:11 up 22 days, 3:21, 1 user, load average: 1.11, 0.73, 0.65\nDisk Usage: 14%\nMemory Usage: 49.4%\nCPU Load: 1.10\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:10:11 up 22 days, 4:34, 1 user, load average: 0.64, 0.58, 0.56\nDisk Usage: 14%\nMemory Usage: 59.7%\nCPU Load: 0.67\nCPU Temp: 53.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:10:11 up 22 days, 5:20, 1 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 9%\nMemory Usage: 9.1%\nCPU Load: 0.16\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:10:12 up 15 days, 5:36, 1 user, load average: 0.35, 0.18, 0.12\nDisk Usage: 21%\nMemory Usage: 19.3%\nCPU Load: 0.53\nCPU Temp: 35.7°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:10:11 up 194 days, 7:43, 1 user, load average: 0.13, 0.24, 0.25\nDisk Usage: 6%\nMemory Usage: 13.0%\nCPU Load: 0.12\nCPU Temp: 36.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:10:11 up 194 days, 7:43, 1 user, load average: 0.06, 0.15, 0.11\nDisk Usage: 3%\nMemory Usage: 6.7%\nCPU Load: 0.13\nCPU Temp: 33.1°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:09:45 up 11 days, 3:59, 0 user, load average: 0.13, 0.25, 0.28\nDisk Usage: 48%\nMemory Usage: 70.6%\nCPU Load: 0.12\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:09:39 up 18 days, 11 min, 0 user, load average: 0.06, 0.08, 0.02\nDisk Usage: 24%\nMemory Usage: 68.5%\nCPU Load: 0.14\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:10:12 up 3 days, 5:41, 1 user, load average: 0.13, 0.07, 0.03\nDisk Usage: 1%\nMemory Usage: 35.4%\nCPU Load: 0.12\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:09:42 up 20 days, 19:03, 0 user, load average: 0.46, 0.37, 0.40\nDisk Usage: 28%\nMemory Usage: 26.7%\nCPU Load: 0.69\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:09:48 up 17 days, 5:25, 0 user, load average: 0.30, 0.18, 0.11\nDisk Usage: 76%\nMemory Usage: 58.3%\nCPU Load: 0.25\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 1:10PM up 22 days, 3 hrs, 1 user, load averages: 0.12, 0.17, 0.16\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:10:12 up 3 days, 5:41, 1 user, load average: 0.15, 0.06, 0.01\nDisk Usage: 79%\nMemory Usage: 13.8%\nCPU Load: 0.13\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:10:13 up 3:14, 1 user, load average: 1.29, 1.39, 1.34\nDisk Usage: 1%\nMemory Usage: 21.9%\nCPU Load: 1.63\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T21:10:22.620382+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_211102_6edeae_hp.nas.home_Vérification_de_santé_completed.md b/logs/tasks_logs/2025/12/17/task_211102_6edeae_hp.nas.home_Vérification_de_santé_completed.md new file mode 100644 index 0000000..c028caa --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_211102_6edeae_hp.nas.home_Vérification_de_santé_completed.md @@ -0,0 +1,58 @@ +# ✅ Vérification de santé + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `b53902e8afe3435c8060a99a8b7d71a5` | +| **Nom** | Vérification de santé | +| **Cible** | `hp.nas.home` | +| **Statut** | completed | +| **Type** | Manuel | +| **Progression** | 100% | +| **Début** | 2025-12-17T21:10:50.560117+00:00 | +| **Fin** | 2025-12-17T21:11:02.305211+00:00 | +| **Durée** | 12.9s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002919", "end": "2025-12-17 16:10:57.895837", "msg": "", "rc": 0, "start": "2025-12-17 16:10:57.892918", "stderr": "", "stderr_lines": [], "stdout": " 16:10:57 up 22 days, 3:02, 1 user, load average: 0.29, 0.29, 0.34", "stdout_lines": [" 16:10:57 up 22 days, 3:02, 1 user, load average: 0.29, 0.29, 0.34"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004266", "end": "2025-12-17 16:10:58.580940", "msg": "", "rc": 0, "start": "2025-12-17 16:10:58.576674", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004253", "end": "2025-12-17 16:10:59.287197", "msg": "", "rc": 0, "start": "2025-12-17 16:10:59.282944", "stderr": "", "stderr_lines": [], "stdout": "77.4%", "stdout_lines": ["77.4%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005283", "end": "2025-12-17 16:11:00.403725", "msg": "", "rc": 0, "start": "2025-12-17 16:11:00.398442", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004210", "end": "2025-12-17 16:11:01.119095", "msg": "", "rc": 0, "start": "2025-12-17 16:11:01.114885", "stderr": "", "stderr_lines": [], "stdout": "0.27", "stdout_lines": ["0.27"]} + +TASK [Display health status] *************************************************** +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:10:57 up 22 days, 3:02, 1 user, load average: 0.29, 0.29, 0.34\nDisk Usage: 23%\nMemory Usage: 77.4%\nCPU Load: 0.27\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T21:11:02.364589+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_211531_e20f01_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_211531_e20f01_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..f1fc4b7 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_211531_e20f01_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `c8f936d9ee574a5bbbcd592321191d57` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T21:15:00.000400+00:00 | +| **Fin** | 2025-12-17T21:15:31.422891+00:00 | +| **Durée** | 31.4s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [dev.prod.home] +ok: [hp.truenas.home] +ok: [jump.point.home] +ok: [orangepi.pc.home] +ok: [localhost] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003479", "end": "2025-12-17 16:15:15.163272", "msg": "", "rc": 0, "start": "2025-12-17 16:15:15.159793", "stderr": "", "stderr_lines": [], "stdout": " 16:15:15 up 22 days, 3:06, 1 user, load average: 0.37, 0.35, 0.36", "stdout_lines": [" 16:15:15 up 22 days, 3:06, 1 user, load average: 0.37, 0.35, 0.36"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003350", "end": "2025-12-17 16:15:15.144026", "msg": "", "rc": 0, "start": "2025-12-17 16:15:15.140676", "stderr": "", "stderr_lines": [], "stdout": " 16:15:15 up 22 days, 5:25, 1 user, load average: 0.06, 0.05, 0.01", "stdout_lines": [" 16:15:15 up 22 days, 5:25, 1 user, load average: 0.06, 0.05, 0.01"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002839", "end": "2025-12-17 16:15:15.174636", "msg": "", "rc": 0, "start": "2025-12-17 16:15:15.171797", "stderr": "", "stderr_lines": [], "stdout": " 16:15:15 up 3 days, 5:47, 1 user, load average: 0.47, 0.40, 0.29", "stdout_lines": [" 16:15:15 up 3 days, 5:47, 1 user, load average: 0.47, 0.40, 0.29"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003420", "end": "2025-12-17 16:15:15.167846", "msg": "", "rc": 0, "start": "2025-12-17 16:15:15.164426", "stderr": "", "stderr_lines": [], "stdout": " 16:15:15 up 22 days, 3:26, 1 user, load average: 0.53, 0.77, 0.71", "stdout_lines": [" 16:15:15 up 22 days, 3:26, 1 user, load average: 0.53, 0.77, 0.71"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004115", "end": "2025-12-17 16:15:15.177637", "msg": "", "rc": 0, "start": "2025-12-17 16:15:15.173522", "stderr": "", "stderr_lines": [], "stdout": " 16:15:15 up 22 days, 4:39, 1 user, load average: 0.47, 0.57, 0.55", "stdout_lines": [" 16:15:15 up 22 days, 4:39, 1 user, load average: 0.47, 0.57, 0.55"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002836", "end": "2025-12-17 16:14:49.361149", "msg": "", "rc": 0, "start": "2025-12-17 16:14:49.358313", "stderr": "", "stderr_lines": [], "stdout": " 16:14:49 up 11 days, 4:04, 0 user, load average: 0.14, 0.18, 0.24", "stdout_lines": [" 16:14:49 up 11 days, 4:04, 0 user, load average: 0.14, 0.18, 0.24"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003331", "end": "2025-12-17 16:14:42.908123", "msg": "", "rc": 0, "start": "2025-12-17 16:14:42.904792", "stderr": "", "stderr_lines": [], "stdout": " 16:14:42 up 18 days, 16 min, 0 user, load average: 0.00, 0.03, 0.00", "stdout_lines": [" 16:14:42 up 18 days, 16 min, 0 user, load average: 0.00, 0.03, 0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008542", "end": "2025-12-17 16:15:16.107107", "msg": "", "rc": 0, "start": "2025-12-17 16:15:16.098565", "stderr": "", "stderr_lines": [], "stdout": " 16:15:16 up 194 days, 7:48, 1 user, load average: 0.13, 0.14, 0.10", "stdout_lines": [" 16:15:16 up 194 days, 7:48, 1 user, load average: 0.13, 0.14, 0.10"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009222", "end": "2025-12-17 16:15:16.157076", "msg": "", "rc": 0, "start": "2025-12-17 16:15:16.147854", "stderr": "", "stderr_lines": [], "stdout": " 16:15:16 up 194 days, 7:48, 1 user, load average: 0.37, 0.26, 0.25", "stdout_lines": [" 16:15:16 up 194 days, 7:48, 1 user, load average: 0.37, 0.26, 0.25"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004877", "end": "2025-12-17 16:15:16.488964", "msg": "", "rc": 0, "start": "2025-12-17 16:15:16.484087", "stderr": "", "stderr_lines": [], "stdout": " 16:15:16 up 3 days, 5:46, 1 user, load average: 0.00, 0.03, 0.01", "stdout_lines": [" 16:15:16 up 3 days, 5:46, 1 user, load average: 0.00, 0.03, 0.01"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003210", "end": "2025-12-17 16:14:52.756881", "msg": "", "rc": 0, "start": "2025-12-17 16:14:52.753671", "stderr": "", "stderr_lines": [], "stdout": " 16:14:52 up 17 days, 5:30, 0 user, load average: 0.44, 0.28, 0.16", "stdout_lines": [" 16:14:52 up 17 days, 5:30, 0 user, load average: 0.44, 0.28, 0.16"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004305", "end": "2025-12-17 13:15:16.712362", "msg": "", "rc": 0, "start": "2025-12-17 13:15:16.708057", "stderr": "", "stderr_lines": [], "stdout": " 1:15PM up 22 days, 3:05, 1 user, load averages: 0.18, 0.18, 0.16", "stdout_lines": [" 1:15PM up 22 days, 3:05, 1 user, load averages: 0.18, 0.18, 0.16"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003379", "end": "2025-12-17 16:14:46.265892", "msg": "", "rc": 0, "start": "2025-12-17 16:14:46.262513", "stderr": "", "stderr_lines": [], "stdout": " 16:14:46 up 20 days, 19:09, 0 user, load average: 0.34, 0.41, 0.42", "stdout_lines": [" 16:14:46 up 20 days, 19:09, 0 user, load average: 0.34, 0.41, 0.42"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003680", "end": "2025-12-17 16:15:17.011763", "msg": "", "rc": 0, "start": "2025-12-17 16:15:17.008083", "stderr": "", "stderr_lines": [], "stdout": " 16:15:17 up 3 days, 5:46, 1 user, load average: 0.00, 0.03, 0.00", "stdout_lines": [" 16:15:17 up 3 days, 5:46, 1 user, load average: 0.00, 0.03, 0.00"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019505", "end": "2025-12-17 16:15:16.899436", "msg": "", "rc": 0, "start": "2025-12-17 16:15:16.879931", "stderr": "", "stderr_lines": [], "stdout": " 16:15:16 up 15 days, 5:41, 1 user, load average: 0.32, 0.22, 0.14", "stdout_lines": [" 16:15:16 up 15 days, 5:41, 1 user, load average: 0.32, 0.22, 0.14"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.015490", "end": "2025-12-17 16:15:17.572975", "msg": "", "rc": 0, "start": "2025-12-17 16:15:17.557485", "stderr": "", "stderr_lines": [], "stdout": " 16:15:17 up 3:20, 1 user, load average: 1.92, 1.54, 1.41", "stdout_lines": [" 16:15:17 up 3:20, 1 user, load average: 1.92, 1.54, 1.41"]} + +TASK [Get disk usage] ********************************************************** +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004150", "end": "2025-12-17 16:15:17.929071", "msg": "", "rc": 0, "start": "2025-12-17 16:15:17.924921", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004263", "end": "2025-12-17 16:15:17.925361", "msg": "", "rc": 0, "start": "2025-12-17 16:15:17.921098", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005108", "end": "2025-12-17 16:15:17.992506", "msg": "", "rc": 0, "start": "2025-12-17 16:15:17.987398", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.007204", "end": "2025-12-17 16:15:17.988479", "msg": "", "rc": 0, "start": "2025-12-17 16:15:17.981275", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004741", "end": "2025-12-17 16:15:18.013981", "msg": "", "rc": 0, "start": "2025-12-17 16:15:18.009240", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005970", "end": "2025-12-17 16:14:52.013371", "msg": "", "rc": 0, "start": "2025-12-17 16:14:52.007401", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006181", "end": "2025-12-17 16:14:45.574179", "msg": "", "rc": 0, "start": "2025-12-17 16:14:45.567998", "stderr": "", "stderr_lines": [], "stdout": "24%", "stdout_lines": ["24%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011728", "end": "2025-12-17 16:15:18.858666", "msg": "", "rc": 0, "start": "2025-12-17 16:15:18.846938", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010377", "end": "2025-12-17 16:15:18.863861", "msg": "", "rc": 0, "start": "2025-12-17 16:15:18.853484", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005684", "end": "2025-12-17 16:15:19.137022", "msg": "", "rc": 0, "start": "2025-12-17 16:15:19.131338", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006321", "end": "2025-12-17 16:14:48.917045", "msg": "", "rc": 0, "start": "2025-12-17 16:14:48.910724", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005325", "end": "2025-12-17 13:15:19.453348", "msg": "", "rc": 0, "start": "2025-12-17 13:15:19.448023", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005040", "end": "2025-12-17 16:14:55.502141", "msg": "", "rc": 0, "start": "2025-12-17 16:14:55.497101", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025432", "end": "2025-12-17 16:15:19.427504", "msg": "", "rc": 0, "start": "2025-12-17 16:15:19.402072", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005367", "end": "2025-12-17 16:15:19.820328", "msg": "", "rc": 0, "start": "2025-12-17 16:15:19.814961", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.024346", "end": "2025-12-17 16:15:21.074229", "msg": "", "rc": 0, "start": "2025-12-17 16:15:21.049883", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004351", "end": "2025-12-17 16:15:21.286463", "msg": "", "rc": 0, "start": "2025-12-17 16:15:21.282112", "stderr": "", "stderr_lines": [], "stdout": "77.3%", "stdout_lines": ["77.3%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004116", "end": "2025-12-17 16:15:21.296591", "msg": "", "rc": 0, "start": "2025-12-17 16:15:21.292475", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004868", "end": "2025-12-17 16:15:21.319792", "msg": "", "rc": 0, "start": "2025-12-17 16:15:21.314924", "stderr": "", "stderr_lines": [], "stdout": "49.2%", "stdout_lines": ["49.2%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005860", "end": "2025-12-17 16:15:21.355853", "msg": "", "rc": 0, "start": "2025-12-17 16:15:21.349993", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004586", "end": "2025-12-17 16:15:21.365673", "msg": "", "rc": 0, "start": "2025-12-17 16:15:21.361087", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003884", "end": "2025-12-17 16:14:55.384024", "msg": "", "rc": 0, "start": "2025-12-17 16:14:55.380140", "stderr": "", "stderr_lines": [], "stdout": "71.4%", "stdout_lines": ["71.4%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004272", "end": "2025-12-17 16:14:48.906486", "msg": "", "rc": 0, "start": "2025-12-17 16:14:48.902214", "stderr": "", "stderr_lines": [], "stdout": "68.5%", "stdout_lines": ["68.5%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011071", "end": "2025-12-17 16:15:22.141913", "msg": "", "rc": 0, "start": "2025-12-17 16:15:22.130842", "stderr": "", "stderr_lines": [], "stdout": "6.7%", "stdout_lines": ["6.7%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011734", "end": "2025-12-17 16:15:22.152620", "msg": "", "rc": 0, "start": "2025-12-17 16:15:22.140886", "stderr": "", "stderr_lines": [], "stdout": "13.1%", "stdout_lines": ["13.1%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005739", "end": "2025-12-17 16:15:22.541703", "msg": "", "rc": 0, "start": "2025-12-17 16:15:22.535964", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004005", "end": "2025-12-17 16:14:52.196129", "msg": "", "rc": 0, "start": "2025-12-17 16:14:52.192124", "stderr": "", "stderr_lines": [], "stdout": "27.3%", "stdout_lines": ["27.3%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005175", "end": "2025-12-17 13:15:22.748599", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 13:15:22.743424", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003905", "end": "2025-12-17 16:14:58.816108", "msg": "", "rc": 0, "start": "2025-12-17 16:14:58.812203", "stderr": "", "stderr_lines": [], "stdout": "58.4%", "stdout_lines": ["58.4%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025819", "end": "2025-12-17 16:15:22.883849", "msg": "", "rc": 0, "start": "2025-12-17 16:15:22.858030", "stderr": "", "stderr_lines": [], "stdout": "20.0%", "stdout_lines": ["20.0%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005402", "end": "2025-12-17 16:15:23.083860", "msg": "", "rc": 0, "start": "2025-12-17 16:15:23.078458", "stderr": "", "stderr_lines": [], "stdout": "13.9%", "stdout_lines": ["13.9%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.022667", "end": "2025-12-17 16:15:23.787439", "msg": "", "rc": 0, "start": "2025-12-17 16:15:23.764772", "stderr": "", "stderr_lines": [], "stdout": "21.7%", "stdout_lines": ["21.7%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005501", "end": "2025-12-17 16:15:23.840283", "msg": "", "rc": 0, "start": "2025-12-17 16:15:23.834782", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004969", "end": "2025-12-17 16:15:23.889230", "msg": "", "rc": 0, "start": "2025-12-17 16:15:23.884261", "stderr": "", "stderr_lines": [], "stdout": "45.0°C", "stdout_lines": ["45.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005573", "end": "2025-12-17 16:15:23.927183", "msg": "", "rc": 0, "start": "2025-12-17 16:15:23.921610", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006245", "end": "2025-12-17 16:15:23.937073", "msg": "", "rc": 0, "start": "2025-12-17 16:15:23.930828", "stderr": "", "stderr_lines": [], "stdout": "53.0°C", "stdout_lines": ["53.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003368", "end": "2025-12-17 16:15:23.958693", "msg": "", "rc": 0, "start": "2025-12-17 16:15:23.955325", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002885", "end": "2025-12-17 16:14:57.950209", "msg": "", "rc": 0, "start": "2025-12-17 16:14:57.947324", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003196", "end": "2025-12-17 16:14:51.497857", "msg": "", "rc": 0, "start": "2025-12-17 16:14:51.494661", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011739", "end": "2025-12-17 16:15:24.780730", "msg": "", "rc": 0, "start": "2025-12-17 16:15:24.768991", "stderr": "", "stderr_lines": [], "stdout": "32.1°C", "stdout_lines": ["32.1°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012959", "end": "2025-12-17 16:15:24.849861", "msg": "", "rc": 0, "start": "2025-12-17 16:15:24.836902", "stderr": "", "stderr_lines": [], "stdout": "36.5°C", "stdout_lines": ["36.5°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003121", "end": "2025-12-17 16:15:25.107898", "msg": "", "rc": 0, "start": "2025-12-17 16:15:25.104777", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002985", "end": "2025-12-17 16:14:54.784655", "msg": "", "rc": 0, "start": "2025-12-17 16:14:54.781670", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002703", "end": "2025-12-17 16:15:01.424943", "msg": "", "rc": 0, "start": "2025-12-17 16:15:01.422240", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003961", "end": "2025-12-17 13:15:25.416390", "msg": "", "rc": 0, "start": "2025-12-17 13:15:25.412429", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028526", "end": "2025-12-17 16:15:25.364138", "msg": "", "rc": 0, "start": "2025-12-17 16:15:25.335612", "stderr": "", "stderr_lines": [], "stdout": "36.3°C", "stdout_lines": ["36.3°C"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003224", "end": "2025-12-17 16:15:25.687203", "msg": "", "rc": 0, "start": "2025-12-17 16:15:25.683979", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004151", "end": "2025-12-17 16:15:26.476876", "msg": "", "rc": 0, "start": "2025-12-17 16:15:26.472725", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004253", "end": "2025-12-17 16:15:26.437015", "msg": "", "rc": 0, "start": "2025-12-17 16:15:26.432762", "stderr": "", "stderr_lines": [], "stdout": "0.39", "stdout_lines": ["0.39"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004099", "end": "2025-12-17 16:15:26.452096", "msg": "", "rc": 0, "start": "2025-12-17 16:15:26.447997", "stderr": "", "stderr_lines": [], "stdout": "0.37", "stdout_lines": ["0.37"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004752", "end": "2025-12-17 16:15:26.504676", "msg": "", "rc": 0, "start": "2025-12-17 16:15:26.499924", "stderr": "", "stderr_lines": [], "stdout": "0.76", "stdout_lines": ["0.76"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005440", "end": "2025-12-17 16:15:26.529109", "msg": "", "rc": 0, "start": "2025-12-17 16:15:26.523669", "stderr": "", "stderr_lines": [], "stdout": "0.43", "stdout_lines": ["0.43"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005130", "end": "2025-12-17 16:15:26.546058", "msg": "", "rc": 0, "start": "2025-12-17 16:15:26.540928", "stderr": "", "stderr_lines": [], "stdout": "0.28", "stdout_lines": ["0.28"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004296", "end": "2025-12-17 16:15:00.549638", "msg": "", "rc": 0, "start": "2025-12-17 16:15:00.545342", "stderr": "", "stderr_lines": [], "stdout": "0.19", "stdout_lines": ["0.19"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005609", "end": "2025-12-17 16:14:54.088479", "msg": "", "rc": 0, "start": "2025-12-17 16:14:54.082870", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011313", "end": "2025-12-17 16:15:27.277984", "msg": "", "rc": 0, "start": "2025-12-17 16:15:27.266671", "stderr": "", "stderr_lines": [], "stdout": "0.31", "stdout_lines": ["0.31"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010013", "end": "2025-12-17 16:15:27.281942", "msg": "", "rc": 0, "start": "2025-12-17 16:15:27.271929", "stderr": "", "stderr_lines": [], "stdout": "0.11", "stdout_lines": ["0.11"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005646", "end": "2025-12-17 16:15:27.680726", "msg": "", "rc": 0, "start": "2025-12-17 16:15:27.675080", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004589", "end": "2025-12-17 16:15:03.911032", "msg": "", "rc": 0, "start": "2025-12-17 16:15:03.906443", "stderr": "", "stderr_lines": [], "stdout": "0.52", "stdout_lines": ["0.52"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006272", "end": "2025-12-17 13:15:27.852836", "msg": "", "rc": 0, "start": "2025-12-17 13:15:27.846564", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005059", "end": "2025-12-17 16:14:57.383593", "msg": "", "rc": 0, "start": "2025-12-17 16:14:57.378534", "stderr": "", "stderr_lines": [], "stdout": "0.36", "stdout_lines": ["0.36"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024420", "end": "2025-12-17 16:15:27.962001", "msg": "", "rc": 0, "start": "2025-12-17 16:15:27.937581", "stderr": "", "stderr_lines": [], "stdout": "0.27", "stdout_lines": ["0.27"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005225", "end": "2025-12-17 16:15:28.242068", "msg": "", "rc": 0, "start": "2025-12-17 16:15:28.236843", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.012756", "end": "2025-12-17 16:15:29.164938", "msg": "", "rc": 0, "start": "2025-12-17 16:15:29.152182", "stderr": "", "stderr_lines": [], "stdout": "2.33", "stdout_lines": ["2.33"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:15:15 up 3 days, 5:47, 1 user, load average: 0.47, 0.40, 0.29\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.37\nCPU Temp: 45.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:15:15 up 22 days, 3:06, 1 user, load average: 0.37, 0.35, 0.36\nDisk Usage: 23%\nMemory Usage: 77.3%\nCPU Load: 0.39\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:15:15 up 22 days, 3:26, 1 user, load average: 0.53, 0.77, 0.71\nDisk Usage: 14%\nMemory Usage: 49.2%\nCPU Load: 0.76\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:15:15 up 22 days, 4:39, 1 user, load average: 0.47, 0.57, 0.55\nDisk Usage: 14%\nMemory Usage: 59.7%\nCPU Load: 0.43\nCPU Temp: 53.0°C\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:15:16 up 15 days, 5:41, 1 user, load average: 0.32, 0.22, 0.14\nDisk Usage: 21%\nMemory Usage: 20.0%\nCPU Load: 0.27\nCPU Temp: 36.3°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:15:15 up 22 days, 5:25, 1 user, load average: 0.06, 0.05, 0.01\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.28\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:15:16 up 194 days, 7:48, 1 user, load average: 0.37, 0.26, 0.25\nDisk Usage: 6%\nMemory Usage: 13.1%\nCPU Load: 0.31\nCPU Temp: 36.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:15:16 up 194 days, 7:48, 1 user, load average: 0.13, 0.14, 0.10\nDisk Usage: 3%\nMemory Usage: 6.7%\nCPU Load: 0.11\nCPU Temp: 32.1°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:14:49 up 11 days, 4:04, 0 user, load average: 0.14, 0.18, 0.24\nDisk Usage: 48%\nMemory Usage: 71.4%\nCPU Load: 0.19\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:14:42 up 18 days, 16 min, 0 user, load average: 0.00, 0.03, 0.00\nDisk Usage: 24%\nMemory Usage: 68.5%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:15:16 up 3 days, 5:46, 1 user, load average: 0.00, 0.03, 0.01\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:14:46 up 20 days, 19:09, 0 user, load average: 0.34, 0.41, 0.42\nDisk Usage: 28%\nMemory Usage: 27.3%\nCPU Load: 0.36\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:14:52 up 17 days, 5:30, 0 user, load average: 0.44, 0.28, 0.16\nDisk Usage: 76%\nMemory Usage: 58.4%\nCPU Load: 0.52\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 1:15PM up 22 days, 3:05, 1 user, load averages: 0.18, 0.18, 0.16\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:15:17 up 3 days, 5:46, 1 user, load average: 0.00, 0.03, 0.00\nDisk Usage: 79%\nMemory Usage: 13.9%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:15:17 up 3:20, 1 user, load average: 1.92, 1.54, 1.41\nDisk Usage: 1%\nMemory Usage: 21.7%\nCPU Load: 2.33\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T21:15:31.508298+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_212030_c321de_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_212030_c321de_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..89f5ae9 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_212030_c321de_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `dc53d795a7ad4847b104471ee666ef9e` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T21:20:00.003616+00:00 | +| **Fin** | 2025-12-17T21:20:29.936683+00:00 | +| **Durée** | 29.9s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [orangepi.pc.home] +ok: [localhost] + +TASK [Get system uptime] ******************************************************* +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003854", "end": "2025-12-17 16:20:14.633635", "msg": "", "rc": 0, "start": "2025-12-17 16:20:14.629781", "stderr": "", "stderr_lines": [], "stdout": " 16:20:14 up 22 days, 5:30, 1 user, load average: 0.00, 0.03, 0.00", "stdout_lines": [" 16:20:14 up 22 days, 5:30, 1 user, load average: 0.00, 0.03, 0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003923", "end": "2025-12-17 16:20:14.652352", "msg": "", "rc": 0, "start": "2025-12-17 16:20:14.648429", "stderr": "", "stderr_lines": [], "stdout": " 16:20:14 up 22 days, 4:44, 1 user, load average: 1.25, 1.07, 0.77", "stdout_lines": [" 16:20:14 up 22 days, 4:44, 1 user, load average: 1.25, 1.07, 0.77"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002880", "end": "2025-12-17 16:20:14.660640", "msg": "", "rc": 0, "start": "2025-12-17 16:20:14.657760", "stderr": "", "stderr_lines": [], "stdout": " 16:20:14 up 3 days, 5:52, 1 user, load average: 0.09, 0.20, 0.23", "stdout_lines": [" 16:20:14 up 3 days, 5:52, 1 user, load average: 0.09, 0.20, 0.23"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008355", "end": "2025-12-17 16:20:15.454045", "msg": "", "rc": 0, "start": "2025-12-17 16:20:15.445690", "stderr": "", "stderr_lines": [], "stdout": " 16:20:15 up 194 days, 7:53, 1 user, load average: 0.30, 0.19, 0.12", "stdout_lines": [" 16:20:15 up 194 days, 7:53, 1 user, load average: 0.30, 0.19, 0.12"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009295", "end": "2025-12-17 16:20:15.489498", "msg": "", "rc": 0, "start": "2025-12-17 16:20:15.480203", "stderr": "", "stderr_lines": [], "stdout": " 16:20:15 up 194 days, 7:53, 1 user, load average: 0.23, 0.22, 0.24", "stdout_lines": [" 16:20:15 up 194 days, 7:53, 1 user, load average: 0.23, 0.22, 0.24"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004445", "end": "2025-12-17 16:20:15.618737", "msg": "", "rc": 0, "start": "2025-12-17 16:20:14.614292", "stderr": "", "stderr_lines": [], "stdout": " 16:20:14 up 22 days, 3:11, 1 user, load average: 0.16, 0.21, 0.29", "stdout_lines": [" 16:20:14 up 22 days, 3:11, 1 user, load average: 0.16, 0.21, 0.29"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004332", "end": "2025-12-17 16:20:15.629902", "msg": "", "rc": 0, "start": "2025-12-17 16:20:14.625570", "stderr": "", "stderr_lines": [], "stdout": " 16:20:14 up 22 days, 3:31, 1 user, load average: 0.43, 0.66, 0.69", "stdout_lines": [" 16:20:14 up 22 days, 3:31, 1 user, load average: 0.43, 0.66, 0.69"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002915", "end": "2025-12-17 16:19:49.482656", "msg": "", "rc": 0, "start": "2025-12-17 16:19:49.479741", "stderr": "", "stderr_lines": [], "stdout": " 16:19:49 up 11 days, 4:09, 0 user, load average: 0.21, 0.14, 0.19", "stdout_lines": [" 16:19:49 up 11 days, 4:09, 0 user, load average: 0.21, 0.14, 0.19"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004999", "end": "2025-12-17 16:20:16.206263", "msg": "", "rc": 0, "start": "2025-12-17 16:20:16.201264", "stderr": "", "stderr_lines": [], "stdout": " 16:20:16 up 3 days, 5:51, 1 user, load average: 0.43, 0.17, 0.05", "stdout_lines": [" 16:20:16 up 3 days, 5:51, 1 user, load average: 0.43, 0.17, 0.05"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003443", "end": "2025-12-17 16:19:43.079667", "msg": "", "rc": 0, "start": "2025-12-17 16:19:43.076224", "stderr": "", "stderr_lines": [], "stdout": " 16:19:43 up 18 days, 21 min, 0 user, load average: 0.56, 0.45, 0.19", "stdout_lines": [" 16:19:43 up 18 days, 21 min, 0 user, load average: 0.56, 0.45, 0.19"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003206", "end": "2025-12-17 16:19:45.799800", "msg": "", "rc": 0, "start": "2025-12-17 16:19:45.796594", "stderr": "", "stderr_lines": [], "stdout": " 16:19:45 up 20 days, 19:14, 0 user, load average: 0.39, 0.56, 0.49", "stdout_lines": [" 16:19:45 up 20 days, 19:14, 0 user, load average: 0.39, 0.56, 0.49"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019599", "end": "2025-12-17 16:20:16.220782", "msg": "", "rc": 0, "start": "2025-12-17 16:20:16.201183", "stderr": "", "stderr_lines": [], "stdout": " 16:20:16 up 15 days, 5:46, 1 user, load average: 0.23, 0.16, 0.12", "stdout_lines": [" 16:20:16 up 15 days, 5:46, 1 user, load average: 0.23, 0.16, 0.12"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002714", "end": "2025-12-17 16:19:52.682603", "msg": "", "rc": 0, "start": "2025-12-17 16:19:52.679889", "stderr": "", "stderr_lines": [], "stdout": " 16:19:52 up 17 days, 5:35, 0 user, load average: 0.17, 0.24, 0.18", "stdout_lines": [" 16:19:52 up 17 days, 5:35, 0 user, load average: 0.17, 0.24, 0.18"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004229", "end": "2025-12-17 13:20:16.758462", "msg": "", "rc": 0, "start": "2025-12-17 13:20:16.754233", "stderr": "", "stderr_lines": [], "stdout": " 1:20PM up 22 days, 3:10, 1 user, load averages: 0.25, 0.19, 0.17", "stdout_lines": [" 1:20PM up 22 days, 3:10, 1 user, load averages: 0.25, 0.19, 0.17"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003858", "end": "2025-12-17 16:20:16.785099", "msg": "", "rc": 0, "start": "2025-12-17 16:20:16.781241", "stderr": "", "stderr_lines": [], "stdout": " 16:20:16 up 3 days, 5:51, 1 user, load average: 0.03, 0.08, 0.03", "stdout_lines": [" 16:20:16 up 3 days, 5:51, 1 user, load average: 0.03, 0.08, 0.03"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.015620", "end": "2025-12-17 16:20:17.646214", "msg": "", "rc": 0, "start": "2025-12-17 16:20:17.630594", "stderr": "", "stderr_lines": [], "stdout": " 16:20:17 up 3:25, 1 user, load average: 1.77, 1.47, 1.41", "stdout_lines": [" 16:20:17 up 3:25, 1 user, load average: 1.77, 1.47, 1.41"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004552", "end": "2025-12-17 16:20:17.497321", "msg": "", "rc": 0, "start": "2025-12-17 16:20:17.492769", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004587", "end": "2025-12-17 16:20:17.498076", "msg": "", "rc": 0, "start": "2025-12-17 16:20:17.493489", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004680", "end": "2025-12-17 16:20:17.527510", "msg": "", "rc": 0, "start": "2025-12-17 16:20:17.522830", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004604", "end": "2025-12-17 16:20:17.575334", "msg": "", "rc": 0, "start": "2025-12-17 16:20:17.570730", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005845", "end": "2025-12-17 16:20:17.593384", "msg": "", "rc": 0, "start": "2025-12-17 16:20:17.587539", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004837", "end": "2025-12-17 16:19:51.568075", "msg": "", "rc": 0, "start": "2025-12-17 16:19:51.563238", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005736", "end": "2025-12-17 16:19:45.096017", "msg": "", "rc": 0, "start": "2025-12-17 16:19:45.090281", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010548", "end": "2025-12-17 16:20:18.418745", "msg": "", "rc": 0, "start": "2025-12-17 16:20:18.408197", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.012068", "end": "2025-12-17 16:20:18.429573", "msg": "", "rc": 0, "start": "2025-12-17 16:20:18.417505", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006302", "end": "2025-12-17 16:20:18.714013", "msg": "", "rc": 0, "start": "2025-12-17 16:20:18.707711", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005953", "end": "2025-12-17 16:19:48.377816", "msg": "", "rc": 0, "start": "2025-12-17 16:19:48.371863", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005561", "end": "2025-12-17 13:20:18.986588", "msg": "", "rc": 0, "start": "2025-12-17 13:20:18.981027", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004899", "end": "2025-12-17 16:19:55.063211", "msg": "", "rc": 0, "start": "2025-12-17 16:19:55.058312", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025569", "end": "2025-12-17 16:20:18.986465", "msg": "", "rc": 0, "start": "2025-12-17 16:20:18.960896", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005301", "end": "2025-12-17 16:20:19.248577", "msg": "", "rc": 0, "start": "2025-12-17 16:20:19.243276", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.024715", "end": "2025-12-17 16:20:20.302105", "msg": "", "rc": 0, "start": "2025-12-17 16:20:20.277390", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004130", "end": "2025-12-17 16:20:20.222864", "msg": "", "rc": 0, "start": "2025-12-17 16:20:20.218734", "stderr": "", "stderr_lines": [], "stdout": "22.5%", "stdout_lines": ["22.5%"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004404", "end": "2025-12-17 16:20:20.274066", "msg": "", "rc": 0, "start": "2025-12-17 16:20:20.269662", "stderr": "", "stderr_lines": [], "stdout": "77.5%", "stdout_lines": ["77.5%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005001", "end": "2025-12-17 16:20:20.305862", "msg": "", "rc": 0, "start": "2025-12-17 16:20:20.300861", "stderr": "", "stderr_lines": [], "stdout": "49.3%", "stdout_lines": ["49.3%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.016830", "end": "2025-12-17 16:20:20.400095", "msg": "", "rc": 0, "start": "2025-12-17 16:20:20.383265", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004856", "end": "2025-12-17 16:20:20.481474", "msg": "", "rc": 0, "start": "2025-12-17 16:20:20.476618", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004238", "end": "2025-12-17 16:19:54.514028", "msg": "", "rc": 0, "start": "2025-12-17 16:19:54.509790", "stderr": "", "stderr_lines": [], "stdout": "70.7%", "stdout_lines": ["70.7%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004518", "end": "2025-12-17 16:19:48.050215", "msg": "", "rc": 0, "start": "2025-12-17 16:19:48.045697", "stderr": "", "stderr_lines": [], "stdout": "68.4%", "stdout_lines": ["68.4%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011148", "end": "2025-12-17 16:20:21.173523", "msg": "", "rc": 0, "start": "2025-12-17 16:20:21.162375", "stderr": "", "stderr_lines": [], "stdout": "6.7%", "stdout_lines": ["6.7%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012097", "end": "2025-12-17 16:20:21.221686", "msg": "", "rc": 0, "start": "2025-12-17 16:20:21.209589", "stderr": "", "stderr_lines": [], "stdout": "12.6%", "stdout_lines": ["12.6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005713", "end": "2025-12-17 16:20:21.656269", "msg": "", "rc": 0, "start": "2025-12-17 16:20:21.650556", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005208", "end": "2025-12-17 13:20:21.781758", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 13:20:21.776550", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003626", "end": "2025-12-17 16:19:57.864072", "msg": "", "rc": 0, "start": "2025-12-17 16:19:57.860446", "stderr": "", "stderr_lines": [], "stdout": "60.2%", "stdout_lines": ["60.2%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004422", "end": "2025-12-17 16:19:51.323604", "msg": "", "rc": 0, "start": "2025-12-17 16:19:51.319182", "stderr": "", "stderr_lines": [], "stdout": "27.7%", "stdout_lines": ["27.7%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025542", "end": "2025-12-17 16:20:21.833150", "msg": "", "rc": 0, "start": "2025-12-17 16:20:21.807608", "stderr": "", "stderr_lines": [], "stdout": "21.3%", "stdout_lines": ["21.3%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005357", "end": "2025-12-17 16:20:22.188705", "msg": "", "rc": 0, "start": "2025-12-17 16:20:22.183348", "stderr": "", "stderr_lines": [], "stdout": "13.8%", "stdout_lines": ["13.8%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.019899", "end": "2025-12-17 16:20:23.382856", "msg": "", "rc": 0, "start": "2025-12-17 16:20:23.362957", "stderr": "", "stderr_lines": [], "stdout": "21.8%", "stdout_lines": ["21.8%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005511", "end": "2025-12-17 16:20:23.050354", "msg": "", "rc": 0, "start": "2025-12-17 16:20:23.044843", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004855", "end": "2025-12-17 16:20:23.085944", "msg": "", "rc": 0, "start": "2025-12-17 16:20:23.081089", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005831", "end": "2025-12-17 16:20:23.125327", "msg": "", "rc": 0, "start": "2025-12-17 16:20:23.119496", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003167", "end": "2025-12-17 16:20:23.163888", "msg": "", "rc": 0, "start": "2025-12-17 16:20:23.160721", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006829", "end": "2025-12-17 16:20:23.171821", "msg": "", "rc": 0, "start": "2025-12-17 16:20:23.164992", "stderr": "", "stderr_lines": [], "stdout": "53.5°C", "stdout_lines": ["53.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002765", "end": "2025-12-17 16:19:57.177281", "msg": "", "rc": 0, "start": "2025-12-17 16:19:57.174516", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003342", "end": "2025-12-17 16:19:50.694178", "msg": "", "rc": 0, "start": "2025-12-17 16:19:50.690836", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012959", "end": "2025-12-17 16:20:24.020373", "msg": "", "rc": 0, "start": "2025-12-17 16:20:24.007414", "stderr": "", "stderr_lines": [], "stdout": "36.5°C", "stdout_lines": ["36.5°C"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013693", "end": "2025-12-17 16:20:24.029335", "msg": "", "rc": 0, "start": "2025-12-17 16:20:24.015642", "stderr": "", "stderr_lines": [], "stdout": "32.6°C", "stdout_lines": ["32.6°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003196", "end": "2025-12-17 16:20:24.335164", "msg": "", "rc": 0, "start": "2025-12-17 16:20:24.331968", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003127", "end": "2025-12-17 16:19:54.021928", "msg": "", "rc": 0, "start": "2025-12-17 16:19:54.018801", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003832", "end": "2025-12-17 13:20:24.626443", "msg": "", "rc": 0, "start": "2025-12-17 13:20:24.622611", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002594", "end": "2025-12-17 16:20:00.737958", "msg": "", "rc": 0, "start": "2025-12-17 16:20:00.735364", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028478", "end": "2025-12-17 16:20:24.659787", "msg": "", "rc": 0, "start": "2025-12-17 16:20:24.631309", "stderr": "", "stderr_lines": [], "stdout": "36.4°C", "stdout_lines": ["36.4°C"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002952", "end": "2025-12-17 16:20:24.951613", "msg": "", "rc": 0, "start": "2025-12-17 16:20:24.948661", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.016061", "end": "2025-12-17 16:20:26.183584", "msg": "", "rc": 0, "start": "2025-12-17 16:20:26.167523", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004357", "end": "2025-12-17 16:20:25.741561", "msg": "", "rc": 0, "start": "2025-12-17 16:20:25.737204", "stderr": "", "stderr_lines": [], "stdout": "0.13", "stdout_lines": ["0.13"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004774", "end": "2025-12-17 16:20:25.776784", "msg": "", "rc": 0, "start": "2025-12-17 16:20:25.772010", "stderr": "", "stderr_lines": [], "stdout": "0.53", "stdout_lines": ["0.53"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004064", "end": "2025-12-17 16:20:25.783218", "msg": "", "rc": 0, "start": "2025-12-17 16:20:25.779154", "stderr": "", "stderr_lines": [], "stdout": "0.15", "stdout_lines": ["0.15"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004775", "end": "2025-12-17 16:20:25.839402", "msg": "", "rc": 0, "start": "2025-12-17 16:20:25.834627", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005837", "end": "2025-12-17 16:20:25.851053", "msg": "", "rc": 0, "start": "2025-12-17 16:20:25.845216", "stderr": "", "stderr_lines": [], "stdout": "1.36", "stdout_lines": ["1.36"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004815", "end": "2025-12-17 16:19:59.872726", "msg": "", "rc": 0, "start": "2025-12-17 16:19:59.867911", "stderr": "", "stderr_lines": [], "stdout": "0.17", "stdout_lines": ["0.17"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005819", "end": "2025-12-17 16:19:53.441676", "msg": "", "rc": 0, "start": "2025-12-17 16:19:53.435857", "stderr": "", "stderr_lines": [], "stdout": "0.47", "stdout_lines": ["0.47"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.009986", "end": "2025-12-17 16:20:26.621004", "msg": "", "rc": 0, "start": "2025-12-17 16:20:26.611018", "stderr": "", "stderr_lines": [], "stdout": "0.32", "stdout_lines": ["0.32"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011122", "end": "2025-12-17 16:20:26.657746", "msg": "", "rc": 0, "start": "2025-12-17 16:20:26.646624", "stderr": "", "stderr_lines": [], "stdout": "0.18", "stdout_lines": ["0.18"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005817", "end": "2025-12-17 16:20:27.038850", "msg": "", "rc": 0, "start": "2025-12-17 16:20:27.033033", "stderr": "", "stderr_lines": [], "stdout": "0.37", "stdout_lines": ["0.37"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004875", "end": "2025-12-17 16:19:56.730484", "msg": "", "rc": 0, "start": "2025-12-17 16:19:56.725609", "stderr": "", "stderr_lines": [], "stdout": "0.49", "stdout_lines": ["0.49"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006197", "end": "2025-12-17 13:20:27.268639", "msg": "", "rc": 0, "start": "2025-12-17 13:20:27.262442", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004393", "end": "2025-12-17 16:20:03.322176", "msg": "", "rc": 0, "start": "2025-12-17 16:20:03.317783", "stderr": "", "stderr_lines": [], "stdout": "0.22", "stdout_lines": ["0.22"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024303", "end": "2025-12-17 16:20:27.281633", "msg": "", "rc": 0, "start": "2025-12-17 16:20:27.257330", "stderr": "", "stderr_lines": [], "stdout": "0.27", "stdout_lines": ["0.27"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005261", "end": "2025-12-17 16:20:27.658346", "msg": "", "rc": 0, "start": "2025-12-17 16:20:27.653085", "stderr": "", "stderr_lines": [], "stdout": "0.02", "stdout_lines": ["0.02"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.020266", "end": "2025-12-17 16:20:29.043969", "msg": "", "rc": 0, "start": "2025-12-17 16:20:29.023703", "stderr": "", "stderr_lines": [], "stdout": "1.97", "stdout_lines": ["1.97"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:20:14 up 3 days, 5:52, 1 user, load average: 0.09, 0.20, 0.23\nDisk Usage: 22%\nMemory Usage: 22.5%\nCPU Load: 0.15\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:20:14 up 22 days, 3:11, 1 user, load average: 0.16, 0.21, 0.29\nDisk Usage: 23%\nMemory Usage: 77.5%\nCPU Load: 0.13\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:20:14 up 22 days, 3:31, 1 user, load average: 0.43, 0.66, 0.69\nDisk Usage: 14%\nMemory Usage: 49.3%\nCPU Load: 0.53\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:20:14 up 22 days, 4:44, 1 user, load average: 1.25, 1.07, 0.77\nDisk Usage: 14%\nMemory Usage: 59.7%\nCPU Load: 1.36\nCPU Temp: 53.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:20:14 up 22 days, 5:30, 1 user, load average: 0.00, 0.03, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:20:16 up 15 days, 5:46, 1 user, load average: 0.23, 0.16, 0.12\nDisk Usage: 21%\nMemory Usage: 21.3%\nCPU Load: 0.27\nCPU Temp: 36.4°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:20:15 up 194 days, 7:53, 1 user, load average: 0.23, 0.22, 0.24\nDisk Usage: 6%\nMemory Usage: 12.6%\nCPU Load: 0.18\nCPU Temp: 36.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:20:15 up 194 days, 7:53, 1 user, load average: 0.30, 0.19, 0.12\nDisk Usage: 3%\nMemory Usage: 6.7%\nCPU Load: 0.32\nCPU Temp: 32.6°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:19:49 up 11 days, 4:09, 0 user, load average: 0.21, 0.14, 0.19\nDisk Usage: 48%\nMemory Usage: 70.7%\nCPU Load: 0.17\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:19:43 up 18 days, 21 min, 0 user, load average: 0.56, 0.45, 0.19\nDisk Usage: 25%\nMemory Usage: 68.4%\nCPU Load: 0.47\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:20:16 up 3 days, 5:51, 1 user, load average: 0.43, 0.17, 0.05\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.37\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:19:45 up 20 days, 19:14, 0 user, load average: 0.39, 0.56, 0.49\nDisk Usage: 28%\nMemory Usage: 27.7%\nCPU Load: 0.49\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:19:52 up 17 days, 5:35, 0 user, load average: 0.17, 0.24, 0.18\nDisk Usage: 76%\nMemory Usage: 60.2%\nCPU Load: 0.22\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 1:20PM up 22 days, 3:10, 1 user, load averages: 0.25, 0.19, 0.17\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:20:16 up 3 days, 5:51, 1 user, load average: 0.03, 0.08, 0.03\nDisk Usage: 79%\nMemory Usage: 13.8%\nCPU Load: 0.02\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:20:17 up 3:25, 1 user, load average: 1.77, 1.47, 1.41\nDisk Usage: 1%\nMemory Usage: 21.8%\nCPU Load: 1.97\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T21:20:30.199725+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_212532_76f2ae_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_212532_76f2ae_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..5eec9c9 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_212532_76f2ae_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `37eada8e73154a3784fc309d52364623` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T21:25:00.003024+00:00 | +| **Fin** | 2025-12-17T21:25:32.306620+00:00 | +| **Durée** | 32.3s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp2.i7.home] +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [orangepi.pc.home] +ok: [localhost] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003525", "end": "2025-12-17 16:25:20.850039", "msg": "", "rc": 0, "start": "2025-12-17 16:25:20.846514", "stderr": "", "stderr_lines": [], "stdout": " 16:25:20 up 22 days, 3:16, 1 user, load average: 0.25, 0.19, 0.25", "stdout_lines": [" 16:25:20 up 22 days, 3:16, 1 user, load average: 0.25, 0.19, 0.25"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003657", "end": "2025-12-17 16:25:20.882369", "msg": "", "rc": 0, "start": "2025-12-17 16:25:20.878712", "stderr": "", "stderr_lines": [], "stdout": " 16:25:20 up 22 days, 5:35, 1 user, load average: 0.15, 0.06, 0.02", "stdout_lines": [" 16:25:20 up 22 days, 5:35, 1 user, load average: 0.15, 0.06, 0.02"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002825", "end": "2025-12-17 16:25:20.891606", "msg": "", "rc": 0, "start": "2025-12-17 16:25:20.888781", "stderr": "", "stderr_lines": [], "stdout": " 16:25:20 up 3 days, 5:57, 1 user, load average: 0.22, 0.20, 0.21", "stdout_lines": [" 16:25:20 up 3 days, 5:57, 1 user, load average: 0.22, 0.20, 0.21"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008353", "end": "2025-12-17 16:25:21.541313", "msg": "", "rc": 0, "start": "2025-12-17 16:25:21.532960", "stderr": "", "stderr_lines": [], "stdout": " 16:25:21 up 194 days, 7:58, 1 user, load average: 0.13, 0.16, 0.12", "stdout_lines": [" 16:25:21 up 194 days, 7:58, 1 user, load average: 0.13, 0.16, 0.12"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009360", "end": "2025-12-17 16:25:21.590070", "msg": "", "rc": 0, "start": "2025-12-17 16:25:21.580710", "stderr": "", "stderr_lines": [], "stdout": " 16:25:21 up 194 days, 7:58, 1 user, load average: 0.20, 0.20, 0.22", "stdout_lines": [" 16:25:21 up 194 days, 7:58, 1 user, load average: 0.20, 0.20, 0.22"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004017", "end": "2025-12-17 16:25:21.895733", "msg": "", "rc": 0, "start": "2025-12-17 16:25:20.891716", "stderr": "", "stderr_lines": [], "stdout": " 16:25:20 up 22 days, 3:36, 1 user, load average: 0.69, 0.68, 0.69", "stdout_lines": [" 16:25:20 up 22 days, 3:36, 1 user, load average: 0.69, 0.68, 0.69"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004236", "end": "2025-12-17 16:25:21.901638", "msg": "", "rc": 0, "start": "2025-12-17 16:25:20.897402", "stderr": "", "stderr_lines": [], "stdout": " 16:25:20 up 22 days, 4:49, 1 user, load average: 0.88, 0.86, 0.75", "stdout_lines": [" 16:25:20 up 22 days, 4:49, 1 user, load average: 0.88, 0.86, 0.75"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002982", "end": "2025-12-17 16:24:55.534498", "msg": "", "rc": 0, "start": "2025-12-17 16:24:55.531516", "stderr": "", "stderr_lines": [], "stdout": " 16:24:55 up 11 days, 4:14, 0 user, load average: 0.02, 0.10, 0.16", "stdout_lines": [" 16:24:55 up 11 days, 4:14, 0 user, load average: 0.02, 0.10, 0.16"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004971", "end": "2025-12-17 16:24:49.139711", "msg": "", "rc": 0, "start": "2025-12-17 16:24:49.134740", "stderr": "", "stderr_lines": [], "stdout": " 16:24:49 up 18 days, 26 min, 0 user, load average: 0.12, 0.19, 0.14", "stdout_lines": [" 16:24:49 up 18 days, 26 min, 0 user, load average: 0.12, 0.19, 0.14"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019398", "end": "2025-12-17 16:25:22.305836", "msg": "", "rc": 0, "start": "2025-12-17 16:25:22.286438", "stderr": "", "stderr_lines": [], "stdout": " 16:25:22 up 15 days, 5:51, 1 user, load average: 0.10, 0.12, 0.10", "stdout_lines": [" 16:25:22 up 15 days, 5:51, 1 user, load average: 0.10, 0.12, 0.10"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004716", "end": "2025-12-17 16:25:22.481551", "msg": "", "rc": 0, "start": "2025-12-17 16:25:22.476835", "stderr": "", "stderr_lines": [], "stdout": " 16:25:22 up 3 days, 5:56, 1 user, load average: 0.09, 0.09, 0.04", "stdout_lines": [" 16:25:22 up 3 days, 5:56, 1 user, load average: 0.09, 0.09, 0.04"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003942", "end": "2025-12-17 16:24:52.088147", "msg": "", "rc": 0, "start": "2025-12-17 16:24:52.084205", "stderr": "", "stderr_lines": [], "stdout": " 16:24:52 up 20 days, 19:19, 0 user, load average: 0.28, 0.38, 0.43", "stdout_lines": [" 16:24:52 up 20 days, 19:19, 0 user, load average: 0.28, 0.38, 0.43"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003212", "end": "2025-12-17 16:24:58.737630", "msg": "", "rc": 0, "start": "2025-12-17 16:24:58.734418", "stderr": "", "stderr_lines": [], "stdout": " 16:24:58 up 17 days, 5:40, 0 user, load average: 0.09, 0.21, 0.18", "stdout_lines": [" 16:24:58 up 17 days, 5:40, 0 user, load average: 0.09, 0.21, 0.18"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004703", "end": "2025-12-17 13:25:22.789316", "msg": "", "rc": 0, "start": "2025-12-17 13:25:22.784613", "stderr": "", "stderr_lines": [], "stdout": " 1:25PM up 22 days, 3:15, 1 user, load averages: 0.39, 0.28, 0.20", "stdout_lines": [" 1:25PM up 22 days, 3:15, 1 user, load averages: 0.39, 0.28, 0.20"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.007706", "end": "2025-12-17 16:25:23.139850", "msg": "", "rc": 0, "start": "2025-12-17 16:25:23.132144", "stderr": "", "stderr_lines": [], "stdout": " 16:25:23 up 3:30, 1 user, load average: 1.83, 1.46, 1.41", "stdout_lines": [" 16:25:23 up 3:30, 1 user, load average: 1.83, 1.46, 1.41"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003721", "end": "2025-12-17 16:25:22.941183", "msg": "", "rc": 0, "start": "2025-12-17 16:25:22.937462", "stderr": "", "stderr_lines": [], "stdout": " 16:25:22 up 3 days, 5:57, 1 user, load average: 0.01, 0.04, 0.01", "stdout_lines": [" 16:25:22 up 3 days, 5:57, 1 user, load average: 0.01, 0.04, 0.01"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004417", "end": "2025-12-17 16:25:23.346646", "msg": "", "rc": 0, "start": "2025-12-17 16:25:23.342229", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004188", "end": "2025-12-17 16:25:23.362284", "msg": "", "rc": 0, "start": "2025-12-17 16:25:23.358096", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004798", "end": "2025-12-17 16:25:23.395704", "msg": "", "rc": 0, "start": "2025-12-17 16:25:23.390906", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004712", "end": "2025-12-17 16:25:23.408272", "msg": "", "rc": 0, "start": "2025-12-17 16:25:23.403560", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005598", "end": "2025-12-17 16:25:23.416946", "msg": "", "rc": 0, "start": "2025-12-17 16:25:23.411348", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005419", "end": "2025-12-17 16:24:57.294961", "msg": "", "rc": 0, "start": "2025-12-17 16:24:57.289542", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005478", "end": "2025-12-17 16:24:50.812535", "msg": "", "rc": 0, "start": "2025-12-17 16:24:50.807057", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010771", "end": "2025-12-17 16:25:24.168771", "msg": "", "rc": 0, "start": "2025-12-17 16:25:24.158000", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011439", "end": "2025-12-17 16:25:24.166120", "msg": "", "rc": 0, "start": "2025-12-17 16:25:24.154681", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005707", "end": "2025-12-17 16:25:24.356754", "msg": "", "rc": 0, "start": "2025-12-17 16:25:24.351047", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005426", "end": "2025-12-17 16:24:54.002208", "msg": "", "rc": 0, "start": "2025-12-17 16:24:53.996782", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005451", "end": "2025-12-17 13:25:24.633466", "msg": "", "rc": 0, "start": "2025-12-17 13:25:24.628015", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004694", "end": "2025-12-17 16:25:00.710364", "msg": "", "rc": 0, "start": "2025-12-17 16:25:00.705670", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005469", "end": "2025-12-17 16:25:24.814484", "msg": "", "rc": 0, "start": "2025-12-17 16:25:24.809015", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010522", "end": "2025-12-17 16:25:25.151984", "msg": "", "rc": 0, "start": "2025-12-17 16:25:25.141462", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025208", "end": "2025-12-17 16:25:24.745801", "msg": "", "rc": 0, "start": "2025-12-17 16:25:24.720593", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004682", "end": "2025-12-17 16:25:25.290104", "msg": "", "rc": 0, "start": "2025-12-17 16:25:25.285422", "stderr": "", "stderr_lines": [], "stdout": "77.4%", "stdout_lines": ["77.4%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004158", "end": "2025-12-17 16:25:25.310709", "msg": "", "rc": 0, "start": "2025-12-17 16:25:25.306551", "stderr": "", "stderr_lines": [], "stdout": "22.5%", "stdout_lines": ["22.5%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004895", "end": "2025-12-17 16:25:25.351098", "msg": "", "rc": 0, "start": "2025-12-17 16:25:25.346203", "stderr": "", "stderr_lines": [], "stdout": "49.3%", "stdout_lines": ["49.3%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004929", "end": "2025-12-17 16:25:25.359888", "msg": "", "rc": 0, "start": "2025-12-17 16:25:25.354959", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005737", "end": "2025-12-17 16:25:25.381492", "msg": "", "rc": 0, "start": "2025-12-17 16:25:25.375755", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003934", "end": "2025-12-17 16:24:59.302696", "msg": "", "rc": 0, "start": "2025-12-17 16:24:59.298762", "stderr": "", "stderr_lines": [], "stdout": "70.8%", "stdout_lines": ["70.8%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004779", "end": "2025-12-17 16:24:52.843474", "msg": "", "rc": 0, "start": "2025-12-17 16:24:52.838695", "stderr": "", "stderr_lines": [], "stdout": "68.5%", "stdout_lines": ["68.5%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011140", "end": "2025-12-17 16:25:26.053740", "msg": "", "rc": 0, "start": "2025-12-17 16:25:26.042600", "stderr": "", "stderr_lines": [], "stdout": "6.7%", "stdout_lines": ["6.7%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012114", "end": "2025-12-17 16:25:26.075383", "msg": "", "rc": 0, "start": "2025-12-17 16:25:26.063269", "stderr": "", "stderr_lines": [], "stdout": "13.1%", "stdout_lines": ["13.1%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006290", "end": "2025-12-17 16:25:26.337952", "msg": "", "rc": 0, "start": "2025-12-17 16:25:26.331662", "stderr": "", "stderr_lines": [], "stdout": "35.4%", "stdout_lines": ["35.4%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005438", "end": "2025-12-17 13:25:26.538002", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 13:25:26.532564", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003809", "end": "2025-12-17 16:25:02.599030", "msg": "", "rc": 0, "start": "2025-12-17 16:25:02.595221", "stderr": "", "stderr_lines": [], "stdout": "58.1%", "stdout_lines": ["58.1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004082", "end": "2025-12-17 16:24:56.051341", "msg": "", "rc": 0, "start": "2025-12-17 16:24:56.047259", "stderr": "", "stderr_lines": [], "stdout": "26.4%", "stdout_lines": ["26.4%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005448", "end": "2025-12-17 16:25:26.818949", "msg": "", "rc": 0, "start": "2025-12-17 16:25:26.813501", "stderr": "", "stderr_lines": [], "stdout": "13.9%", "stdout_lines": ["13.9%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025791", "end": "2025-12-17 16:25:26.710699", "msg": "", "rc": 0, "start": "2025-12-17 16:25:26.684908", "stderr": "", "stderr_lines": [], "stdout": "19.7%", "stdout_lines": ["19.7%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011556", "end": "2025-12-17 16:25:27.304647", "msg": "", "rc": 0, "start": "2025-12-17 16:25:27.293091", "stderr": "", "stderr_lines": [], "stdout": "21.8%", "stdout_lines": ["21.8%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005467", "end": "2025-12-17 16:25:27.318573", "msg": "", "rc": 0, "start": "2025-12-17 16:25:27.313106", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004923", "end": "2025-12-17 16:25:27.337122", "msg": "", "rc": 0, "start": "2025-12-17 16:25:27.332199", "stderr": "", "stderr_lines": [], "stdout": "47.0°C", "stdout_lines": ["47.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005473", "end": "2025-12-17 16:25:27.348101", "msg": "", "rc": 0, "start": "2025-12-17 16:25:27.342628", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003235", "end": "2025-12-17 16:25:27.398653", "msg": "", "rc": 0, "start": "2025-12-17 16:25:27.395418", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.009429", "end": "2025-12-17 16:25:27.405361", "msg": "", "rc": 0, "start": "2025-12-17 16:25:27.395932", "stderr": "", "stderr_lines": [], "stdout": "53.0°C", "stdout_lines": ["53.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002646", "end": "2025-12-17 16:25:01.306499", "msg": "", "rc": 0, "start": "2025-12-17 16:25:01.303853", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.009488", "end": "2025-12-17 16:24:54.882129", "msg": "", "rc": 0, "start": "2025-12-17 16:24:54.872641", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011700", "end": "2025-12-17 16:25:28.055703", "msg": "", "rc": 0, "start": "2025-12-17 16:25:28.044003", "stderr": "", "stderr_lines": [], "stdout": "31.6°C", "stdout_lines": ["31.6°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013685", "end": "2025-12-17 16:25:28.106596", "msg": "", "rc": 0, "start": "2025-12-17 16:25:28.092911", "stderr": "", "stderr_lines": [], "stdout": "37.0°C", "stdout_lines": ["37.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003158", "end": "2025-12-17 16:25:28.386484", "msg": "", "rc": 0, "start": "2025-12-17 16:25:28.383326", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003851", "end": "2025-12-17 13:25:28.588601", "msg": "", "rc": 0, "start": "2025-12-17 13:25:28.584750", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003241", "end": "2025-12-17 16:25:04.644271", "msg": "", "rc": 0, "start": "2025-12-17 16:25:04.641030", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003215", "end": "2025-12-17 16:24:58.108343", "msg": "", "rc": 0, "start": "2025-12-17 16:24:58.105128", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003171", "end": "2025-12-17 16:25:28.817069", "msg": "", "rc": 0, "start": "2025-12-17 16:25:28.813898", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.029177", "end": "2025-12-17 16:25:28.755252", "msg": "", "rc": 0, "start": "2025-12-17 16:25:28.726075", "stderr": "", "stderr_lines": [], "stdout": "36.7°C", "stdout_lines": ["36.7°C"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004191", "end": "2025-12-17 16:25:29.411340", "msg": "", "rc": 0, "start": "2025-12-17 16:25:29.407149", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004116", "end": "2025-12-17 16:25:29.335748", "msg": "", "rc": 0, "start": "2025-12-17 16:25:29.331632", "stderr": "", "stderr_lines": [], "stdout": "0.29", "stdout_lines": ["0.29"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004051", "end": "2025-12-17 16:25:29.364542", "msg": "", "rc": 0, "start": "2025-12-17 16:25:29.360491", "stderr": "", "stderr_lines": [], "stdout": "0.27", "stdout_lines": ["0.27"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004582", "end": "2025-12-17 16:25:29.365035", "msg": "", "rc": 0, "start": "2025-12-17 16:25:29.360453", "stderr": "", "stderr_lines": [], "stdout": "0.58", "stdout_lines": ["0.58"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005528", "end": "2025-12-17 16:25:29.391206", "msg": "", "rc": 0, "start": "2025-12-17 16:25:29.385678", "stderr": "", "stderr_lines": [], "stdout": "0.30", "stdout_lines": ["0.30"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005374", "end": "2025-12-17 16:25:29.404757", "msg": "", "rc": 0, "start": "2025-12-17 16:25:29.399383", "stderr": "", "stderr_lines": [], "stdout": "0.97", "stdout_lines": ["0.97"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004171", "end": "2025-12-17 16:25:03.268037", "msg": "", "rc": 0, "start": "2025-12-17 16:25:03.263866", "stderr": "", "stderr_lines": [], "stdout": "0.02", "stdout_lines": ["0.02"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005147", "end": "2025-12-17 16:24:56.801147", "msg": "", "rc": 0, "start": "2025-12-17 16:24:56.796000", "stderr": "", "stderr_lines": [], "stdout": "0.11", "stdout_lines": ["0.11"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.009991", "end": "2025-12-17 16:25:30.110053", "msg": "", "rc": 0, "start": "2025-12-17 16:25:30.100062", "stderr": "", "stderr_lines": [], "stdout": "0.18", "stdout_lines": ["0.18"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011107", "end": "2025-12-17 16:25:30.181073", "msg": "", "rc": 0, "start": "2025-12-17 16:25:30.169966", "stderr": "", "stderr_lines": [], "stdout": "0.27", "stdout_lines": ["0.27"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005650", "end": "2025-12-17 16:25:30.330530", "msg": "", "rc": 0, "start": "2025-12-17 16:25:30.324880", "stderr": "", "stderr_lines": [], "stdout": "0.07", "stdout_lines": ["0.07"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005009", "end": "2025-12-17 16:24:59.978218", "msg": "", "rc": 0, "start": "2025-12-17 16:24:59.973209", "stderr": "", "stderr_lines": [], "stdout": "0.31", "stdout_lines": ["0.31"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004728", "end": "2025-12-17 16:25:06.673767", "msg": "", "rc": 0, "start": "2025-12-17 16:25:06.669039", "stderr": "", "stderr_lines": [], "stdout": "0.15", "stdout_lines": ["0.15"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006048", "end": "2025-12-17 13:25:30.662414", "msg": "", "rc": 0, "start": "2025-12-17 13:25:30.656366", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005319", "end": "2025-12-17 16:25:30.775748", "msg": "", "rc": 0, "start": "2025-12-17 16:25:30.770429", "stderr": "", "stderr_lines": [], "stdout": "0.09", "stdout_lines": ["0.09"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.009803", "end": "2025-12-17 16:25:31.385129", "msg": "", "rc": 0, "start": "2025-12-17 16:25:31.375326", "stderr": "", "stderr_lines": [], "stdout": "1.86", "stdout_lines": ["1.86"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024262", "end": "2025-12-17 16:25:30.721208", "msg": "", "rc": 0, "start": "2025-12-17 16:25:30.696946", "stderr": "", "stderr_lines": [], "stdout": "0.17", "stdout_lines": ["0.17"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:25:20 up 3 days, 5:57, 1 user, load average: 0.22, 0.20, 0.21\nDisk Usage: 22%\nMemory Usage: 22.5%\nCPU Load: 0.27\nCPU Temp: 47.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:25:20 up 22 days, 3:16, 1 user, load average: 0.25, 0.19, 0.25\nDisk Usage: 23%\nMemory Usage: 77.4%\nCPU Load: 0.29\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:25:20 up 22 days, 3:36, 1 user, load average: 0.69, 0.68, 0.69\nDisk Usage: 14%\nMemory Usage: 49.3%\nCPU Load: 0.58\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:25:20 up 22 days, 4:49, 1 user, load average: 0.88, 0.86, 0.75\nDisk Usage: 14%\nMemory Usage: 59.7%\nCPU Load: 0.97\nCPU Temp: 53.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:25:20 up 22 days, 5:35, 1 user, load average: 0.15, 0.06, 0.02\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.30\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:25:22 up 15 days, 5:51, 1 user, load average: 0.10, 0.12, 0.10\nDisk Usage: 21%\nMemory Usage: 19.7%\nCPU Load: 0.17\nCPU Temp: 36.7°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:25:21 up 194 days, 7:58, 1 user, load average: 0.20, 0.20, 0.22\nDisk Usage: 6%\nMemory Usage: 13.1%\nCPU Load: 0.27\nCPU Temp: 37.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:25:21 up 194 days, 7:58, 1 user, load average: 0.13, 0.16, 0.12\nDisk Usage: 3%\nMemory Usage: 6.7%\nCPU Load: 0.18\nCPU Temp: 31.6°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:24:55 up 11 days, 4:14, 0 user, load average: 0.02, 0.10, 0.16\nDisk Usage: 48%\nMemory Usage: 70.8%\nCPU Load: 0.02\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:24:49 up 18 days, 26 min, 0 user, load average: 0.12, 0.19, 0.14\nDisk Usage: 25%\nMemory Usage: 68.5%\nCPU Load: 0.11\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:25:22 up 3 days, 5:56, 1 user, load average: 0.09, 0.09, 0.04\nDisk Usage: 1%\nMemory Usage: 35.4%\nCPU Load: 0.07\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:24:52 up 20 days, 19:19, 0 user, load average: 0.28, 0.38, 0.43\nDisk Usage: 28%\nMemory Usage: 26.4%\nCPU Load: 0.31\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:24:58 up 17 days, 5:40, 0 user, load average: 0.09, 0.21, 0.18\nDisk Usage: 76%\nMemory Usage: 58.1%\nCPU Load: 0.15\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 1:25PM up 22 days, 3:15, 1 user, load averages: 0.39, 0.28, 0.20\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:25:22 up 3 days, 5:57, 1 user, load average: 0.01, 0.04, 0.01\nDisk Usage: 79%\nMemory Usage: 13.9%\nCPU Load: 0.09\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:25:23 up 3:30, 1 user, load average: 1.83, 1.46, 1.41\nDisk Usage: 1%\nMemory Usage: 21.8%\nCPU Load: 1.86\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T21:25:32.343366+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_213022_047da4_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_213022_047da4_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..2071666 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_213022_047da4_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `8202dd0ce7a54c7fabbb9c7a59670f6c` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T21:30:00.001092+00:00 | +| **Fin** | 2025-12-17T21:30:22.428111+00:00 | +| **Durée** | 22.4s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [dev.prod.home] +ok: [hp.truenas.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003595", "end": "2025-12-17 16:30:11.414419", "msg": "", "rc": 0, "start": "2025-12-17 16:30:11.410824", "stderr": "", "stderr_lines": [], "stdout": " 16:30:11 up 22 days, 3:21, 1 user, load average: 0.07, 0.14, 0.21", "stdout_lines": [" 16:30:11 up 22 days, 3:21, 1 user, load average: 0.07, 0.14, 0.21"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003508", "end": "2025-12-17 16:30:11.425675", "msg": "", "rc": 0, "start": "2025-12-17 16:30:11.422167", "stderr": "", "stderr_lines": [], "stdout": " 16:30:11 up 22 days, 5:40, 1 user, load average: 0.00, 0.03, 0.00", "stdout_lines": [" 16:30:11 up 22 days, 5:40, 1 user, load average: 0.00, 0.03, 0.00"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003236", "end": "2025-12-17 16:30:11.445943", "msg": "", "rc": 0, "start": "2025-12-17 16:30:11.442707", "stderr": "", "stderr_lines": [], "stdout": " 16:30:11 up 22 days, 3:41, 1 user, load average: 1.28, 0.77, 0.70", "stdout_lines": [" 16:30:11 up 22 days, 3:41, 1 user, load average: 1.28, 0.77, 0.70"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002993", "end": "2025-12-17 16:30:11.460559", "msg": "", "rc": 0, "start": "2025-12-17 16:30:11.457566", "stderr": "", "stderr_lines": [], "stdout": " 16:30:11 up 3 days, 6:02, 1 user, load average: 0.76, 0.46, 0.31", "stdout_lines": [" 16:30:11 up 3 days, 6:02, 1 user, load average: 0.76, 0.46, 0.31"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004364", "end": "2025-12-17 16:30:11.459637", "msg": "", "rc": 0, "start": "2025-12-17 16:30:11.455273", "stderr": "", "stderr_lines": [], "stdout": " 16:30:11 up 22 days, 4:54, 1 user, load average: 0.86, 0.85, 0.77", "stdout_lines": [" 16:30:11 up 22 days, 4:54, 1 user, load average: 0.86, 0.85, 0.77"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002971", "end": "2025-12-17 16:29:45.336504", "msg": "", "rc": 0, "start": "2025-12-17 16:29:45.333533", "stderr": "", "stderr_lines": [], "stdout": " 16:29:45 up 11 days, 4:19, 0 user, load average: 0.02, 0.05, 0.11", "stdout_lines": [" 16:29:45 up 11 days, 4:19, 0 user, load average: 0.02, 0.05, 0.11"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003567", "end": "2025-12-17 16:29:38.888301", "msg": "", "rc": 0, "start": "2025-12-17 16:29:38.884734", "stderr": "", "stderr_lines": [], "stdout": " 16:29:38 up 18 days, 31 min, 0 user, load average: 0.00, 0.06, 0.09", "stdout_lines": [" 16:29:38 up 18 days, 31 min, 0 user, load average: 0.00, 0.06, 0.09"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008455", "end": "2025-12-17 16:30:12.095325", "msg": "", "rc": 0, "start": "2025-12-17 16:30:12.086870", "stderr": "", "stderr_lines": [], "stdout": " 16:30:12 up 194 days, 8:03, 1 user, load average: 0.23, 0.16, 0.11", "stdout_lines": [" 16:30:12 up 194 days, 8:03, 1 user, load average: 0.23, 0.16, 0.11"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009346", "end": "2025-12-17 16:30:12.140175", "msg": "", "rc": 0, "start": "2025-12-17 16:30:12.130829", "stderr": "", "stderr_lines": [], "stdout": " 16:30:12 up 194 days, 8:03, 1 user, load average: 0.27, 0.22, 0.21", "stdout_lines": [" 16:30:12 up 194 days, 8:03, 1 user, load average: 0.27, 0.22, 0.21"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004755", "end": "2025-12-17 16:30:12.394778", "msg": "", "rc": 0, "start": "2025-12-17 16:30:12.390023", "stderr": "", "stderr_lines": [], "stdout": " 16:30:12 up 3 days, 6:01, 1 user, load average: 0.00, 0.03, 0.02", "stdout_lines": [" 16:30:12 up 3 days, 6:01, 1 user, load average: 0.00, 0.03, 0.02"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003448", "end": "2025-12-17 16:29:42.144480", "msg": "", "rc": 0, "start": "2025-12-17 16:29:42.141032", "stderr": "", "stderr_lines": [], "stdout": " 16:29:42 up 20 days, 19:24, 0 user, load average: 0.36, 0.35, 0.40", "stdout_lines": [" 16:29:42 up 20 days, 19:24, 0 user, load average: 0.36, 0.35, 0.40"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.006294", "end": "2025-12-17 16:29:48.723381", "msg": "", "rc": 0, "start": "2025-12-17 16:29:48.717087", "stderr": "", "stderr_lines": [], "stdout": " 16:29:48 up 17 days, 5:45, 0 user, load average: 0.11, 0.16, 0.17", "stdout_lines": [" 16:29:48 up 17 days, 5:45, 0 user, load average: 0.11, 0.16, 0.17"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004241", "end": "2025-12-17 13:30:12.691300", "msg": "", "rc": 0, "start": "2025-12-17 13:30:12.687059", "stderr": "", "stderr_lines": [], "stdout": " 1:30PM up 22 days, 3:20, 1 user, load averages: 0.19, 0.22, 0.18", "stdout_lines": [" 1:30PM up 22 days, 3:20, 1 user, load averages: 0.19, 0.22, 0.18"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003731", "end": "2025-12-17 16:30:12.893157", "msg": "", "rc": 0, "start": "2025-12-17 16:30:12.889426", "stderr": "", "stderr_lines": [], "stdout": " 16:30:12 up 3 days, 6:01, 1 user, load average: 0.00, 0.01, 0.00", "stdout_lines": [" 16:30:12 up 3 days, 6:01, 1 user, load average: 0.00, 0.01, 0.00"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019358", "end": "2025-12-17 16:30:12.807645", "msg": "", "rc": 0, "start": "2025-12-17 16:30:12.788287", "stderr": "", "stderr_lines": [], "stdout": " 16:30:12 up 15 days, 5:56, 1 user, load average: 0.22, 0.14, 0.10", "stdout_lines": [" 16:30:12 up 15 days, 5:56, 1 user, load average: 0.22, 0.14, 0.10"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.006909", "end": "2025-12-17 16:30:13.318801", "msg": "", "rc": 0, "start": "2025-12-17 16:30:13.311892", "stderr": "", "stderr_lines": [], "stdout": " 16:30:13 up 3:35, 1 user, load average: 1.56, 1.34, 1.36", "stdout_lines": [" 16:30:13 up 3:35, 1 user, load average: 1.56, 1.34, 1.36"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004382", "end": "2025-12-17 16:30:13.440194", "msg": "", "rc": 0, "start": "2025-12-17 16:30:13.435812", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004745", "end": "2025-12-17 16:30:13.454413", "msg": "", "rc": 0, "start": "2025-12-17 16:30:13.449668", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004076", "end": "2025-12-17 16:30:13.481577", "msg": "", "rc": 0, "start": "2025-12-17 16:30:13.477501", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004915", "end": "2025-12-17 16:30:13.500342", "msg": "", "rc": 0, "start": "2025-12-17 16:30:13.495427", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005876", "end": "2025-12-17 16:30:13.509495", "msg": "", "rc": 0, "start": "2025-12-17 16:30:13.503619", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005709", "end": "2025-12-17 16:29:47.382720", "msg": "", "rc": 0, "start": "2025-12-17 16:29:47.377011", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005814", "end": "2025-12-17 16:29:40.920837", "msg": "", "rc": 0, "start": "2025-12-17 16:29:40.915023", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010606", "end": "2025-12-17 16:30:14.207831", "msg": "", "rc": 0, "start": "2025-12-17 16:30:14.197225", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011544", "end": "2025-12-17 16:30:14.245582", "msg": "", "rc": 0, "start": "2025-12-17 16:30:14.234038", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005740", "end": "2025-12-17 16:30:14.439616", "msg": "", "rc": 0, "start": "2025-12-17 16:30:14.433876", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005775", "end": "2025-12-17 16:29:44.131098", "msg": "", "rc": 0, "start": "2025-12-17 16:29:44.125323", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005754", "end": "2025-12-17 13:30:14.739625", "msg": "", "rc": 0, "start": "2025-12-17 13:30:14.733871", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005255", "end": "2025-12-17 16:29:50.785791", "msg": "", "rc": 0, "start": "2025-12-17 16:29:50.780536", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005432", "end": "2025-12-17 16:30:14.884772", "msg": "", "rc": 0, "start": "2025-12-17 16:30:14.879340", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.024919", "end": "2025-12-17 16:30:14.837129", "msg": "", "rc": 0, "start": "2025-12-17 16:30:14.812210", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010281", "end": "2025-12-17 16:30:15.348377", "msg": "", "rc": 0, "start": "2025-12-17 16:30:15.338096", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004276", "end": "2025-12-17 16:30:15.376421", "msg": "", "rc": 0, "start": "2025-12-17 16:30:15.372145", "stderr": "", "stderr_lines": [], "stdout": "77.4%", "stdout_lines": ["77.4%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004136", "end": "2025-12-17 16:30:15.394632", "msg": "", "rc": 0, "start": "2025-12-17 16:30:15.390496", "stderr": "", "stderr_lines": [], "stdout": "22.5%", "stdout_lines": ["22.5%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004616", "end": "2025-12-17 16:30:15.420584", "msg": "", "rc": 0, "start": "2025-12-17 16:30:15.415968", "stderr": "", "stderr_lines": [], "stdout": "49.2%", "stdout_lines": ["49.2%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005627", "end": "2025-12-17 16:30:15.444176", "msg": "", "rc": 0, "start": "2025-12-17 16:30:15.438549", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005435", "end": "2025-12-17 16:30:15.451743", "msg": "", "rc": 0, "start": "2025-12-17 16:30:15.446308", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004409", "end": "2025-12-17 16:29:49.337934", "msg": "", "rc": 0, "start": "2025-12-17 16:29:49.333525", "stderr": "", "stderr_lines": [], "stdout": "70.8%", "stdout_lines": ["70.8%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004333", "end": "2025-12-17 16:29:42.870442", "msg": "", "rc": 0, "start": "2025-12-17 16:29:42.866109", "stderr": "", "stderr_lines": [], "stdout": "68.4%", "stdout_lines": ["68.4%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011985", "end": "2025-12-17 16:30:16.119990", "msg": "", "rc": 0, "start": "2025-12-17 16:30:16.108005", "stderr": "", "stderr_lines": [], "stdout": "12.8%", "stdout_lines": ["12.8%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010885", "end": "2025-12-17 16:30:16.131426", "msg": "", "rc": 0, "start": "2025-12-17 16:30:16.120541", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006078", "end": "2025-12-17 16:30:16.402185", "msg": "", "rc": 0, "start": "2025-12-17 16:30:16.396107", "stderr": "", "stderr_lines": [], "stdout": "35.4%", "stdout_lines": ["35.4%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004707", "end": "2025-12-17 16:29:46.059461", "msg": "", "rc": 0, "start": "2025-12-17 16:29:46.054754", "stderr": "", "stderr_lines": [], "stdout": "27.4%", "stdout_lines": ["27.4%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005269", "end": "2025-12-17 13:30:16.602488", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 13:30:16.597219", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006845", "end": "2025-12-17 16:29:52.689306", "msg": "", "rc": 0, "start": "2025-12-17 16:29:52.682461", "stderr": "", "stderr_lines": [], "stdout": "55.0%", "stdout_lines": ["55.0%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005481", "end": "2025-12-17 16:30:16.853345", "msg": "", "rc": 0, "start": "2025-12-17 16:30:16.847864", "stderr": "", "stderr_lines": [], "stdout": "13.9%", "stdout_lines": ["13.9%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025900", "end": "2025-12-17 16:30:16.784109", "msg": "", "rc": 0, "start": "2025-12-17 16:30:16.758209", "stderr": "", "stderr_lines": [], "stdout": "19.9%", "stdout_lines": ["19.9%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011963", "end": "2025-12-17 16:30:17.380215", "msg": "", "rc": 0, "start": "2025-12-17 16:30:17.368252", "stderr": "", "stderr_lines": [], "stdout": "21.8%", "stdout_lines": ["21.8%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005427", "end": "2025-12-17 16:30:17.344616", "msg": "", "rc": 0, "start": "2025-12-17 16:30:17.339189", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005691", "end": "2025-12-17 16:30:17.372687", "msg": "", "rc": 0, "start": "2025-12-17 16:30:17.366996", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005142", "end": "2025-12-17 16:30:17.376856", "msg": "", "rc": 0, "start": "2025-12-17 16:30:17.371714", "stderr": "", "stderr_lines": [], "stdout": "47.0°C", "stdout_lines": ["47.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003462", "end": "2025-12-17 16:30:17.397380", "msg": "", "rc": 0, "start": "2025-12-17 16:30:17.393918", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006285", "end": "2025-12-17 16:30:17.411361", "msg": "", "rc": 0, "start": "2025-12-17 16:30:17.405076", "stderr": "", "stderr_lines": [], "stdout": "53.0°C", "stdout_lines": ["53.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003020", "end": "2025-12-17 16:29:51.324663", "msg": "", "rc": 0, "start": "2025-12-17 16:29:51.321643", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003227", "end": "2025-12-17 16:29:44.838008", "msg": "", "rc": 0, "start": "2025-12-17 16:29:44.834781", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011787", "end": "2025-12-17 16:30:18.081633", "msg": "", "rc": 0, "start": "2025-12-17 16:30:18.069846", "stderr": "", "stderr_lines": [], "stdout": "32.1°C", "stdout_lines": ["32.1°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012919", "end": "2025-12-17 16:30:18.114946", "msg": "", "rc": 0, "start": "2025-12-17 16:30:18.102027", "stderr": "", "stderr_lines": [], "stdout": "37.0°C", "stdout_lines": ["37.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003264", "end": "2025-12-17 16:30:18.371691", "msg": "", "rc": 0, "start": "2025-12-17 16:30:18.368427", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003045", "end": "2025-12-17 16:29:48.032304", "msg": "", "rc": 0, "start": "2025-12-17 16:29:48.029259", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002578", "end": "2025-12-17 16:29:54.640105", "msg": "", "rc": 0, "start": "2025-12-17 16:29:54.637527", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004249", "end": "2025-12-17 13:30:18.589559", "msg": "", "rc": 0, "start": "2025-12-17 13:30:18.585310", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002941", "end": "2025-12-17 16:30:18.810514", "msg": "", "rc": 0, "start": "2025-12-17 16:30:18.807573", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028486", "end": "2025-12-17 16:30:18.772061", "msg": "", "rc": 0, "start": "2025-12-17 16:30:18.743575", "stderr": "", "stderr_lines": [], "stdout": "36.0°C", "stdout_lines": ["36.0°C"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004869", "end": "2025-12-17 16:30:19.448350", "msg": "", "rc": 0, "start": "2025-12-17 16:30:19.443481", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004292", "end": "2025-12-17 16:30:19.312618", "msg": "", "rc": 0, "start": "2025-12-17 16:30:19.308326", "stderr": "", "stderr_lines": [], "stdout": "0.14", "stdout_lines": ["0.14"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.003979", "end": "2025-12-17 16:30:19.322907", "msg": "", "rc": 0, "start": "2025-12-17 16:30:19.318928", "stderr": "", "stderr_lines": [], "stdout": "1.10", "stdout_lines": ["1.10"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004810", "end": "2025-12-17 16:30:19.333807", "msg": "", "rc": 0, "start": "2025-12-17 16:30:19.328997", "stderr": "", "stderr_lines": [], "stdout": "1.16", "stdout_lines": ["1.16"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005104", "end": "2025-12-17 16:30:19.362077", "msg": "", "rc": 0, "start": "2025-12-17 16:30:19.356973", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005327", "end": "2025-12-17 16:30:19.369662", "msg": "", "rc": 0, "start": "2025-12-17 16:30:19.364335", "stderr": "", "stderr_lines": [], "stdout": "0.95", "stdout_lines": ["0.95"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004504", "end": "2025-12-17 16:29:53.292908", "msg": "", "rc": 0, "start": "2025-12-17 16:29:53.288404", "stderr": "", "stderr_lines": [], "stdout": "0.10", "stdout_lines": ["0.10"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005170", "end": "2025-12-17 16:29:46.784923", "msg": "", "rc": 0, "start": "2025-12-17 16:29:46.779753", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010071", "end": "2025-12-17 16:30:20.102809", "msg": "", "rc": 0, "start": "2025-12-17 16:30:20.092738", "stderr": "", "stderr_lines": [], "stdout": "0.21", "stdout_lines": ["0.21"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011398", "end": "2025-12-17 16:30:20.156141", "msg": "", "rc": 0, "start": "2025-12-17 16:30:20.144743", "stderr": "", "stderr_lines": [], "stdout": "0.33", "stdout_lines": ["0.33"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005920", "end": "2025-12-17 16:30:20.360533", "msg": "", "rc": 0, "start": "2025-12-17 16:30:20.354613", "stderr": "", "stderr_lines": [], "stdout": "0.24", "stdout_lines": ["0.24"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004953", "end": "2025-12-17 16:29:49.982238", "msg": "", "rc": 0, "start": "2025-12-17 16:29:49.977285", "stderr": "", "stderr_lines": [], "stdout": "0.39", "stdout_lines": ["0.39"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004324", "end": "2025-12-17 16:29:56.635541", "msg": "", "rc": 0, "start": "2025-12-17 16:29:56.631217", "stderr": "", "stderr_lines": [], "stdout": "0.09", "stdout_lines": ["0.09"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005917", "end": "2025-12-17 13:30:20.632989", "msg": "", "rc": 0, "start": "2025-12-17 13:30:20.627072", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005304", "end": "2025-12-17 16:30:20.824387", "msg": "", "rc": 0, "start": "2025-12-17 16:30:20.819083", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024268", "end": "2025-12-17 16:30:20.734699", "msg": "", "rc": 0, "start": "2025-12-17 16:30:20.710431", "stderr": "", "stderr_lines": [], "stdout": "0.28", "stdout_lines": ["0.28"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011988", "end": "2025-12-17 16:30:21.496737", "msg": "", "rc": 0, "start": "2025-12-17 16:30:21.484749", "stderr": "", "stderr_lines": [], "stdout": "1.63", "stdout_lines": ["1.63"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:30:11 up 3 days, 6:02, 1 user, load average: 0.76, 0.46, 0.31\nDisk Usage: 22%\nMemory Usage: 22.5%\nCPU Load: 1.10\nCPU Temp: 47.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:30:11 up 22 days, 3:21, 1 user, load average: 0.07, 0.14, 0.21\nDisk Usage: 23%\nMemory Usage: 77.4%\nCPU Load: 0.14\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:30:11 up 22 days, 3:41, 1 user, load average: 1.28, 0.77, 0.70\nDisk Usage: 14%\nMemory Usage: 49.2%\nCPU Load: 1.16\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:30:11 up 22 days, 4:54, 1 user, load average: 0.86, 0.85, 0.77\nDisk Usage: 14%\nMemory Usage: 59.7%\nCPU Load: 0.95\nCPU Temp: 53.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:30:11 up 22 days, 5:40, 1 user, load average: 0.00, 0.03, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:30:12 up 15 days, 5:56, 1 user, load average: 0.22, 0.14, 0.10\nDisk Usage: 21%\nMemory Usage: 19.9%\nCPU Load: 0.28\nCPU Temp: 36.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:30:12 up 194 days, 8:03, 1 user, load average: 0.27, 0.22, 0.21\nDisk Usage: 6%\nMemory Usage: 12.8%\nCPU Load: 0.33\nCPU Temp: 37.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:30:12 up 194 days, 8:03, 1 user, load average: 0.23, 0.16, 0.11\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.21\nCPU Temp: 32.1°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:29:45 up 11 days, 4:19, 0 user, load average: 0.02, 0.05, 0.11\nDisk Usage: 48%\nMemory Usage: 70.8%\nCPU Load: 0.10\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:29:38 up 18 days, 31 min, 0 user, load average: 0.00, 0.06, 0.09\nDisk Usage: 25%\nMemory Usage: 68.4%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:30:12 up 3 days, 6:01, 1 user, load average: 0.00, 0.03, 0.02\nDisk Usage: 1%\nMemory Usage: 35.4%\nCPU Load: 0.24\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:29:42 up 20 days, 19:24, 0 user, load average: 0.36, 0.35, 0.40\nDisk Usage: 28%\nMemory Usage: 27.4%\nCPU Load: 0.39\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:29:48 up 17 days, 5:45, 0 user, load average: 0.11, 0.16, 0.17\nDisk Usage: 76%\nMemory Usage: 55.0%\nCPU Load: 0.09\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 1:30PM up 22 days, 3:20, 1 user, load averages: 0.19, 0.22, 0.18\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:30:12 up 3 days, 6:01, 1 user, load average: 0.00, 0.01, 0.00\nDisk Usage: 79%\nMemory Usage: 13.9%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:30:13 up 3:35, 1 user, load average: 1.56, 1.34, 1.36\nDisk Usage: 1%\nMemory Usage: 21.8%\nCPU Load: 1.63\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T21:30:22.469007+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_213523_8d07bf_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_213523_8d07bf_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..9449cc9 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_213523_8d07bf_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `62ae086eec2f424681fa4a09ea67d84f` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T21:35:00.001299+00:00 | +| **Fin** | 2025-12-17T21:35:23.273744+00:00 | +| **Durée** | 23.3s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003358", "end": "2025-12-17 16:35:11.556174", "msg": "", "rc": 0, "start": "2025-12-17 16:35:11.552816", "stderr": "", "stderr_lines": [], "stdout": " 16:35:11 up 22 days, 3:46, 1 user, load average: 0.65, 0.94, 0.83", "stdout_lines": [" 16:35:11 up 22 days, 3:46, 1 user, load average: 0.65, 0.94, 0.83"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004063", "end": "2025-12-17 16:35:11.561396", "msg": "", "rc": 0, "start": "2025-12-17 16:35:11.557333", "stderr": "", "stderr_lines": [], "stdout": " 16:35:11 up 22 days, 5:45, 1 user, load average: 0.00, 0.02, 0.00", "stdout_lines": [" 16:35:11 up 22 days, 5:45, 1 user, load average: 0.00, 0.02, 0.00"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002817", "end": "2025-12-17 16:35:11.584864", "msg": "", "rc": 0, "start": "2025-12-17 16:35:11.582047", "stderr": "", "stderr_lines": [], "stdout": " 16:35:11 up 3 days, 6:07, 1 user, load average: 0.76, 0.69, 0.45", "stdout_lines": [" 16:35:11 up 3 days, 6:07, 1 user, load average: 0.76, 0.69, 0.45"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003847", "end": "2025-12-17 16:35:11.592494", "msg": "", "rc": 0, "start": "2025-12-17 16:35:11.588647", "stderr": "", "stderr_lines": [], "stdout": " 16:35:11 up 22 days, 4:59, 1 user, load average: 0.76, 0.77, 0.76", "stdout_lines": [" 16:35:11 up 22 days, 4:59, 1 user, load average: 0.76, 0.77, 0.76"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003622", "end": "2025-12-17 16:34:45.500878", "msg": "", "rc": 0, "start": "2025-12-17 16:34:45.497256", "stderr": "", "stderr_lines": [], "stdout": " 16:34:45 up 11 days, 4:24, 0 user, load average: 0.08, 0.07, 0.09", "stdout_lines": [" 16:34:45 up 11 days, 4:24, 0 user, load average: 0.08, 0.07, 0.09"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008367", "end": "2025-12-17 16:35:12.260439", "msg": "", "rc": 0, "start": "2025-12-17 16:35:12.252072", "stderr": "", "stderr_lines": [], "stdout": " 16:35:12 up 194 days, 8:08, 1 user, load average: 0.34, 0.17, 0.11", "stdout_lines": [" 16:35:12 up 194 days, 8:08, 1 user, load average: 0.34, 0.17, 0.11"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009173", "end": "2025-12-17 16:35:12.320471", "msg": "", "rc": 0, "start": "2025-12-17 16:35:12.311298", "stderr": "", "stderr_lines": [], "stdout": " 16:35:12 up 194 days, 8:08, 1 user, load average: 0.28, 0.20, 0.19", "stdout_lines": [" 16:35:12 up 194 days, 8:08, 1 user, load average: 0.28, 0.20, 0.19"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004438", "end": "2025-12-17 16:35:12.548389", "msg": "", "rc": 0, "start": "2025-12-17 16:35:11.543951", "stderr": "", "stderr_lines": [], "stdout": " 16:35:11 up 22 days, 3:26, 1 user, load average: 0.06, 0.10, 0.17", "stdout_lines": [" 16:35:11 up 22 days, 3:26, 1 user, load average: 0.06, 0.10, 0.17"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003982", "end": "2025-12-17 16:34:39.484096", "msg": "", "rc": 0, "start": "2025-12-17 16:34:39.480114", "stderr": "", "stderr_lines": [], "stdout": " 16:34:39 up 18 days, 36 min, 0 user, load average: 0.01, 0.04, 0.07", "stdout_lines": [" 16:34:39 up 18 days, 36 min, 0 user, load average: 0.01, 0.04, 0.07"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004779", "end": "2025-12-17 16:35:12.832259", "msg": "", "rc": 0, "start": "2025-12-17 16:35:12.827480", "stderr": "", "stderr_lines": [], "stdout": " 16:35:12 up 3 days, 6:06, 1 user, load average: 0.01, 0.07, 0.04", "stdout_lines": [" 16:35:12 up 3 days, 6:06, 1 user, load average: 0.01, 0.07, 0.04"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003438", "end": "2025-12-17 16:34:42.508146", "msg": "", "rc": 0, "start": "2025-12-17 16:34:42.504708", "stderr": "", "stderr_lines": [], "stdout": " 16:34:42 up 20 days, 19:29, 0 user, load average: 0.51, 0.47, 0.44", "stdout_lines": [" 16:34:42 up 20 days, 19:29, 0 user, load average: 0.51, 0.47, 0.44"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.007354", "end": "2025-12-17 16:34:49.101952", "msg": "", "rc": 0, "start": "2025-12-17 16:34:49.094598", "stderr": "", "stderr_lines": [], "stdout": " 16:34:49 up 17 days, 5:50, 0 user, load average: 0.35, 0.20, 0.18", "stdout_lines": [" 16:34:49 up 17 days, 5:50, 0 user, load average: 0.35, 0.20, 0.18"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004485", "end": "2025-12-17 13:35:13.090215", "msg": "", "rc": 0, "start": "2025-12-17 13:35:13.085730", "stderr": "", "stderr_lines": [], "stdout": " 1:35PM up 22 days, 3:25, 1 user, load averages: 0.43, 0.27, 0.19", "stdout_lines": [" 1:35PM up 22 days, 3:25, 1 user, load averages: 0.43, 0.27, 0.19"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019382", "end": "2025-12-17 16:35:12.989721", "msg": "", "rc": 0, "start": "2025-12-17 16:35:12.970339", "stderr": "", "stderr_lines": [], "stdout": " 16:35:12 up 15 days, 6:01, 1 user, load average: 0.19, 0.16, 0.11", "stdout_lines": [" 16:35:12 up 15 days, 6:01, 1 user, load average: 0.19, 0.16, 0.11"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003792", "end": "2025-12-17 16:35:13.275359", "msg": "", "rc": 0, "start": "2025-12-17 16:35:13.271567", "stderr": "", "stderr_lines": [], "stdout": " 16:35:13 up 3 days, 6:06, 1 user, load average: 0.26, 0.08, 0.02", "stdout_lines": [" 16:35:13 up 3 days, 6:06, 1 user, load average: 0.26, 0.08, 0.02"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.007139", "end": "2025-12-17 16:35:14.161195", "msg": "", "rc": 0, "start": "2025-12-17 16:35:14.154056", "stderr": "", "stderr_lines": [], "stdout": " 16:35:14 up 3:40, 1 user, load average: 1.54, 1.31, 1.33", "stdout_lines": [" 16:35:14 up 3:40, 1 user, load average: 1.54, 1.31, 1.33"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004294", "end": "2025-12-17 16:35:13.794942", "msg": "", "rc": 0, "start": "2025-12-17 16:35:13.790648", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004123", "end": "2025-12-17 16:35:13.799275", "msg": "", "rc": 0, "start": "2025-12-17 16:35:13.795152", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004674", "end": "2025-12-17 16:35:13.817284", "msg": "", "rc": 0, "start": "2025-12-17 16:35:13.812610", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004542", "end": "2025-12-17 16:35:13.843170", "msg": "", "rc": 0, "start": "2025-12-17 16:35:13.838628", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.007209", "end": "2025-12-17 16:35:13.870843", "msg": "", "rc": 0, "start": "2025-12-17 16:35:13.863634", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005072", "end": "2025-12-17 16:34:47.764277", "msg": "", "rc": 0, "start": "2025-12-17 16:34:47.759205", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.007601", "end": "2025-12-17 16:34:41.307125", "msg": "", "rc": 0, "start": "2025-12-17 16:34:41.299524", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010649", "end": "2025-12-17 16:35:14.569335", "msg": "", "rc": 0, "start": "2025-12-17 16:35:14.558686", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011500", "end": "2025-12-17 16:35:14.602683", "msg": "", "rc": 0, "start": "2025-12-17 16:35:14.591183", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005822", "end": "2025-12-17 16:35:14.835836", "msg": "", "rc": 0, "start": "2025-12-17 16:35:14.830014", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005332", "end": "2025-12-17 16:34:44.508326", "msg": "", "rc": 0, "start": "2025-12-17 16:34:44.502994", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005280", "end": "2025-12-17 13:35:15.084065", "msg": "", "rc": 0, "start": "2025-12-17 13:35:15.078785", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.009122", "end": "2025-12-17 16:34:51.156537", "msg": "", "rc": 0, "start": "2025-12-17 16:34:51.147415", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005570", "end": "2025-12-17 16:35:15.282139", "msg": "", "rc": 0, "start": "2025-12-17 16:35:15.276569", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025417", "end": "2025-12-17 16:35:15.191611", "msg": "", "rc": 0, "start": "2025-12-17 16:35:15.166194", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010306", "end": "2025-12-17 16:35:16.254122", "msg": "", "rc": 0, "start": "2025-12-17 16:35:16.243816", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004205", "end": "2025-12-17 16:35:15.777140", "msg": "", "rc": 0, "start": "2025-12-17 16:35:15.772935", "stderr": "", "stderr_lines": [], "stdout": "77.5%", "stdout_lines": ["77.5%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004202", "end": "2025-12-17 16:35:15.801547", "msg": "", "rc": 0, "start": "2025-12-17 16:35:15.797345", "stderr": "", "stderr_lines": [], "stdout": "22.5%", "stdout_lines": ["22.5%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005105", "end": "2025-12-17 16:35:15.829719", "msg": "", "rc": 0, "start": "2025-12-17 16:35:15.824614", "stderr": "", "stderr_lines": [], "stdout": "49.2%", "stdout_lines": ["49.2%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004875", "end": "2025-12-17 16:35:15.842586", "msg": "", "rc": 0, "start": "2025-12-17 16:35:15.837711", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005814", "end": "2025-12-17 16:35:15.846125", "msg": "", "rc": 0, "start": "2025-12-17 16:35:15.840311", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003837", "end": "2025-12-17 16:34:49.749427", "msg": "", "rc": 0, "start": "2025-12-17 16:34:49.745590", "stderr": "", "stderr_lines": [], "stdout": "71.0%", "stdout_lines": ["71.0%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004391", "end": "2025-12-17 16:34:43.272539", "msg": "", "rc": 0, "start": "2025-12-17 16:34:43.268148", "stderr": "", "stderr_lines": [], "stdout": "68.5%", "stdout_lines": ["68.5%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010983", "end": "2025-12-17 16:35:16.524926", "msg": "", "rc": 0, "start": "2025-12-17 16:35:16.513943", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011783", "end": "2025-12-17 16:35:16.556302", "msg": "", "rc": 0, "start": "2025-12-17 16:35:16.544519", "stderr": "", "stderr_lines": [], "stdout": "13.2%", "stdout_lines": ["13.2%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005782", "end": "2025-12-17 16:35:16.787697", "msg": "", "rc": 0, "start": "2025-12-17 16:35:16.781915", "stderr": "", "stderr_lines": [], "stdout": "35.3%", "stdout_lines": ["35.3%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004732", "end": "2025-12-17 16:34:46.450707", "msg": "", "rc": 0, "start": "2025-12-17 16:34:46.445975", "stderr": "", "stderr_lines": [], "stdout": "27.2%", "stdout_lines": ["27.2%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005264", "end": "2025-12-17 13:35:17.024544", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 13:35:17.019280", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.007798", "end": "2025-12-17 16:34:53.080565", "msg": "", "rc": 0, "start": "2025-12-17 16:34:53.072767", "stderr": "", "stderr_lines": [], "stdout": "54.5%", "stdout_lines": ["54.5%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005493", "end": "2025-12-17 16:35:17.216866", "msg": "", "rc": 0, "start": "2025-12-17 16:35:17.211373", "stderr": "", "stderr_lines": [], "stdout": "14.1%", "stdout_lines": ["14.1%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010107", "end": "2025-12-17 16:35:18.256390", "msg": "", "rc": 0, "start": "2025-12-17 16:35:18.246283", "stderr": "", "stderr_lines": [], "stdout": "22.0%", "stdout_lines": ["22.0%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025703", "end": "2025-12-17 16:35:17.191258", "msg": "", "rc": 0, "start": "2025-12-17 16:35:17.165555", "stderr": "", "stderr_lines": [], "stdout": "19.5%", "stdout_lines": ["19.5%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004970", "end": "2025-12-17 16:35:17.737624", "msg": "", "rc": 0, "start": "2025-12-17 16:35:17.732654", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005748", "end": "2025-12-17 16:35:17.746039", "msg": "", "rc": 0, "start": "2025-12-17 16:35:17.740291", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006109", "end": "2025-12-17 16:35:17.762204", "msg": "", "rc": 0, "start": "2025-12-17 16:35:17.756095", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002866", "end": "2025-12-17 16:35:17.771732", "msg": "", "rc": 0, "start": "2025-12-17 16:35:17.768866", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.007057", "end": "2025-12-17 16:35:17.808660", "msg": "", "rc": 0, "start": "2025-12-17 16:35:17.801603", "stderr": "", "stderr_lines": [], "stdout": "53.0°C", "stdout_lines": ["53.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002687", "end": "2025-12-17 16:34:51.689088", "msg": "", "rc": 0, "start": "2025-12-17 16:34:51.686401", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003044", "end": "2025-12-17 16:34:45.208501", "msg": "", "rc": 0, "start": "2025-12-17 16:34:45.205457", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012021", "end": "2025-12-17 16:35:18.456874", "msg": "", "rc": 0, "start": "2025-12-17 16:35:18.444853", "stderr": "", "stderr_lines": [], "stdout": "31.6°C", "stdout_lines": ["31.6°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013133", "end": "2025-12-17 16:35:18.483737", "msg": "", "rc": 0, "start": "2025-12-17 16:35:18.470604", "stderr": "", "stderr_lines": [], "stdout": "36.0°C", "stdout_lines": ["36.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003227", "end": "2025-12-17 16:35:18.754805", "msg": "", "rc": 0, "start": "2025-12-17 16:35:18.751578", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002752", "end": "2025-12-17 16:34:48.390239", "msg": "", "rc": 0, "start": "2025-12-17 16:34:48.387487", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003869", "end": "2025-12-17 13:35:18.959474", "msg": "", "rc": 0, "start": "2025-12-17 13:35:18.955605", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003191", "end": "2025-12-17 16:34:55.007522", "msg": "", "rc": 0, "start": "2025-12-17 16:34:55.004331", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002906", "end": "2025-12-17 16:35:19.185619", "msg": "", "rc": 0, "start": "2025-12-17 16:35:19.182713", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004636", "end": "2025-12-17 16:35:20.255961", "msg": "", "rc": 0, "start": "2025-12-17 16:35:20.251325", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028900", "end": "2025-12-17 16:35:19.147350", "msg": "", "rc": 0, "start": "2025-12-17 16:35:19.118450", "stderr": "", "stderr_lines": [], "stdout": "36.4°C", "stdout_lines": ["36.4°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004271", "end": "2025-12-17 16:35:19.701148", "msg": "", "rc": 0, "start": "2025-12-17 16:35:19.696877", "stderr": "", "stderr_lines": [], "stdout": "0.05", "stdout_lines": ["0.05"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004325", "end": "2025-12-17 16:35:19.717161", "msg": "", "rc": 0, "start": "2025-12-17 16:35:19.712836", "stderr": "", "stderr_lines": [], "stdout": "0.94", "stdout_lines": ["0.94"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004812", "end": "2025-12-17 16:35:19.730237", "msg": "", "rc": 0, "start": "2025-12-17 16:35:19.725425", "stderr": "", "stderr_lines": [], "stdout": "0.87", "stdout_lines": ["0.87"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005177", "end": "2025-12-17 16:35:19.764439", "msg": "", "rc": 0, "start": "2025-12-17 16:35:19.759262", "stderr": "", "stderr_lines": [], "stdout": "0.78", "stdout_lines": ["0.78"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005129", "end": "2025-12-17 16:35:19.776290", "msg": "", "rc": 0, "start": "2025-12-17 16:35:19.771161", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004422", "end": "2025-12-17 16:34:53.664634", "msg": "", "rc": 0, "start": "2025-12-17 16:34:53.660212", "stderr": "", "stderr_lines": [], "stdout": "0.07", "stdout_lines": ["0.07"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005210", "end": "2025-12-17 16:34:47.151876", "msg": "", "rc": 0, "start": "2025-12-17 16:34:47.146666", "stderr": "", "stderr_lines": [], "stdout": "0.01", "stdout_lines": ["0.01"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010237", "end": "2025-12-17 16:35:20.509341", "msg": "", "rc": 0, "start": "2025-12-17 16:35:20.499104", "stderr": "", "stderr_lines": [], "stdout": "0.31", "stdout_lines": ["0.31"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011742", "end": "2025-12-17 16:35:20.526526", "msg": "", "rc": 0, "start": "2025-12-17 16:35:20.514784", "stderr": "", "stderr_lines": [], "stdout": "0.34", "stdout_lines": ["0.34"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005815", "end": "2025-12-17 16:35:20.701243", "msg": "", "rc": 0, "start": "2025-12-17 16:35:20.695428", "stderr": "", "stderr_lines": [], "stdout": "0.01", "stdout_lines": ["0.01"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004913", "end": "2025-12-17 16:34:50.333982", "msg": "", "rc": 0, "start": "2025-12-17 16:34:50.329069", "stderr": "", "stderr_lines": [], "stdout": "0.43", "stdout_lines": ["0.43"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004181", "end": "2025-12-17 16:34:57.047968", "msg": "", "rc": 0, "start": "2025-12-17 16:34:57.043787", "stderr": "", "stderr_lines": [], "stdout": "0.96", "stdout_lines": ["0.96"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005803", "end": "2025-12-17 13:35:21.002036", "msg": "", "rc": 0, "start": "2025-12-17 13:35:20.996233", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005297", "end": "2025-12-17 16:35:21.155474", "msg": "", "rc": 0, "start": "2025-12-17 16:35:21.150177", "stderr": "", "stderr_lines": [], "stdout": "0.30", "stdout_lines": ["0.30"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.009876", "end": "2025-12-17 16:35:22.301280", "msg": "", "rc": 0, "start": "2025-12-17 16:35:22.291404", "stderr": "", "stderr_lines": [], "stdout": "1.66", "stdout_lines": ["1.66"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024549", "end": "2025-12-17 16:35:21.103068", "msg": "", "rc": 0, "start": "2025-12-17 16:35:21.078519", "stderr": "", "stderr_lines": [], "stdout": "0.26", "stdout_lines": ["0.26"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:35:11 up 3 days, 6:07, 1 user, load average: 0.76, 0.69, 0.45\nDisk Usage: 22%\nMemory Usage: 22.5%\nCPU Load: 0.94\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:35:11 up 22 days, 3:26, 1 user, load average: 0.06, 0.10, 0.17\nDisk Usage: 23%\nMemory Usage: 77.5%\nCPU Load: 0.05\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:35:11 up 22 days, 3:46, 1 user, load average: 0.65, 0.94, 0.83\nDisk Usage: 14%\nMemory Usage: 49.2%\nCPU Load: 0.87\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:35:11 up 22 days, 4:59, 1 user, load average: 0.76, 0.77, 0.76\nDisk Usage: 14%\nMemory Usage: 59.7%\nCPU Load: 0.78\nCPU Temp: 53.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:35:11 up 22 days, 5:45, 1 user, load average: 0.00, 0.02, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:35:12 up 15 days, 6:01, 1 user, load average: 0.19, 0.16, 0.11\nDisk Usage: 21%\nMemory Usage: 19.5%\nCPU Load: 0.26\nCPU Temp: 36.4°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:35:12 up 194 days, 8:08, 1 user, load average: 0.28, 0.20, 0.19\nDisk Usage: 6%\nMemory Usage: 13.2%\nCPU Load: 0.34\nCPU Temp: 36.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:35:12 up 194 days, 8:08, 1 user, load average: 0.34, 0.17, 0.11\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.31\nCPU Temp: 31.6°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:34:45 up 11 days, 4:24, 0 user, load average: 0.08, 0.07, 0.09\nDisk Usage: 48%\nMemory Usage: 71.0%\nCPU Load: 0.07\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:35:12 up 3 days, 6:06, 1 user, load average: 0.01, 0.07, 0.04\nDisk Usage: 1%\nMemory Usage: 35.3%\nCPU Load: 0.01\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:34:39 up 18 days, 36 min, 0 user, load average: 0.01, 0.04, 0.07\nDisk Usage: 25%\nMemory Usage: 68.5%\nCPU Load: 0.01\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:34:42 up 20 days, 19:29, 0 user, load average: 0.51, 0.47, 0.44\nDisk Usage: 28%\nMemory Usage: 27.2%\nCPU Load: 0.43\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:34:49 up 17 days, 5:50, 0 user, load average: 0.35, 0.20, 0.18\nDisk Usage: 76%\nMemory Usage: 54.5%\nCPU Load: 0.96\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 1:35PM up 22 days, 3:25, 1 user, load averages: 0.43, 0.27, 0.19\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:35:13 up 3 days, 6:06, 1 user, load average: 0.26, 0.08, 0.02\nDisk Usage: 79%\nMemory Usage: 14.1%\nCPU Load: 0.30\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:35:14 up 3:40, 1 user, load average: 1.54, 1.31, 1.33\nDisk Usage: 1%\nMemory Usage: 22.0%\nCPU Load: 1.66\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T21:35:23.319043+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_214021_a142ad_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_214021_a142ad_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..4429d01 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_214021_a142ad_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `424352111e1b47a19cdeabe72fb056e1` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T21:40:00.001748+00:00 | +| **Fin** | 2025-12-17T21:40:21.240459+00:00 | +| **Durée** | 21.2s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [dev.prod.home] +ok: [hp.truenas.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003372", "end": "2025-12-17 16:40:10.150932", "msg": "", "rc": 0, "start": "2025-12-17 16:40:10.147560", "stderr": "", "stderr_lines": [], "stdout": " 16:40:10 up 22 days, 3:51, 1 user, load average: 0.30, 0.62, 0.73", "stdout_lines": [" 16:40:10 up 22 days, 3:51, 1 user, load average: 0.30, 0.62, 0.73"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004017", "end": "2025-12-17 16:40:10.160307", "msg": "", "rc": 0, "start": "2025-12-17 16:40:10.156290", "stderr": "", "stderr_lines": [], "stdout": " 16:40:10 up 22 days, 5:50, 1 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 16:40:10 up 22 days, 5:50, 1 user, load average: 0.00, 0.00, 0.00"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002800", "end": "2025-12-17 16:40:10.185502", "msg": "", "rc": 0, "start": "2025-12-17 16:40:10.182702", "stderr": "", "stderr_lines": [], "stdout": " 16:40:10 up 3 days, 6:12, 1 user, load average: 0.85, 0.89, 0.61", "stdout_lines": [" 16:40:10 up 3 days, 6:12, 1 user, load average: 0.85, 0.89, 0.61"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008491", "end": "2025-12-17 16:40:10.868258", "msg": "", "rc": 0, "start": "2025-12-17 16:40:10.859767", "stderr": "", "stderr_lines": [], "stdout": " 16:40:10 up 194 days, 8:13, 1 user, load average: 0.32, 0.16, 0.11", "stdout_lines": [" 16:40:10 up 194 days, 8:13, 1 user, load average: 0.32, 0.16, 0.11"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009168", "end": "2025-12-17 16:40:10.897472", "msg": "", "rc": 0, "start": "2025-12-17 16:40:10.888304", "stderr": "", "stderr_lines": [], "stdout": " 16:40:10 up 194 days, 8:13, 1 user, load average: 0.16, 0.20, 0.18", "stdout_lines": [" 16:40:10 up 194 days, 8:13, 1 user, load average: 0.16, 0.20, 0.18"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004460", "end": "2025-12-17 16:40:11.142955", "msg": "", "rc": 0, "start": "2025-12-17 16:40:10.138495", "stderr": "", "stderr_lines": [], "stdout": " 16:40:10 up 22 days, 3:31, 1 user, load average: 0.41, 0.38, 0.29", "stdout_lines": [" 16:40:10 up 22 days, 3:31, 1 user, load average: 0.41, 0.38, 0.29"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.005013", "end": "2025-12-17 16:40:11.178457", "msg": "", "rc": 0, "start": "2025-12-17 16:40:10.173444", "stderr": "", "stderr_lines": [], "stdout": " 16:40:10 up 22 days, 5:04, 1 user, load average: 0.73, 1.15, 0.97", "stdout_lines": [" 16:40:10 up 22 days, 5:04, 1 user, load average: 0.73, 1.15, 0.97"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002817", "end": "2025-12-17 16:39:44.786648", "msg": "", "rc": 0, "start": "2025-12-17 16:39:44.783831", "stderr": "", "stderr_lines": [], "stdout": " 16:39:44 up 11 days, 4:29, 0 user, load average: 0.18, 0.14, 0.10", "stdout_lines": [" 16:39:44 up 11 days, 4:29, 0 user, load average: 0.18, 0.14, 0.10"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003691", "end": "2025-12-17 16:39:38.347118", "msg": "", "rc": 0, "start": "2025-12-17 16:39:38.343427", "stderr": "", "stderr_lines": [], "stdout": " 16:39:38 up 18 days, 41 min, 0 user, load average: 0.45, 1.43, 0.82", "stdout_lines": [" 16:39:38 up 18 days, 41 min, 0 user, load average: 0.45, 1.43, 0.82"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004624", "end": "2025-12-17 16:40:11.626835", "msg": "", "rc": 0, "start": "2025-12-17 16:40:11.622211", "stderr": "", "stderr_lines": [], "stdout": " 16:40:11 up 3 days, 6:11, 1 user, load average: 0.10, 0.06, 0.03", "stdout_lines": [" 16:40:11 up 3 days, 6:11, 1 user, load average: 0.10, 0.06, 0.03"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019450", "end": "2025-12-17 16:40:11.566339", "msg": "", "rc": 0, "start": "2025-12-17 16:40:11.546889", "stderr": "", "stderr_lines": [], "stdout": " 16:40:11 up 15 days, 6:06, 1 user, load average: 0.07, 0.09, 0.08", "stdout_lines": [" 16:40:11 up 15 days, 6:06, 1 user, load average: 0.07, 0.09, 0.08"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003044", "end": "2025-12-17 16:39:41.191361", "msg": "", "rc": 0, "start": "2025-12-17 16:39:41.188317", "stderr": "", "stderr_lines": [], "stdout": " 16:39:41 up 20 days, 19:33, 0 user, load average: 0.34, 0.40, 0.43", "stdout_lines": [" 16:39:41 up 20 days, 19:33, 0 user, load average: 0.34, 0.40, 0.43"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002834", "end": "2025-12-17 16:39:47.897123", "msg": "", "rc": 0, "start": "2025-12-17 16:39:47.894289", "stderr": "", "stderr_lines": [], "stdout": " 16:39:47 up 17 days, 5:55, 0 user, load average: 0.11, 0.21, 0.20", "stdout_lines": [" 16:39:47 up 17 days, 5:55, 0 user, load average: 0.11, 0.21, 0.20"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004250", "end": "2025-12-17 13:40:11.945207", "msg": "", "rc": 0, "start": "2025-12-17 13:40:11.940957", "stderr": "", "stderr_lines": [], "stdout": " 1:40PM up 22 days, 3:29, 1 user, load averages: 0.27, 0.52, 0.35", "stdout_lines": [" 1:40PM up 22 days, 3:29, 1 user, load averages: 0.27, 0.52, 0.35"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.006527", "end": "2025-12-17 16:40:12.049950", "msg": "", "rc": 0, "start": "2025-12-17 16:40:12.043423", "stderr": "", "stderr_lines": [], "stdout": " 16:40:12 up 3:46, 1 user, load average: 1.17, 1.20, 1.27", "stdout_lines": [" 16:40:12 up 3:46, 1 user, load average: 1.17, 1.20, 1.27"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003701", "end": "2025-12-17 16:40:12.078323", "msg": "", "rc": 0, "start": "2025-12-17 16:40:12.074622", "stderr": "", "stderr_lines": [], "stdout": " 16:40:12 up 3 days, 6:11, 1 user, load average: 0.42, 0.18, 0.06", "stdout_lines": [" 16:40:12 up 3 days, 6:11, 1 user, load average: 0.42, 0.18, 0.06"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004231", "end": "2025-12-17 16:40:12.540492", "msg": "", "rc": 0, "start": "2025-12-17 16:40:12.536261", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004112", "end": "2025-12-17 16:40:12.565759", "msg": "", "rc": 0, "start": "2025-12-17 16:40:12.561647", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004701", "end": "2025-12-17 16:40:12.567503", "msg": "", "rc": 0, "start": "2025-12-17 16:40:12.562802", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004948", "end": "2025-12-17 16:40:12.582152", "msg": "", "rc": 0, "start": "2025-12-17 16:40:12.577204", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005634", "end": "2025-12-17 16:40:12.600628", "msg": "", "rc": 0, "start": "2025-12-17 16:40:12.594994", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005167", "end": "2025-12-17 16:39:46.556303", "msg": "", "rc": 0, "start": "2025-12-17 16:39:46.551136", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005521", "end": "2025-12-17 16:39:40.081062", "msg": "", "rc": 0, "start": "2025-12-17 16:39:40.075541", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010544", "end": "2025-12-17 16:40:13.397260", "msg": "", "rc": 0, "start": "2025-12-17 16:40:13.386716", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011682", "end": "2025-12-17 16:40:13.467735", "msg": "", "rc": 0, "start": "2025-12-17 16:40:13.456053", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005773", "end": "2025-12-17 16:40:13.620498", "msg": "", "rc": 0, "start": "2025-12-17 16:40:13.614725", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005352", "end": "2025-12-17 16:39:43.273904", "msg": "", "rc": 0, "start": "2025-12-17 16:39:43.268552", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005052", "end": "2025-12-17 16:39:49.944045", "msg": "", "rc": 0, "start": "2025-12-17 16:39:49.938993", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005532", "end": "2025-12-17 13:40:13.943794", "msg": "", "rc": 0, "start": "2025-12-17 13:40:13.938262", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005360", "end": "2025-12-17 16:40:14.073229", "msg": "", "rc": 0, "start": "2025-12-17 16:40:14.067869", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025532", "end": "2025-12-17 16:40:13.998654", "msg": "", "rc": 0, "start": "2025-12-17 16:40:13.973122", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.014007", "end": "2025-12-17 16:40:14.302518", "msg": "", "rc": 0, "start": "2025-12-17 16:40:14.288511", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004113", "end": "2025-12-17 16:40:14.582479", "msg": "", "rc": 0, "start": "2025-12-17 16:40:14.578366", "stderr": "", "stderr_lines": [], "stdout": "77.5%", "stdout_lines": ["77.5%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004085", "end": "2025-12-17 16:40:14.610138", "msg": "", "rc": 0, "start": "2025-12-17 16:40:14.606053", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005031", "end": "2025-12-17 16:40:14.626128", "msg": "", "rc": 0, "start": "2025-12-17 16:40:14.621097", "stderr": "", "stderr_lines": [], "stdout": "49.4%", "stdout_lines": ["49.4%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005042", "end": "2025-12-17 16:40:14.640447", "msg": "", "rc": 0, "start": "2025-12-17 16:40:14.635405", "stderr": "", "stderr_lines": [], "stdout": "8.9%", "stdout_lines": ["8.9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005610", "end": "2025-12-17 16:40:14.655158", "msg": "", "rc": 0, "start": "2025-12-17 16:40:14.649548", "stderr": "", "stderr_lines": [], "stdout": "60.5%", "stdout_lines": ["60.5%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004241", "end": "2025-12-17 16:39:48.530806", "msg": "", "rc": 0, "start": "2025-12-17 16:39:48.526565", "stderr": "", "stderr_lines": [], "stdout": "70.9%", "stdout_lines": ["70.9%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004616", "end": "2025-12-17 16:39:42.043404", "msg": "", "rc": 0, "start": "2025-12-17 16:39:42.038788", "stderr": "", "stderr_lines": [], "stdout": "76.0%", "stdout_lines": ["76.0%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011050", "end": "2025-12-17 16:40:15.313492", "msg": "", "rc": 0, "start": "2025-12-17 16:40:15.302442", "stderr": "", "stderr_lines": [], "stdout": "6.7%", "stdout_lines": ["6.7%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012120", "end": "2025-12-17 16:40:15.353512", "msg": "", "rc": 0, "start": "2025-12-17 16:40:15.341392", "stderr": "", "stderr_lines": [], "stdout": "12.8%", "stdout_lines": ["12.8%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006115", "end": "2025-12-17 16:40:15.586639", "msg": "", "rc": 0, "start": "2025-12-17 16:40:15.580524", "stderr": "", "stderr_lines": [], "stdout": "35.4%", "stdout_lines": ["35.4%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004292", "end": "2025-12-17 16:39:45.216703", "msg": "", "rc": 0, "start": "2025-12-17 16:39:45.212411", "stderr": "", "stderr_lines": [], "stdout": "27.4%", "stdout_lines": ["27.4%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005118", "end": "2025-12-17 13:40:15.819023", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 13:40:15.813905", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005095", "end": "2025-12-17 16:39:51.858910", "msg": "", "rc": 0, "start": "2025-12-17 16:39:51.853815", "stderr": "", "stderr_lines": [], "stdout": "51.6%", "stdout_lines": ["51.6%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005643", "end": "2025-12-17 16:40:16.027146", "msg": "", "rc": 0, "start": "2025-12-17 16:40:16.021503", "stderr": "", "stderr_lines": [], "stdout": "13.9%", "stdout_lines": ["13.9%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011026", "end": "2025-12-17 16:40:16.267125", "msg": "", "rc": 0, "start": "2025-12-17 16:40:16.256099", "stderr": "", "stderr_lines": [], "stdout": "22.1%", "stdout_lines": ["22.1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025480", "end": "2025-12-17 16:40:15.997959", "msg": "", "rc": 0, "start": "2025-12-17 16:40:15.972479", "stderr": "", "stderr_lines": [], "stdout": "20.2%", "stdout_lines": ["20.2%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005514", "end": "2025-12-17 16:40:16.561249", "msg": "", "rc": 0, "start": "2025-12-17 16:40:16.555735", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004805", "end": "2025-12-17 16:40:16.583445", "msg": "", "rc": 0, "start": "2025-12-17 16:40:16.578640", "stderr": "", "stderr_lines": [], "stdout": "47.0°C", "stdout_lines": ["47.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005599", "end": "2025-12-17 16:40:16.604319", "msg": "", "rc": 0, "start": "2025-12-17 16:40:16.598720", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003600", "end": "2025-12-17 16:40:16.627943", "msg": "", "rc": 0, "start": "2025-12-17 16:40:16.624343", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.007105", "end": "2025-12-17 16:40:16.651263", "msg": "", "rc": 0, "start": "2025-12-17 16:40:16.644158", "stderr": "", "stderr_lines": [], "stdout": "53.0°C", "stdout_lines": ["53.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002662", "end": "2025-12-17 16:39:50.496950", "msg": "", "rc": 0, "start": "2025-12-17 16:39:50.494288", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003445", "end": "2025-12-17 16:39:44.031438", "msg": "", "rc": 0, "start": "2025-12-17 16:39:44.027993", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011808", "end": "2025-12-17 16:40:17.289559", "msg": "", "rc": 0, "start": "2025-12-17 16:40:17.277751", "stderr": "", "stderr_lines": [], "stdout": "32.1°C", "stdout_lines": ["32.1°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012997", "end": "2025-12-17 16:40:17.290761", "msg": "", "rc": 0, "start": "2025-12-17 16:40:17.277764", "stderr": "", "stderr_lines": [], "stdout": "36.0°C", "stdout_lines": ["36.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003173", "end": "2025-12-17 16:40:17.577412", "msg": "", "rc": 0, "start": "2025-12-17 16:40:17.574239", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003147", "end": "2025-12-17 16:39:47.217315", "msg": "", "rc": 0, "start": "2025-12-17 16:39:47.214168", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004001", "end": "2025-12-17 13:40:17.768713", "msg": "", "rc": 0, "start": "2025-12-17 13:40:17.764712", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002933", "end": "2025-12-17 16:39:53.839636", "msg": "", "rc": 0, "start": "2025-12-17 16:39:53.836703", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002980", "end": "2025-12-17 16:40:18.009923", "msg": "", "rc": 0, "start": "2025-12-17 16:40:18.006943", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004748", "end": "2025-12-17 16:40:18.342028", "msg": "", "rc": 0, "start": "2025-12-17 16:40:18.337280", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028931", "end": "2025-12-17 16:40:17.955594", "msg": "", "rc": 0, "start": "2025-12-17 16:40:17.926663", "stderr": "", "stderr_lines": [], "stdout": "36.0°C", "stdout_lines": ["36.0°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004226", "end": "2025-12-17 16:40:18.484664", "msg": "", "rc": 0, "start": "2025-12-17 16:40:18.480438", "stderr": "", "stderr_lines": [], "stdout": "0.38", "stdout_lines": ["0.38"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004038", "end": "2025-12-17 16:40:18.498565", "msg": "", "rc": 0, "start": "2025-12-17 16:40:18.494527", "stderr": "", "stderr_lines": [], "stdout": "0.72", "stdout_lines": ["0.72"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004839", "end": "2025-12-17 16:40:18.523741", "msg": "", "rc": 0, "start": "2025-12-17 16:40:18.518902", "stderr": "", "stderr_lines": [], "stdout": "0.41", "stdout_lines": ["0.41"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005197", "end": "2025-12-17 16:40:18.545476", "msg": "", "rc": 0, "start": "2025-12-17 16:40:18.540279", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005606", "end": "2025-12-17 16:40:18.568328", "msg": "", "rc": 0, "start": "2025-12-17 16:40:18.562722", "stderr": "", "stderr_lines": [], "stdout": "0.69", "stdout_lines": ["0.69"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004162", "end": "2025-12-17 16:39:52.415382", "msg": "", "rc": 0, "start": "2025-12-17 16:39:52.411220", "stderr": "", "stderr_lines": [], "stdout": "0.17", "stdout_lines": ["0.17"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005057", "end": "2025-12-17 16:39:45.948847", "msg": "", "rc": 0, "start": "2025-12-17 16:39:45.943790", "stderr": "", "stderr_lines": [], "stdout": "0.41", "stdout_lines": ["0.41"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010216", "end": "2025-12-17 16:40:19.284941", "msg": "", "rc": 0, "start": "2025-12-17 16:40:19.274725", "stderr": "", "stderr_lines": [], "stdout": "0.43", "stdout_lines": ["0.43"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011074", "end": "2025-12-17 16:40:19.291601", "msg": "", "rc": 0, "start": "2025-12-17 16:40:19.280527", "stderr": "", "stderr_lines": [], "stdout": "0.22", "stdout_lines": ["0.22"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005673", "end": "2025-12-17 16:40:19.483586", "msg": "", "rc": 0, "start": "2025-12-17 16:40:19.477913", "stderr": "", "stderr_lines": [], "stdout": "0.15", "stdout_lines": ["0.15"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005150", "end": "2025-12-17 16:39:49.124755", "msg": "", "rc": 0, "start": "2025-12-17 16:39:49.119605", "stderr": "", "stderr_lines": [], "stdout": "0.39", "stdout_lines": ["0.39"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005999", "end": "2025-12-17 13:40:19.762140", "msg": "", "rc": 0, "start": "2025-12-17 13:40:19.756141", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004217", "end": "2025-12-17 16:39:55.829917", "msg": "", "rc": 0, "start": "2025-12-17 16:39:55.825700", "stderr": "", "stderr_lines": [], "stdout": "0.10", "stdout_lines": ["0.10"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005260", "end": "2025-12-17 16:40:19.928159", "msg": "", "rc": 0, "start": "2025-12-17 16:40:19.922899", "stderr": "", "stderr_lines": [], "stdout": "0.63", "stdout_lines": ["0.63"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010324", "end": "2025-12-17 16:40:20.336172", "msg": "", "rc": 0, "start": "2025-12-17 16:40:20.325848", "stderr": "", "stderr_lines": [], "stdout": "1.31", "stdout_lines": ["1.31"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024537", "end": "2025-12-17 16:40:19.883101", "msg": "", "rc": 0, "start": "2025-12-17 16:40:19.858564", "stderr": "", "stderr_lines": [], "stdout": "0.14", "stdout_lines": ["0.14"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:40:10 up 3 days, 6:12, 1 user, load average: 0.85, 0.89, 0.61\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.72\nCPU Temp: 47.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:40:10 up 22 days, 3:31, 1 user, load average: 0.41, 0.38, 0.29\nDisk Usage: 23%\nMemory Usage: 77.5%\nCPU Load: 0.38\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:40:10 up 22 days, 3:51, 1 user, load average: 0.30, 0.62, 0.73\nDisk Usage: 14%\nMemory Usage: 49.4%\nCPU Load: 0.41\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:40:10 up 22 days, 5:04, 1 user, load average: 0.73, 1.15, 0.97\nDisk Usage: 14%\nMemory Usage: 60.5%\nCPU Load: 0.69\nCPU Temp: 53.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:40:10 up 22 days, 5:50, 1 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 9%\nMemory Usage: 8.9%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:40:11 up 15 days, 6:06, 1 user, load average: 0.07, 0.09, 0.08\nDisk Usage: 21%\nMemory Usage: 20.2%\nCPU Load: 0.14\nCPU Temp: 36.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:40:10 up 194 days, 8:13, 1 user, load average: 0.16, 0.20, 0.18\nDisk Usage: 6%\nMemory Usage: 12.8%\nCPU Load: 0.22\nCPU Temp: 36.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:40:10 up 194 days, 8:13, 1 user, load average: 0.32, 0.16, 0.11\nDisk Usage: 3%\nMemory Usage: 6.7%\nCPU Load: 0.43\nCPU Temp: 32.1°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:39:44 up 11 days, 4:29, 0 user, load average: 0.18, 0.14, 0.10\nDisk Usage: 48%\nMemory Usage: 70.9%\nCPU Load: 0.17\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:39:38 up 18 days, 41 min, 0 user, load average: 0.45, 1.43, 0.82\nDisk Usage: 25%\nMemory Usage: 76.0%\nCPU Load: 0.41\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:40:11 up 3 days, 6:11, 1 user, load average: 0.10, 0.06, 0.03\nDisk Usage: 1%\nMemory Usage: 35.4%\nCPU Load: 0.15\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:39:41 up 20 days, 19:33, 0 user, load average: 0.34, 0.40, 0.43\nDisk Usage: 28%\nMemory Usage: 27.4%\nCPU Load: 0.39\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:39:47 up 17 days, 5:55, 0 user, load average: 0.11, 0.21, 0.20\nDisk Usage: 76%\nMemory Usage: 51.6%\nCPU Load: 0.10\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 1:40PM up 22 days, 3:29, 1 user, load averages: 0.27, 0.52, 0.35\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:40:12 up 3 days, 6:11, 1 user, load average: 0.42, 0.18, 0.06\nDisk Usage: 79%\nMemory Usage: 13.9%\nCPU Load: 0.63\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:40:12 up 3:46, 1 user, load average: 1.17, 1.20, 1.27\nDisk Usage: 1%\nMemory Usage: 22.1%\nCPU Load: 1.31\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T21:40:21.282967+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_214521_7904e0_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_214521_7904e0_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..702aa69 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_214521_7904e0_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `460d9917026846ebb1c877c209d23539` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T21:45:00.000765+00:00 | +| **Fin** | 2025-12-17T21:45:21.195514+00:00 | +| **Durée** | 21.2s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp2.i7.home] +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003464", "end": "2025-12-17 16:45:09.625633", "msg": "", "rc": 0, "start": "2025-12-17 16:45:09.622169", "stderr": "", "stderr_lines": [], "stdout": " 16:45:09 up 22 days, 3:56, 1 user, load average: 0.78, 0.67, 0.72", "stdout_lines": [" 16:45:09 up 22 days, 3:56, 1 user, load average: 0.78, 0.67, 0.72"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004089", "end": "2025-12-17 16:45:09.634986", "msg": "", "rc": 0, "start": "2025-12-17 16:45:09.630897", "stderr": "", "stderr_lines": [], "stdout": " 16:45:09 up 22 days, 5:55, 1 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 16:45:09 up 22 days, 5:55, 1 user, load average: 0.00, 0.00, 0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003769", "end": "2025-12-17 16:45:09.651224", "msg": "", "rc": 0, "start": "2025-12-17 16:45:09.647455", "stderr": "", "stderr_lines": [], "stdout": " 16:45:09 up 22 days, 5:09, 1 user, load average: 0.57, 0.78, 0.86", "stdout_lines": [" 16:45:09 up 22 days, 5:09, 1 user, load average: 0.57, 0.78, 0.86"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002876", "end": "2025-12-17 16:45:09.659472", "msg": "", "rc": 0, "start": "2025-12-17 16:45:09.656596", "stderr": "", "stderr_lines": [], "stdout": " 16:45:09 up 3 days, 6:17, 1 user, load average: 0.13, 0.38, 0.45", "stdout_lines": [" 16:45:09 up 3 days, 6:17, 1 user, load average: 0.13, 0.38, 0.45"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002772", "end": "2025-12-17 16:44:43.554168", "msg": "", "rc": 0, "start": "2025-12-17 16:44:43.551396", "stderr": "", "stderr_lines": [], "stdout": " 16:44:43 up 11 days, 4:34, 0 user, load average: 0.07, 0.14, 0.10", "stdout_lines": [" 16:44:43 up 11 days, 4:34, 0 user, load average: 0.07, 0.14, 0.10"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008410", "end": "2025-12-17 16:45:10.324745", "msg": "", "rc": 0, "start": "2025-12-17 16:45:10.316335", "stderr": "", "stderr_lines": [], "stdout": " 16:45:10 up 194 days, 8:18, 1 user, load average: 0.19, 0.16, 0.10", "stdout_lines": [" 16:45:10 up 194 days, 8:18, 1 user, load average: 0.19, 0.16, 0.10"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009402", "end": "2025-12-17 16:45:10.375868", "msg": "", "rc": 0, "start": "2025-12-17 16:45:10.366466", "stderr": "", "stderr_lines": [], "stdout": " 16:45:10 up 194 days, 8:18, 1 user, load average: 0.35, 0.29, 0.21", "stdout_lines": [" 16:45:10 up 194 days, 8:18, 1 user, load average: 0.35, 0.29, 0.21"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004128", "end": "2025-12-17 16:45:10.620079", "msg": "", "rc": 0, "start": "2025-12-17 16:45:09.615951", "stderr": "", "stderr_lines": [], "stdout": " 16:45:09 up 22 days, 3:36, 1 user, load average: 0.07, 0.19, 0.23", "stdout_lines": [" 16:45:09 up 22 days, 3:36, 1 user, load average: 0.07, 0.19, 0.23"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003462", "end": "2025-12-17 16:44:37.537720", "msg": "", "rc": 0, "start": "2025-12-17 16:44:37.534258", "stderr": "", "stderr_lines": [], "stdout": " 16:44:37 up 18 days, 46 min, 0 user, load average: 0.03, 0.56, 0.60", "stdout_lines": [" 16:44:37 up 18 days, 46 min, 0 user, load average: 0.03, 0.56, 0.60"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.005231", "end": "2025-12-17 16:45:10.836505", "msg": "", "rc": 0, "start": "2025-12-17 16:45:10.831274", "stderr": "", "stderr_lines": [], "stdout": " 16:45:10 up 3 days, 6:16, 1 user, load average: 0.01, 0.04, 0.01", "stdout_lines": [" 16:45:10 up 3 days, 6:16, 1 user, load average: 0.01, 0.04, 0.01"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003098", "end": "2025-12-17 16:44:40.447216", "msg": "", "rc": 0, "start": "2025-12-17 16:44:40.444118", "stderr": "", "stderr_lines": [], "stdout": " 16:44:40 up 20 days, 19:38, 0 user, load average: 0.47, 0.60, 0.53", "stdout_lines": [" 16:44:40 up 20 days, 19:38, 0 user, load average: 0.47, 0.60, 0.53"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002867", "end": "2025-12-17 16:44:47.120768", "msg": "", "rc": 0, "start": "2025-12-17 16:44:47.117901", "stderr": "", "stderr_lines": [], "stdout": " 16:44:47 up 17 days, 6:00, 0 user, load average: 0.14, 0.14, 0.16", "stdout_lines": [" 16:44:47 up 17 days, 6:00, 0 user, load average: 0.14, 0.14, 0.16"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004222", "end": "2025-12-17 13:45:11.137464", "msg": "", "rc": 0, "start": "2025-12-17 13:45:11.133242", "stderr": "", "stderr_lines": [], "stdout": " 1:45PM up 22 days, 3:34, 1 user, load averages: 0.15, 0.30, 0.30", "stdout_lines": [" 1:45PM up 22 days, 3:34, 1 user, load averages: 0.15, 0.30, 0.30"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019548", "end": "2025-12-17 16:45:11.038683", "msg": "", "rc": 0, "start": "2025-12-17 16:45:11.019135", "stderr": "", "stderr_lines": [], "stdout": " 16:45:11 up 15 days, 6:11, 1 user, load average: 0.26, 0.12, 0.10", "stdout_lines": [" 16:45:11 up 15 days, 6:11, 1 user, load average: 0.26, 0.12, 0.10"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003723", "end": "2025-12-17 16:45:11.291670", "msg": "", "rc": 0, "start": "2025-12-17 16:45:11.287947", "stderr": "", "stderr_lines": [], "stdout": " 16:45:11 up 3 days, 6:16, 1 user, load average: 0.05, 0.18, 0.10", "stdout_lines": [" 16:45:11 up 3 days, 6:16, 1 user, load average: 0.05, 0.18, 0.10"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.007346", "end": "2025-12-17 16:45:11.798280", "msg": "", "rc": 0, "start": "2025-12-17 16:45:11.790934", "stderr": "", "stderr_lines": [], "stdout": " 16:45:11 up 3:51, 1 user, load average: 1.30, 1.18, 1.23", "stdout_lines": [" 16:45:11 up 3:51, 1 user, load average: 1.30, 1.18, 1.23"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004297", "end": "2025-12-17 16:45:11.743305", "msg": "", "rc": 0, "start": "2025-12-17 16:45:11.739008", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004190", "end": "2025-12-17 16:45:11.774165", "msg": "", "rc": 0, "start": "2025-12-17 16:45:11.769975", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004840", "end": "2025-12-17 16:45:11.780695", "msg": "", "rc": 0, "start": "2025-12-17 16:45:11.775855", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004629", "end": "2025-12-17 16:45:11.810036", "msg": "", "rc": 0, "start": "2025-12-17 16:45:11.805407", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005564", "end": "2025-12-17 16:45:11.821833", "msg": "", "rc": 0, "start": "2025-12-17 16:45:11.816269", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005088", "end": "2025-12-17 16:44:45.693523", "msg": "", "rc": 0, "start": "2025-12-17 16:44:45.688435", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005823", "end": "2025-12-17 16:44:39.211287", "msg": "", "rc": 0, "start": "2025-12-17 16:44:39.205464", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010528", "end": "2025-12-17 16:45:12.537979", "msg": "", "rc": 0, "start": "2025-12-17 16:45:12.527451", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011458", "end": "2025-12-17 16:45:12.530481", "msg": "", "rc": 0, "start": "2025-12-17 16:45:12.519023", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005867", "end": "2025-12-17 16:45:12.761325", "msg": "", "rc": 0, "start": "2025-12-17 16:45:12.755458", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005411", "end": "2025-12-17 16:44:42.398632", "msg": "", "rc": 0, "start": "2025-12-17 16:44:42.393221", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005335", "end": "2025-12-17 13:45:12.997830", "msg": "", "rc": 0, "start": "2025-12-17 13:45:12.992495", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004955", "end": "2025-12-17 16:44:49.077209", "msg": "", "rc": 0, "start": "2025-12-17 16:44:49.072254", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005369", "end": "2025-12-17 16:45:13.238821", "msg": "", "rc": 0, "start": "2025-12-17 16:45:13.233452", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025094", "end": "2025-12-17 16:45:13.156868", "msg": "", "rc": 0, "start": "2025-12-17 16:45:13.131774", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011958", "end": "2025-12-17 16:45:14.061288", "msg": "", "rc": 0, "start": "2025-12-17 16:45:14.049330", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004369", "end": "2025-12-17 16:45:13.930612", "msg": "", "rc": 0, "start": "2025-12-17 16:45:13.926243", "stderr": "", "stderr_lines": [], "stdout": "77.3%", "stdout_lines": ["77.3%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004578", "end": "2025-12-17 16:45:13.941011", "msg": "", "rc": 0, "start": "2025-12-17 16:45:13.936433", "stderr": "", "stderr_lines": [], "stdout": "49.4%", "stdout_lines": ["49.4%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004180", "end": "2025-12-17 16:45:13.947647", "msg": "", "rc": 0, "start": "2025-12-17 16:45:13.943467", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004804", "end": "2025-12-17 16:45:13.975937", "msg": "", "rc": 0, "start": "2025-12-17 16:45:13.971133", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005481", "end": "2025-12-17 16:45:13.989047", "msg": "", "rc": 0, "start": "2025-12-17 16:45:13.983566", "stderr": "", "stderr_lines": [], "stdout": "60.4%", "stdout_lines": ["60.4%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003512", "end": "2025-12-17 16:44:47.851824", "msg": "", "rc": 0, "start": "2025-12-17 16:44:47.848312", "stderr": "", "stderr_lines": [], "stdout": "70.9%", "stdout_lines": ["70.9%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004058", "end": "2025-12-17 16:44:41.363780", "msg": "", "rc": 0, "start": "2025-12-17 16:44:41.359722", "stderr": "", "stderr_lines": [], "stdout": "75.2%", "stdout_lines": ["75.2%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010982", "end": "2025-12-17 16:45:14.637876", "msg": "", "rc": 0, "start": "2025-12-17 16:45:14.626894", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011727", "end": "2025-12-17 16:45:14.661858", "msg": "", "rc": 0, "start": "2025-12-17 16:45:14.650131", "stderr": "", "stderr_lines": [], "stdout": "13.3%", "stdout_lines": ["13.3%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005997", "end": "2025-12-17 16:45:14.955037", "msg": "", "rc": 0, "start": "2025-12-17 16:45:14.949040", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004340", "end": "2025-12-17 16:44:44.576163", "msg": "", "rc": 0, "start": "2025-12-17 16:44:44.571823", "stderr": "", "stderr_lines": [], "stdout": "27.1%", "stdout_lines": ["27.1%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005018", "end": "2025-12-17 13:45:15.115754", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 13:45:15.110736", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004114", "end": "2025-12-17 16:44:51.156676", "msg": "", "rc": 0, "start": "2025-12-17 16:44:51.152562", "stderr": "", "stderr_lines": [], "stdout": "53.8%", "stdout_lines": ["53.8%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.026036", "end": "2025-12-17 16:45:15.332403", "msg": "", "rc": 0, "start": "2025-12-17 16:45:15.306367", "stderr": "", "stderr_lines": [], "stdout": "20.0%", "stdout_lines": ["20.0%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005547", "end": "2025-12-17 16:45:15.456721", "msg": "", "rc": 0, "start": "2025-12-17 16:45:15.451174", "stderr": "", "stderr_lines": [], "stdout": "14.1%", "stdout_lines": ["14.1%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.013515", "end": "2025-12-17 16:45:16.112976", "msg": "", "rc": 0, "start": "2025-12-17 16:45:16.099461", "stderr": "", "stderr_lines": [], "stdout": "22.0%", "stdout_lines": ["22.0%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005393", "end": "2025-12-17 16:45:15.887522", "msg": "", "rc": 0, "start": "2025-12-17 16:45:15.882129", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004830", "end": "2025-12-17 16:45:15.919802", "msg": "", "rc": 0, "start": "2025-12-17 16:45:15.914972", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006099", "end": "2025-12-17 16:45:15.927993", "msg": "", "rc": 0, "start": "2025-12-17 16:45:15.921894", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003336", "end": "2025-12-17 16:45:15.943481", "msg": "", "rc": 0, "start": "2025-12-17 16:45:15.940145", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006576", "end": "2025-12-17 16:45:15.959105", "msg": "", "rc": 0, "start": "2025-12-17 16:45:15.952529", "stderr": "", "stderr_lines": [], "stdout": "53.0°C", "stdout_lines": ["53.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002592", "end": "2025-12-17 16:44:49.832778", "msg": "", "rc": 0, "start": "2025-12-17 16:44:49.830186", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003581", "end": "2025-12-17 16:44:43.348796", "msg": "", "rc": 0, "start": "2025-12-17 16:44:43.345215", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011828", "end": "2025-12-17 16:45:16.614225", "msg": "", "rc": 0, "start": "2025-12-17 16:45:16.602397", "stderr": "", "stderr_lines": [], "stdout": "32.1°C", "stdout_lines": ["32.1°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013082", "end": "2025-12-17 16:45:16.666216", "msg": "", "rc": 0, "start": "2025-12-17 16:45:16.653134", "stderr": "", "stderr_lines": [], "stdout": "37.0°C", "stdout_lines": ["37.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003178", "end": "2025-12-17 16:45:16.994769", "msg": "", "rc": 0, "start": "2025-12-17 16:45:16.991591", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003901", "end": "2025-12-17 13:45:17.146770", "msg": "", "rc": 0, "start": "2025-12-17 13:45:17.142869", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002762", "end": "2025-12-17 16:44:53.187097", "msg": "", "rc": 0, "start": "2025-12-17 16:44:53.184335", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002936", "end": "2025-12-17 16:44:46.671646", "msg": "", "rc": 0, "start": "2025-12-17 16:44:46.668710", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028798", "end": "2025-12-17 16:45:17.290454", "msg": "", "rc": 0, "start": "2025-12-17 16:45:17.261656", "stderr": "", "stderr_lines": [], "stdout": "36.2°C", "stdout_lines": ["36.2°C"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003000", "end": "2025-12-17 16:45:17.442033", "msg": "", "rc": 0, "start": "2025-12-17 16:45:17.439033", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004429", "end": "2025-12-17 16:45:18.224349", "msg": "", "rc": 0, "start": "2025-12-17 16:45:18.219920", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004510", "end": "2025-12-17 16:45:17.932192", "msg": "", "rc": 0, "start": "2025-12-17 16:45:17.927682", "stderr": "", "stderr_lines": [], "stdout": "0.15", "stdout_lines": ["0.15"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004134", "end": "2025-12-17 16:45:17.946395", "msg": "", "rc": 0, "start": "2025-12-17 16:45:17.942261", "stderr": "", "stderr_lines": [], "stdout": "0.11", "stdout_lines": ["0.11"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005238", "end": "2025-12-17 16:45:17.972404", "msg": "", "rc": 0, "start": "2025-12-17 16:45:17.967166", "stderr": "", "stderr_lines": [], "stdout": "0.97", "stdout_lines": ["0.97"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005416", "end": "2025-12-17 16:45:17.983293", "msg": "", "rc": 0, "start": "2025-12-17 16:45:17.977877", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005305", "end": "2025-12-17 16:45:17.991492", "msg": "", "rc": 0, "start": "2025-12-17 16:45:17.986187", "stderr": "", "stderr_lines": [], "stdout": "0.72", "stdout_lines": ["0.72"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004085", "end": "2025-12-17 16:44:51.855778", "msg": "", "rc": 0, "start": "2025-12-17 16:44:51.851693", "stderr": "", "stderr_lines": [], "stdout": "0.14", "stdout_lines": ["0.14"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005171", "end": "2025-12-17 16:44:45.378736", "msg": "", "rc": 0, "start": "2025-12-17 16:44:45.373565", "stderr": "", "stderr_lines": [], "stdout": "0.02", "stdout_lines": ["0.02"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010220", "end": "2025-12-17 16:45:18.732938", "msg": "", "rc": 0, "start": "2025-12-17 16:45:18.722718", "stderr": "", "stderr_lines": [], "stdout": "0.24", "stdout_lines": ["0.24"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011120", "end": "2025-12-17 16:45:18.745067", "msg": "", "rc": 0, "start": "2025-12-17 16:45:18.733947", "stderr": "", "stderr_lines": [], "stdout": "0.30", "stdout_lines": ["0.30"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005616", "end": "2025-12-17 16:45:18.921851", "msg": "", "rc": 0, "start": "2025-12-17 16:45:18.916235", "stderr": "", "stderr_lines": [], "stdout": "0.09", "stdout_lines": ["0.09"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005229", "end": "2025-12-17 16:44:48.564524", "msg": "", "rc": 0, "start": "2025-12-17 16:44:48.559295", "stderr": "", "stderr_lines": [], "stdout": "0.43", "stdout_lines": ["0.43"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005843", "end": "2025-12-17 13:45:19.228532", "msg": "", "rc": 0, "start": "2025-12-17 13:45:19.222689", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004063", "end": "2025-12-17 16:44:55.332428", "msg": "", "rc": 0, "start": "2025-12-17 16:44:55.328365", "stderr": "", "stderr_lines": [], "stdout": "0.13", "stdout_lines": ["0.13"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005328", "end": "2025-12-17 16:45:19.370231", "msg": "", "rc": 0, "start": "2025-12-17 16:45:19.364903", "stderr": "", "stderr_lines": [], "stdout": "0.04", "stdout_lines": ["0.04"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.009754", "end": "2025-12-17 16:45:20.236846", "msg": "", "rc": 0, "start": "2025-12-17 16:45:20.227092", "stderr": "", "stderr_lines": [], "stdout": "1.41", "stdout_lines": ["1.41"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024502", "end": "2025-12-17 16:45:19.322540", "msg": "", "rc": 0, "start": "2025-12-17 16:45:19.298038", "stderr": "", "stderr_lines": [], "stdout": "0.30", "stdout_lines": ["0.30"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:45:09 up 3 days, 6:17, 1 user, load average: 0.13, 0.38, 0.45\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.11\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:45:09 up 22 days, 3:36, 1 user, load average: 0.07, 0.19, 0.23\nDisk Usage: 23%\nMemory Usage: 77.3%\nCPU Load: 0.15\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:45:09 up 22 days, 3:56, 1 user, load average: 0.78, 0.67, 0.72\nDisk Usage: 14%\nMemory Usage: 49.4%\nCPU Load: 0.97\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:45:09 up 22 days, 5:09, 1 user, load average: 0.57, 0.78, 0.86\nDisk Usage: 14%\nMemory Usage: 60.4%\nCPU Load: 0.72\nCPU Temp: 53.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:45:09 up 22 days, 5:55, 1 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:45:11 up 15 days, 6:11, 1 user, load average: 0.26, 0.12, 0.10\nDisk Usage: 21%\nMemory Usage: 20.0%\nCPU Load: 0.30\nCPU Temp: 36.2°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:45:10 up 194 days, 8:18, 1 user, load average: 0.35, 0.29, 0.21\nDisk Usage: 6%\nMemory Usage: 13.3%\nCPU Load: 0.30\nCPU Temp: 37.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:45:10 up 194 days, 8:18, 1 user, load average: 0.19, 0.16, 0.10\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.24\nCPU Temp: 32.1°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:44:43 up 11 days, 4:34, 0 user, load average: 0.07, 0.14, 0.10\nDisk Usage: 48%\nMemory Usage: 70.9%\nCPU Load: 0.14\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:44:37 up 18 days, 46 min, 0 user, load average: 0.03, 0.56, 0.60\nDisk Usage: 25%\nMemory Usage: 75.2%\nCPU Load: 0.02\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:45:10 up 3 days, 6:16, 1 user, load average: 0.01, 0.04, 0.01\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.09\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:44:40 up 20 days, 19:38, 0 user, load average: 0.47, 0.60, 0.53\nDisk Usage: 28%\nMemory Usage: 27.1%\nCPU Load: 0.43\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:44:47 up 17 days, 6:00, 0 user, load average: 0.14, 0.14, 0.16\nDisk Usage: 76%\nMemory Usage: 53.8%\nCPU Load: 0.13\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 1:45PM up 22 days, 3:34, 1 user, load averages: 0.15, 0.30, 0.30\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:45:11 up 3 days, 6:16, 1 user, load average: 0.05, 0.18, 0.10\nDisk Usage: 79%\nMemory Usage: 14.1%\nCPU Load: 0.04\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:45:11 up 3:51, 1 user, load average: 1.30, 1.18, 1.23\nDisk Usage: 1%\nMemory Usage: 22.0%\nCPU Load: 1.41\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T21:45:21.245702+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_215021_c0f04a_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_215021_c0f04a_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..7336be6 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_215021_c0f04a_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `628d1b4dd4d14db9bb7bf95addce9b20` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T21:50:00.003266+00:00 | +| **Fin** | 2025-12-17T21:50:21.246423+00:00 | +| **Durée** | 21.2s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [dev.prod.home] +ok: [hp.truenas.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003546", "end": "2025-12-17 16:50:10.904995", "msg": "", "rc": 0, "start": "2025-12-17 16:50:10.901449", "stderr": "", "stderr_lines": [], "stdout": " 16:50:10 up 22 days, 4:01, 1 user, load average: 0.53, 0.72, 0.73", "stdout_lines": [" 16:50:10 up 22 days, 4:01, 1 user, load average: 0.53, 0.72, 0.73"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003516", "end": "2025-12-17 16:50:10.913143", "msg": "", "rc": 0, "start": "2025-12-17 16:50:10.909627", "stderr": "", "stderr_lines": [], "stdout": " 16:50:10 up 22 days, 6:00, 1 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 16:50:10 up 22 days, 6:00, 1 user, load average: 0.00, 0.00, 0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003730", "end": "2025-12-17 16:50:10.928236", "msg": "", "rc": 0, "start": "2025-12-17 16:50:10.924506", "stderr": "", "stderr_lines": [], "stdout": " 16:50:10 up 22 days, 5:14, 1 user, load average: 0.61, 0.67, 0.79", "stdout_lines": [" 16:50:10 up 22 days, 5:14, 1 user, load average: 0.61, 0.67, 0.79"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002800", "end": "2025-12-17 16:50:10.935664", "msg": "", "rc": 0, "start": "2025-12-17 16:50:10.932864", "stderr": "", "stderr_lines": [], "stdout": " 16:50:10 up 3 days, 6:22, 1 user, load average: 0.23, 0.24, 0.36", "stdout_lines": [" 16:50:10 up 3 days, 6:22, 1 user, load average: 0.23, 0.24, 0.36"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002828", "end": "2025-12-17 16:49:44.804031", "msg": "", "rc": 0, "start": "2025-12-17 16:49:44.801203", "stderr": "", "stderr_lines": [], "stdout": " 16:49:44 up 11 days, 4:39, 0 user, load average: 0.05, 0.08, 0.08", "stdout_lines": [" 16:49:44 up 11 days, 4:39, 0 user, load average: 0.05, 0.08, 0.08"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008431", "end": "2025-12-17 16:50:11.578531", "msg": "", "rc": 0, "start": "2025-12-17 16:50:11.570100", "stderr": "", "stderr_lines": [], "stdout": " 16:50:11 up 194 days, 8:23, 1 user, load average: 0.18, 0.18, 0.12", "stdout_lines": [" 16:50:11 up 194 days, 8:23, 1 user, load average: 0.18, 0.18, 0.12"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009409", "end": "2025-12-17 16:50:11.618836", "msg": "", "rc": 0, "start": "2025-12-17 16:50:11.609427", "stderr": "", "stderr_lines": [], "stdout": " 16:50:11 up 194 days, 8:23, 1 user, load average: 0.22, 0.22, 0.19", "stdout_lines": [" 16:50:11 up 194 days, 8:23, 1 user, load average: 0.22, 0.22, 0.19"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004408", "end": "2025-12-17 16:50:11.898573", "msg": "", "rc": 0, "start": "2025-12-17 16:50:10.894165", "stderr": "", "stderr_lines": [], "stdout": " 16:50:10 up 22 days, 3:41, 1 user, load average: 0.15, 0.12, 0.18", "stdout_lines": [" 16:50:10 up 22 days, 3:41, 1 user, load average: 0.15, 0.12, 0.18"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003592", "end": "2025-12-17 16:49:38.759617", "msg": "", "rc": 0, "start": "2025-12-17 16:49:38.756025", "stderr": "", "stderr_lines": [], "stdout": " 16:49:38 up 18 days, 51 min, 0 user, load average: 0.03, 0.22, 0.43", "stdout_lines": [" 16:49:38 up 18 days, 51 min, 0 user, load average: 0.03, 0.22, 0.43"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004999", "end": "2025-12-17 16:50:12.087133", "msg": "", "rc": 0, "start": "2025-12-17 16:50:12.082134", "stderr": "", "stderr_lines": [], "stdout": " 16:50:12 up 3 days, 6:21, 1 user, load average: 0.08, 0.04, 0.01", "stdout_lines": [" 16:50:12 up 3 days, 6:21, 1 user, load average: 0.08, 0.04, 0.01"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003353", "end": "2025-12-17 16:49:41.664981", "msg": "", "rc": 0, "start": "2025-12-17 16:49:41.661628", "stderr": "", "stderr_lines": [], "stdout": " 16:49:41 up 20 days, 19:43, 0 user, load average: 0.28, 0.45, 0.49", "stdout_lines": [" 16:49:41 up 20 days, 19:43, 0 user, load average: 0.28, 0.45, 0.49"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002813", "end": "2025-12-17 16:49:48.374423", "msg": "", "rc": 0, "start": "2025-12-17 16:49:48.371610", "stderr": "", "stderr_lines": [], "stdout": " 16:49:48 up 17 days, 6:05, 0 user, load average: 0.20, 0.20, 0.18", "stdout_lines": [" 16:49:48 up 17 days, 6:05, 0 user, load average: 0.20, 0.20, 0.18"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004075", "end": "2025-12-17 13:50:12.351568", "msg": "", "rc": 0, "start": "2025-12-17 13:50:12.347493", "stderr": "", "stderr_lines": [], "stdout": " 1:50PM up 22 days, 3:39, 1 user, load averages: 0.20, 0.19, 0.24", "stdout_lines": [" 1:50PM up 22 days, 3:39, 1 user, load averages: 0.20, 0.19, 0.24"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019624", "end": "2025-12-17 16:50:12.295192", "msg": "", "rc": 0, "start": "2025-12-17 16:50:12.275568", "stderr": "", "stderr_lines": [], "stdout": " 16:50:12 up 15 days, 6:16, 1 user, load average: 0.08, 0.09, 0.09", "stdout_lines": [" 16:50:12 up 15 days, 6:16, 1 user, load average: 0.08, 0.09, 0.09"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003903", "end": "2025-12-17 16:50:12.520255", "msg": "", "rc": 0, "start": "2025-12-17 16:50:12.516352", "stderr": "", "stderr_lines": [], "stdout": " 16:50:12 up 3 days, 6:21, 1 user, load average: 0.07, 0.09, 0.08", "stdout_lines": [" 16:50:12 up 3 days, 6:21, 1 user, load average: 0.07, 0.09, 0.08"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.006930", "end": "2025-12-17 16:50:13.555655", "msg": "", "rc": 0, "start": "2025-12-17 16:50:13.548725", "stderr": "", "stderr_lines": [], "stdout": " 16:50:13 up 3:56, 1 user, load average: 1.31, 1.25, 1.24", "stdout_lines": [" 16:50:13 up 3:56, 1 user, load average: 1.31, 1.25, 1.24"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004235", "end": "2025-12-17 16:50:12.941940", "msg": "", "rc": 0, "start": "2025-12-17 16:50:12.937705", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004243", "end": "2025-12-17 16:50:12.946128", "msg": "", "rc": 0, "start": "2025-12-17 16:50:12.941885", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004838", "end": "2025-12-17 16:50:12.953996", "msg": "", "rc": 0, "start": "2025-12-17 16:50:12.949158", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004876", "end": "2025-12-17 16:50:12.989215", "msg": "", "rc": 0, "start": "2025-12-17 16:50:12.984339", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005456", "end": "2025-12-17 16:50:12.999520", "msg": "", "rc": 0, "start": "2025-12-17 16:50:12.994064", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004575", "end": "2025-12-17 16:49:46.869546", "msg": "", "rc": 0, "start": "2025-12-17 16:49:46.864971", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005804", "end": "2025-12-17 16:49:40.399564", "msg": "", "rc": 0, "start": "2025-12-17 16:49:40.393760", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010485", "end": "2025-12-17 16:50:13.683983", "msg": "", "rc": 0, "start": "2025-12-17 16:50:13.673498", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011465", "end": "2025-12-17 16:50:13.713845", "msg": "", "rc": 0, "start": "2025-12-17 16:50:13.702380", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005727", "end": "2025-12-17 16:50:13.931430", "msg": "", "rc": 0, "start": "2025-12-17 16:50:13.925703", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005297", "end": "2025-12-17 16:49:43.577320", "msg": "", "rc": 0, "start": "2025-12-17 16:49:43.572023", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005216", "end": "2025-12-17 13:50:14.168192", "msg": "", "rc": 0, "start": "2025-12-17 13:50:14.162976", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005663", "end": "2025-12-17 16:49:50.201481", "msg": "", "rc": 0, "start": "2025-12-17 16:49:50.195818", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005407", "end": "2025-12-17 16:50:14.372250", "msg": "", "rc": 0, "start": "2025-12-17 16:50:14.366843", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.009529", "end": "2025-12-17 16:50:15.523570", "msg": "", "rc": 0, "start": "2025-12-17 16:50:15.514041", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025663", "end": "2025-12-17 16:50:14.351631", "msg": "", "rc": 0, "start": "2025-12-17 16:50:14.325968", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004339", "end": "2025-12-17 16:50:14.870264", "msg": "", "rc": 0, "start": "2025-12-17 16:50:14.865925", "stderr": "", "stderr_lines": [], "stdout": "77.4%", "stdout_lines": ["77.4%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004155", "end": "2025-12-17 16:50:14.888963", "msg": "", "rc": 0, "start": "2025-12-17 16:50:14.884808", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004939", "end": "2025-12-17 16:50:14.901947", "msg": "", "rc": 0, "start": "2025-12-17 16:50:14.897008", "stderr": "", "stderr_lines": [], "stdout": "49.4%", "stdout_lines": ["49.4%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005655", "end": "2025-12-17 16:50:14.934015", "msg": "", "rc": 0, "start": "2025-12-17 16:50:14.928360", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004689", "end": "2025-12-17 16:50:14.934798", "msg": "", "rc": 0, "start": "2025-12-17 16:50:14.930109", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003895", "end": "2025-12-17 16:49:48.821777", "msg": "", "rc": 0, "start": "2025-12-17 16:49:48.817882", "stderr": "", "stderr_lines": [], "stdout": "71.1%", "stdout_lines": ["71.1%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004428", "end": "2025-12-17 16:49:42.321392", "msg": "", "rc": 0, "start": "2025-12-17 16:49:42.316964", "stderr": "", "stderr_lines": [], "stdout": "69.6%", "stdout_lines": ["69.6%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010927", "end": "2025-12-17 16:50:15.560777", "msg": "", "rc": 0, "start": "2025-12-17 16:50:15.549850", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011908", "end": "2025-12-17 16:50:15.611680", "msg": "", "rc": 0, "start": "2025-12-17 16:50:15.599772", "stderr": "", "stderr_lines": [], "stdout": "12.8%", "stdout_lines": ["12.8%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005786", "end": "2025-12-17 16:50:15.888314", "msg": "", "rc": 0, "start": "2025-12-17 16:50:15.882528", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004225", "end": "2025-12-17 16:49:45.504168", "msg": "", "rc": 0, "start": "2025-12-17 16:49:45.499943", "stderr": "", "stderr_lines": [], "stdout": "27.4%", "stdout_lines": ["27.4%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003846", "end": "2025-12-17 16:49:52.083717", "msg": "", "rc": 0, "start": "2025-12-17 16:49:52.079871", "stderr": "", "stderr_lines": [], "stdout": "54.8%", "stdout_lines": ["54.8%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005218", "end": "2025-12-17 13:50:16.073533", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 13:50:16.068315", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005616", "end": "2025-12-17 16:50:16.333215", "msg": "", "rc": 0, "start": "2025-12-17 16:50:16.327599", "stderr": "", "stderr_lines": [], "stdout": "14.0%", "stdout_lines": ["14.0%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011099", "end": "2025-12-17 16:50:17.524102", "msg": "", "rc": 0, "start": "2025-12-17 16:50:17.513003", "stderr": "", "stderr_lines": [], "stdout": "22.0%", "stdout_lines": ["22.0%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.026288", "end": "2025-12-17 16:50:16.259820", "msg": "", "rc": 0, "start": "2025-12-17 16:50:16.233532", "stderr": "", "stderr_lines": [], "stdout": "20.0%", "stdout_lines": ["20.0%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005189", "end": "2025-12-17 16:50:16.779541", "msg": "", "rc": 0, "start": "2025-12-17 16:50:16.774352", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004869", "end": "2025-12-17 16:50:16.811259", "msg": "", "rc": 0, "start": "2025-12-17 16:50:16.806390", "stderr": "", "stderr_lines": [], "stdout": "48.0°C", "stdout_lines": ["48.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005991", "end": "2025-12-17 16:50:16.829177", "msg": "", "rc": 0, "start": "2025-12-17 16:50:16.823186", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003490", "end": "2025-12-17 16:50:16.840348", "msg": "", "rc": 0, "start": "2025-12-17 16:50:16.836858", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006489", "end": "2025-12-17 16:50:16.860420", "msg": "", "rc": 0, "start": "2025-12-17 16:50:16.853931", "stderr": "", "stderr_lines": [], "stdout": "53.0°C", "stdout_lines": ["53.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002397", "end": "2025-12-17 16:49:50.731121", "msg": "", "rc": 0, "start": "2025-12-17 16:49:50.728724", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003172", "end": "2025-12-17 16:49:44.226579", "msg": "", "rc": 0, "start": "2025-12-17 16:49:44.223407", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011942", "end": "2025-12-17 16:50:17.503776", "msg": "", "rc": 0, "start": "2025-12-17 16:50:17.491834", "stderr": "", "stderr_lines": [], "stdout": "32.1°C", "stdout_lines": ["32.1°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012715", "end": "2025-12-17 16:50:17.546754", "msg": "", "rc": 0, "start": "2025-12-17 16:50:17.534039", "stderr": "", "stderr_lines": [], "stdout": "36.5°C", "stdout_lines": ["36.5°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003161", "end": "2025-12-17 16:50:17.792827", "msg": "", "rc": 0, "start": "2025-12-17 16:50:17.789666", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003030", "end": "2025-12-17 16:49:47.412495", "msg": "", "rc": 0, "start": "2025-12-17 16:49:47.409465", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004421", "end": "2025-12-17 13:50:18.013419", "msg": "", "rc": 0, "start": "2025-12-17 13:50:18.008998", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002480", "end": "2025-12-17 16:49:54.072621", "msg": "", "rc": 0, "start": "2025-12-17 16:49:54.070141", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002980", "end": "2025-12-17 16:50:18.229066", "msg": "", "rc": 0, "start": "2025-12-17 16:50:18.226086", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005098", "end": "2025-12-17 16:50:18.342054", "msg": "", "rc": 0, "start": "2025-12-17 16:50:18.336956", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028428", "end": "2025-12-17 16:50:18.195403", "msg": "", "rc": 0, "start": "2025-12-17 16:50:18.166975", "stderr": "", "stderr_lines": [], "stdout": "36.0°C", "stdout_lines": ["36.0°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004099", "end": "2025-12-17 16:50:18.726306", "msg": "", "rc": 0, "start": "2025-12-17 16:50:18.722207", "stderr": "", "stderr_lines": [], "stdout": "0.14", "stdout_lines": ["0.14"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004671", "end": "2025-12-17 16:50:18.745877", "msg": "", "rc": 0, "start": "2025-12-17 16:50:18.741206", "stderr": "", "stderr_lines": [], "stdout": "0.75", "stdout_lines": ["0.75"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004063", "end": "2025-12-17 16:50:18.747765", "msg": "", "rc": 0, "start": "2025-12-17 16:50:18.743702", "stderr": "", "stderr_lines": [], "stdout": "0.27", "stdout_lines": ["0.27"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005079", "end": "2025-12-17 16:50:18.781785", "msg": "", "rc": 0, "start": "2025-12-17 16:50:18.776706", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005775", "end": "2025-12-17 16:50:18.803128", "msg": "", "rc": 0, "start": "2025-12-17 16:50:18.797353", "stderr": "", "stderr_lines": [], "stdout": "0.67", "stdout_lines": ["0.67"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004433", "end": "2025-12-17 16:49:52.632208", "msg": "", "rc": 0, "start": "2025-12-17 16:49:52.627775", "stderr": "", "stderr_lines": [], "stdout": "0.04", "stdout_lines": ["0.04"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005299", "end": "2025-12-17 16:49:46.155309", "msg": "", "rc": 0, "start": "2025-12-17 16:49:46.150010", "stderr": "", "stderr_lines": [], "stdout": "0.02", "stdout_lines": ["0.02"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010102", "end": "2025-12-17 16:50:19.501259", "msg": "", "rc": 0, "start": "2025-12-17 16:50:19.491157", "stderr": "", "stderr_lines": [], "stdout": "0.15", "stdout_lines": ["0.15"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011072", "end": "2025-12-17 16:50:19.535732", "msg": "", "rc": 0, "start": "2025-12-17 16:50:19.524660", "stderr": "", "stderr_lines": [], "stdout": "0.19", "stdout_lines": ["0.19"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005579", "end": "2025-12-17 16:50:19.694260", "msg": "", "rc": 0, "start": "2025-12-17 16:50:19.688681", "stderr": "", "stderr_lines": [], "stdout": "0.14", "stdout_lines": ["0.14"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004902", "end": "2025-12-17 16:49:49.330760", "msg": "", "rc": 0, "start": "2025-12-17 16:49:49.325858", "stderr": "", "stderr_lines": [], "stdout": "0.26", "stdout_lines": ["0.26"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006429", "end": "2025-12-17 13:50:19.995367", "msg": "", "rc": 0, "start": "2025-12-17 13:50:19.988938", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004948", "end": "2025-12-17 16:49:56.042817", "msg": "", "rc": 0, "start": "2025-12-17 16:49:56.037869", "stderr": "", "stderr_lines": [], "stdout": "0.26", "stdout_lines": ["0.26"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005224", "end": "2025-12-17 16:50:20.129902", "msg": "", "rc": 0, "start": "2025-12-17 16:50:20.124678", "stderr": "", "stderr_lines": [], "stdout": "0.06", "stdout_lines": ["0.06"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.009130", "end": "2025-12-17 16:50:20.340637", "msg": "", "rc": 0, "start": "2025-12-17 16:50:20.331507", "stderr": "", "stderr_lines": [], "stdout": "1.52", "stdout_lines": ["1.52"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024370", "end": "2025-12-17 16:50:20.109870", "msg": "", "rc": 0, "start": "2025-12-17 16:50:20.085500", "stderr": "", "stderr_lines": [], "stdout": "0.23", "stdout_lines": ["0.23"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:50:10 up 3 days, 6:22, 1 user, load average: 0.23, 0.24, 0.36\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.27\nCPU Temp: 48.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:50:10 up 22 days, 3:41, 1 user, load average: 0.15, 0.12, 0.18\nDisk Usage: 23%\nMemory Usage: 77.4%\nCPU Load: 0.14\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:50:10 up 22 days, 4:01, 1 user, load average: 0.53, 0.72, 0.73\nDisk Usage: 14%\nMemory Usage: 49.4%\nCPU Load: 0.75\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:50:10 up 22 days, 5:14, 1 user, load average: 0.61, 0.67, 0.79\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.67\nCPU Temp: 53.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:50:10 up 22 days, 6:00, 1 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:50:12 up 15 days, 6:16, 1 user, load average: 0.08, 0.09, 0.09\nDisk Usage: 21%\nMemory Usage: 20.0%\nCPU Load: 0.23\nCPU Temp: 36.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:50:11 up 194 days, 8:23, 1 user, load average: 0.22, 0.22, 0.19\nDisk Usage: 6%\nMemory Usage: 12.8%\nCPU Load: 0.19\nCPU Temp: 36.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:50:11 up 194 days, 8:23, 1 user, load average: 0.18, 0.18, 0.12\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.15\nCPU Temp: 32.1°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:49:44 up 11 days, 4:39, 0 user, load average: 0.05, 0.08, 0.08\nDisk Usage: 48%\nMemory Usage: 71.1%\nCPU Load: 0.04\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:49:38 up 18 days, 51 min, 0 user, load average: 0.03, 0.22, 0.43\nDisk Usage: 25%\nMemory Usage: 69.6%\nCPU Load: 0.02\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:50:12 up 3 days, 6:21, 1 user, load average: 0.08, 0.04, 0.01\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.14\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:49:41 up 20 days, 19:43, 0 user, load average: 0.28, 0.45, 0.49\nDisk Usage: 28%\nMemory Usage: 27.4%\nCPU Load: 0.26\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:49:48 up 17 days, 6:05, 0 user, load average: 0.20, 0.20, 0.18\nDisk Usage: 76%\nMemory Usage: 54.8%\nCPU Load: 0.26\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 1:50PM up 22 days, 3:39, 1 user, load averages: 0.20, 0.19, 0.24\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:50:12 up 3 days, 6:21, 1 user, load average: 0.07, 0.09, 0.08\nDisk Usage: 79%\nMemory Usage: 14.0%\nCPU Load: 0.06\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:50:13 up 3:56, 1 user, load average: 1.31, 1.25, 1.24\nDisk Usage: 1%\nMemory Usage: 22.0%\nCPU Load: 1.52\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T21:50:21.284836+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_215520_c2bc14_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_215520_c2bc14_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..0609c18 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_215520_c2bc14_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `389a70ba9e7441e5b304a038cb30e40d` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T21:55:00.000440+00:00 | +| **Fin** | 2025-12-17T21:55:20.885344+00:00 | +| **Durée** | 20.9s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003328", "end": "2025-12-17 16:55:09.928945", "msg": "", "rc": 0, "start": "2025-12-17 16:55:09.925617", "stderr": "", "stderr_lines": [], "stdout": " 16:55:09 up 22 days, 3:46, 1 user, load average: 0.17, 0.12, 0.15", "stdout_lines": [" 16:55:09 up 22 days, 3:46, 1 user, load average: 0.17, 0.12, 0.15"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003310", "end": "2025-12-17 16:55:09.935150", "msg": "", "rc": 0, "start": "2025-12-17 16:55:09.931840", "stderr": "", "stderr_lines": [], "stdout": " 16:55:09 up 22 days, 4:06, 1 user, load average: 0.78, 0.68, 0.71", "stdout_lines": [" 16:55:09 up 22 days, 4:06, 1 user, load average: 0.78, 0.68, 0.71"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003831", "end": "2025-12-17 16:55:09.941377", "msg": "", "rc": 0, "start": "2025-12-17 16:55:09.937546", "stderr": "", "stderr_lines": [], "stdout": " 16:55:09 up 22 days, 6:05, 1 user, load average: 0.15, 0.03, 0.01", "stdout_lines": [" 16:55:09 up 22 days, 6:05, 1 user, load average: 0.15, 0.03, 0.01"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002874", "end": "2025-12-17 16:55:09.972748", "msg": "", "rc": 0, "start": "2025-12-17 16:55:09.969874", "stderr": "", "stderr_lines": [], "stdout": " 16:55:09 up 3 days, 6:27, 1 user, load average: 0.29, 0.19, 0.29", "stdout_lines": [" 16:55:09 up 3 days, 6:27, 1 user, load average: 0.29, 0.19, 0.29"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003938", "end": "2025-12-17 16:55:09.971566", "msg": "", "rc": 0, "start": "2025-12-17 16:55:09.967628", "stderr": "", "stderr_lines": [], "stdout": " 16:55:09 up 22 days, 5:19, 1 user, load average: 0.50, 0.59, 0.72", "stdout_lines": [" 16:55:09 up 22 days, 5:19, 1 user, load average: 0.50, 0.59, 0.72"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003127", "end": "2025-12-17 16:54:43.832792", "msg": "", "rc": 0, "start": "2025-12-17 16:54:43.829665", "stderr": "", "stderr_lines": [], "stdout": " 16:54:43 up 11 days, 4:44, 0 user, load average: 1.23, 0.36, 0.17", "stdout_lines": [" 16:54:43 up 11 days, 4:44, 0 user, load average: 1.23, 0.36, 0.17"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004016", "end": "2025-12-17 16:54:37.351115", "msg": "", "rc": 0, "start": "2025-12-17 16:54:37.347099", "stderr": "", "stderr_lines": [], "stdout": " 16:54:37 up 18 days, 56 min, 0 user, load average: 0.00, 0.07, 0.30", "stdout_lines": [" 16:54:37 up 18 days, 56 min, 0 user, load average: 0.00, 0.07, 0.30"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008465", "end": "2025-12-17 16:55:10.613194", "msg": "", "rc": 0, "start": "2025-12-17 16:55:10.604729", "stderr": "", "stderr_lines": [], "stdout": " 16:55:10 up 194 days, 8:28, 1 user, load average: 0.21, 0.16, 0.12", "stdout_lines": [" 16:55:10 up 194 days, 8:28, 1 user, load average: 0.21, 0.16, 0.12"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009044", "end": "2025-12-17 16:55:10.669293", "msg": "", "rc": 0, "start": "2025-12-17 16:55:10.660249", "stderr": "", "stderr_lines": [], "stdout": " 16:55:10 up 194 days, 8:28, 1 user, load average: 0.26, 0.22, 0.19", "stdout_lines": [" 16:55:10 up 194 days, 8:28, 1 user, load average: 0.26, 0.22, 0.19"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004670", "end": "2025-12-17 16:55:10.904523", "msg": "", "rc": 0, "start": "2025-12-17 16:55:10.899853", "stderr": "", "stderr_lines": [], "stdout": " 16:55:10 up 3 days, 6:26, 1 user, load average: 0.06, 0.05, 0.00", "stdout_lines": [" 16:55:10 up 3 days, 6:26, 1 user, load average: 0.06, 0.05, 0.00"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003604", "end": "2025-12-17 16:54:40.575699", "msg": "", "rc": 0, "start": "2025-12-17 16:54:40.572095", "stderr": "", "stderr_lines": [], "stdout": " 16:54:40 up 20 days, 19:48, 0 user, load average: 0.33, 0.47, 0.48", "stdout_lines": [" 16:54:40 up 20 days, 19:48, 0 user, load average: 0.33, 0.47, 0.48"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003300", "end": "2025-12-17 16:54:47.168012", "msg": "", "rc": 0, "start": "2025-12-17 16:54:47.164712", "stderr": "", "stderr_lines": [], "stdout": " 16:54:47 up 17 days, 6:10, 0 user, load average: 0.10, 0.14, 0.16", "stdout_lines": [" 16:54:47 up 17 days, 6:10, 0 user, load average: 0.10, 0.14, 0.16"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004119", "end": "2025-12-17 13:55:11.150625", "msg": "", "rc": 0, "start": "2025-12-17 13:55:11.146506", "stderr": "", "stderr_lines": [], "stdout": " 1:55PM up 22 days, 3:44, 1 user, load averages: 0.21, 0.21, 0.23", "stdout_lines": [" 1:55PM up 22 days, 3:44, 1 user, load averages: 0.21, 0.21, 0.23"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003722", "end": "2025-12-17 16:55:11.351825", "msg": "", "rc": 0, "start": "2025-12-17 16:55:11.348103", "stderr": "", "stderr_lines": [], "stdout": " 16:55:11 up 3 days, 6:26, 1 user, load average: 0.00, 0.03, 0.05", "stdout_lines": [" 16:55:11 up 3 days, 6:26, 1 user, load average: 0.00, 0.03, 0.05"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.007090", "end": "2025-12-17 16:55:11.699396", "msg": "", "rc": 0, "start": "2025-12-17 16:55:11.692306", "stderr": "", "stderr_lines": [], "stdout": " 16:55:11 up 4:01, 1 user, load average: 1.49, 1.31, 1.28", "stdout_lines": [" 16:55:11 up 4:01, 1 user, load average: 1.49, 1.31, 1.28"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019282", "end": "2025-12-17 16:55:11.314241", "msg": "", "rc": 0, "start": "2025-12-17 16:55:11.294959", "stderr": "", "stderr_lines": [], "stdout": " 16:55:11 up 15 days, 6:21, 1 user, load average: 0.19, 0.09, 0.09", "stdout_lines": [" 16:55:11 up 15 days, 6:21, 1 user, load average: 0.19, 0.09, 0.09"]} + +TASK [Get disk usage] ********************************************************** +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004088", "end": "2025-12-17 16:55:11.883808", "msg": "", "rc": 0, "start": "2025-12-17 16:55:11.879720", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004445", "end": "2025-12-17 16:55:11.885286", "msg": "", "rc": 0, "start": "2025-12-17 16:55:11.880841", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004820", "end": "2025-12-17 16:55:11.909834", "msg": "", "rc": 0, "start": "2025-12-17 16:55:11.905014", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004594", "end": "2025-12-17 16:55:11.946862", "msg": "", "rc": 0, "start": "2025-12-17 16:55:11.942268", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005699", "end": "2025-12-17 16:55:11.963299", "msg": "", "rc": 0, "start": "2025-12-17 16:55:11.957600", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004945", "end": "2025-12-17 16:54:45.839304", "msg": "", "rc": 0, "start": "2025-12-17 16:54:45.834359", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006127", "end": "2025-12-17 16:54:39.370632", "msg": "", "rc": 0, "start": "2025-12-17 16:54:39.364505", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010487", "end": "2025-12-17 16:55:12.669092", "msg": "", "rc": 0, "start": "2025-12-17 16:55:12.658605", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011579", "end": "2025-12-17 16:55:12.694228", "msg": "", "rc": 0, "start": "2025-12-17 16:55:12.682649", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006430", "end": "2025-12-17 16:55:12.951063", "msg": "", "rc": 0, "start": "2025-12-17 16:55:12.944633", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005281", "end": "2025-12-17 16:54:42.564265", "msg": "", "rc": 0, "start": "2025-12-17 16:54:42.558984", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005368", "end": "2025-12-17 13:55:13.166676", "msg": "", "rc": 0, "start": "2025-12-17 13:55:13.161308", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005035", "end": "2025-12-17 16:54:49.220340", "msg": "", "rc": 0, "start": "2025-12-17 16:54:49.215305", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005370", "end": "2025-12-17 16:55:13.433764", "msg": "", "rc": 0, "start": "2025-12-17 16:55:13.428394", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025656", "end": "2025-12-17 16:55:13.339312", "msg": "", "rc": 0, "start": "2025-12-17 16:55:13.313656", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.019849", "end": "2025-12-17 16:55:13.809965", "msg": "", "rc": 0, "start": "2025-12-17 16:55:13.790116", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004199", "end": "2025-12-17 16:55:14.003309", "msg": "", "rc": 0, "start": "2025-12-17 16:55:13.999110", "stderr": "", "stderr_lines": [], "stdout": "77.5%", "stdout_lines": ["77.5%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004150", "end": "2025-12-17 16:55:14.051142", "msg": "", "rc": 0, "start": "2025-12-17 16:55:14.046992", "stderr": "", "stderr_lines": [], "stdout": "22.5%", "stdout_lines": ["22.5%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004652", "end": "2025-12-17 16:55:14.072361", "msg": "", "rc": 0, "start": "2025-12-17 16:55:14.067709", "stderr": "", "stderr_lines": [], "stdout": "49.4%", "stdout_lines": ["49.4%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005392", "end": "2025-12-17 16:55:14.076955", "msg": "", "rc": 0, "start": "2025-12-17 16:55:14.071563", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004897", "end": "2025-12-17 16:55:14.090661", "msg": "", "rc": 0, "start": "2025-12-17 16:55:14.085764", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003681", "end": "2025-12-17 16:54:47.951493", "msg": "", "rc": 0, "start": "2025-12-17 16:54:47.947812", "stderr": "", "stderr_lines": [], "stdout": "71.0%", "stdout_lines": ["71.0%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004638", "end": "2025-12-17 16:54:41.448665", "msg": "", "rc": 0, "start": "2025-12-17 16:54:41.444027", "stderr": "", "stderr_lines": [], "stdout": "69.6%", "stdout_lines": ["69.6%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011010", "end": "2025-12-17 16:55:14.757749", "msg": "", "rc": 0, "start": "2025-12-17 16:55:14.746739", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011993", "end": "2025-12-17 16:55:14.766834", "msg": "", "rc": 0, "start": "2025-12-17 16:55:14.754841", "stderr": "", "stderr_lines": [], "stdout": "12.9%", "stdout_lines": ["12.9%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.007139", "end": "2025-12-17 16:55:15.031924", "msg": "", "rc": 0, "start": "2025-12-17 16:55:15.024785", "stderr": "", "stderr_lines": [], "stdout": "35.4%", "stdout_lines": ["35.4%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004196", "end": "2025-12-17 16:54:44.646451", "msg": "", "rc": 0, "start": "2025-12-17 16:54:44.642255", "stderr": "", "stderr_lines": [], "stdout": "27.3%", "stdout_lines": ["27.3%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005088", "end": "2025-12-17 13:55:15.297459", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 13:55:15.292371", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003949", "end": "2025-12-17 16:54:51.343586", "msg": "", "rc": 0, "start": "2025-12-17 16:54:51.339637", "stderr": "", "stderr_lines": [], "stdout": "53.9%", "stdout_lines": ["53.9%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010607", "end": "2025-12-17 16:55:15.949764", "msg": "", "rc": 0, "start": "2025-12-17 16:55:15.939157", "stderr": "", "stderr_lines": [], "stdout": "22.0%", "stdout_lines": ["22.0%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025676", "end": "2025-12-17 16:55:15.402463", "msg": "", "rc": 0, "start": "2025-12-17 16:55:15.376787", "stderr": "", "stderr_lines": [], "stdout": "19.5%", "stdout_lines": ["19.5%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005583", "end": "2025-12-17 16:55:15.539292", "msg": "", "rc": 0, "start": "2025-12-17 16:55:15.533709", "stderr": "", "stderr_lines": [], "stdout": "14.0%", "stdout_lines": ["14.0%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005232", "end": "2025-12-17 16:55:15.944501", "msg": "", "rc": 0, "start": "2025-12-17 16:55:15.939269", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004977", "end": "2025-12-17 16:55:15.973893", "msg": "", "rc": 0, "start": "2025-12-17 16:55:15.968916", "stderr": "", "stderr_lines": [], "stdout": "48.0°C", "stdout_lines": ["48.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005816", "end": "2025-12-17 16:55:15.993926", "msg": "", "rc": 0, "start": "2025-12-17 16:55:15.988110", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003466", "end": "2025-12-17 16:55:16.014474", "msg": "", "rc": 0, "start": "2025-12-17 16:55:16.011008", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006148", "end": "2025-12-17 16:55:16.031386", "msg": "", "rc": 0, "start": "2025-12-17 16:55:16.025238", "stderr": "", "stderr_lines": [], "stdout": "52.5°C", "stdout_lines": ["52.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002470", "end": "2025-12-17 16:54:49.885799", "msg": "", "rc": 0, "start": "2025-12-17 16:54:49.883329", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003066", "end": "2025-12-17 16:54:43.419725", "msg": "", "rc": 0, "start": "2025-12-17 16:54:43.416659", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011797", "end": "2025-12-17 16:55:16.683447", "msg": "", "rc": 0, "start": "2025-12-17 16:55:16.671650", "stderr": "", "stderr_lines": [], "stdout": "32.1°C", "stdout_lines": ["32.1°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012913", "end": "2025-12-17 16:55:16.718979", "msg": "", "rc": 0, "start": "2025-12-17 16:55:16.706066", "stderr": "", "stderr_lines": [], "stdout": "37.0°C", "stdout_lines": ["37.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003265", "end": "2025-12-17 16:55:17.004452", "msg": "", "rc": 0, "start": "2025-12-17 16:55:17.001187", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003067", "end": "2025-12-17 16:54:46.635161", "msg": "", "rc": 0, "start": "2025-12-17 16:54:46.632094", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003862", "end": "2025-12-17 13:55:17.217298", "msg": "", "rc": 0, "start": "2025-12-17 13:55:17.213436", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002533", "end": "2025-12-17 16:54:53.251163", "msg": "", "rc": 0, "start": "2025-12-17 16:54:53.248630", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003109", "end": "2025-12-17 16:55:17.480356", "msg": "", "rc": 0, "start": "2025-12-17 16:55:17.477247", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006277", "end": "2025-12-17 16:55:18.012920", "msg": "", "rc": 0, "start": "2025-12-17 16:55:18.006643", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028982", "end": "2025-12-17 16:55:17.365975", "msg": "", "rc": 0, "start": "2025-12-17 16:55:17.336993", "stderr": "", "stderr_lines": [], "stdout": "35.7°C", "stdout_lines": ["35.7°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004175", "end": "2025-12-17 16:55:17.907650", "msg": "", "rc": 0, "start": "2025-12-17 16:55:17.903475", "stderr": "", "stderr_lines": [], "stdout": "0.32", "stdout_lines": ["0.32"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004373", "end": "2025-12-17 16:55:17.917337", "msg": "", "rc": 0, "start": "2025-12-17 16:55:17.912964", "stderr": "", "stderr_lines": [], "stdout": "0.16", "stdout_lines": ["0.16"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005499", "end": "2025-12-17 16:55:17.967210", "msg": "", "rc": 0, "start": "2025-12-17 16:55:17.961711", "stderr": "", "stderr_lines": [], "stdout": "0.12", "stdout_lines": ["0.12"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004991", "end": "2025-12-17 16:55:17.979215", "msg": "", "rc": 0, "start": "2025-12-17 16:55:17.974224", "stderr": "", "stderr_lines": [], "stdout": "0.96", "stdout_lines": ["0.96"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005367", "end": "2025-12-17 16:55:17.981307", "msg": "", "rc": 0, "start": "2025-12-17 16:55:17.975940", "stderr": "", "stderr_lines": [], "stdout": "0.71", "stdout_lines": ["0.71"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004318", "end": "2025-12-17 16:54:51.863058", "msg": "", "rc": 0, "start": "2025-12-17 16:54:51.858740", "stderr": "", "stderr_lines": [], "stdout": "1.04", "stdout_lines": ["1.04"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004897", "end": "2025-12-17 16:54:45.376119", "msg": "", "rc": 0, "start": "2025-12-17 16:54:45.371222", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010166", "end": "2025-12-17 16:55:18.738419", "msg": "", "rc": 0, "start": "2025-12-17 16:55:18.728253", "stderr": "", "stderr_lines": [], "stdout": "0.18", "stdout_lines": ["0.18"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011382", "end": "2025-12-17 16:55:18.760712", "msg": "", "rc": 0, "start": "2025-12-17 16:55:18.749330", "stderr": "", "stderr_lines": [], "stdout": "0.29", "stdout_lines": ["0.29"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005539", "end": "2025-12-17 16:55:18.923441", "msg": "", "rc": 0, "start": "2025-12-17 16:55:18.917902", "stderr": "", "stderr_lines": [], "stdout": "0.05", "stdout_lines": ["0.05"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004897", "end": "2025-12-17 16:54:48.548423", "msg": "", "rc": 0, "start": "2025-12-17 16:54:48.543526", "stderr": "", "stderr_lines": [], "stdout": "0.35", "stdout_lines": ["0.35"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005740", "end": "2025-12-17 13:55:19.226998", "msg": "", "rc": 0, "start": "2025-12-17 13:55:19.221258", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004660", "end": "2025-12-17 16:54:55.277150", "msg": "", "rc": 0, "start": "2025-12-17 16:54:55.272490", "stderr": "", "stderr_lines": [], "stdout": "0.09", "stdout_lines": ["0.09"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005276", "end": "2025-12-17 16:55:19.360113", "msg": "", "rc": 0, "start": "2025-12-17 16:55:19.354837", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010200", "end": "2025-12-17 16:55:20.003316", "msg": "", "rc": 0, "start": "2025-12-17 16:55:19.993116", "stderr": "", "stderr_lines": [], "stdout": "1.45", "stdout_lines": ["1.45"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024379", "end": "2025-12-17 16:55:19.320143", "msg": "", "rc": 0, "start": "2025-12-17 16:55:19.295764", "stderr": "", "stderr_lines": [], "stdout": "0.31", "stdout_lines": ["0.31"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:55:09 up 3 days, 6:27, 1 user, load average: 0.29, 0.19, 0.29\nDisk Usage: 22%\nMemory Usage: 22.5%\nCPU Load: 0.32\nCPU Temp: 48.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:55:09 up 22 days, 3:46, 1 user, load average: 0.17, 0.12, 0.15\nDisk Usage: 23%\nMemory Usage: 77.5%\nCPU Load: 0.16\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:55:09 up 22 days, 4:06, 1 user, load average: 0.78, 0.68, 0.71\nDisk Usage: 14%\nMemory Usage: 49.4%\nCPU Load: 0.96\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:55:09 up 22 days, 5:19, 1 user, load average: 0.50, 0.59, 0.72\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.71\nCPU Temp: 52.5°C\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:55:11 up 15 days, 6:21, 1 user, load average: 0.19, 0.09, 0.09\nDisk Usage: 21%\nMemory Usage: 19.5%\nCPU Load: 0.31\nCPU Temp: 35.7°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:55:09 up 22 days, 6:05, 1 user, load average: 0.15, 0.03, 0.01\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.12\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:55:10 up 194 days, 8:28, 1 user, load average: 0.26, 0.22, 0.19\nDisk Usage: 6%\nMemory Usage: 12.9%\nCPU Load: 0.29\nCPU Temp: 37.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:55:10 up 194 days, 8:28, 1 user, load average: 0.21, 0.16, 0.12\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.18\nCPU Temp: 32.1°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:54:43 up 11 days, 4:44, 0 user, load average: 1.23, 0.36, 0.17\nDisk Usage: 48%\nMemory Usage: 71.0%\nCPU Load: 1.04\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:54:37 up 18 days, 56 min, 0 user, load average: 0.00, 0.07, 0.30\nDisk Usage: 25%\nMemory Usage: 69.6%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:55:10 up 3 days, 6:26, 1 user, load average: 0.06, 0.05, 0.00\nDisk Usage: 1%\nMemory Usage: 35.4%\nCPU Load: 0.05\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:54:40 up 20 days, 19:48, 0 user, load average: 0.33, 0.47, 0.48\nDisk Usage: 28%\nMemory Usage: 27.3%\nCPU Load: 0.35\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:54:47 up 17 days, 6:10, 0 user, load average: 0.10, 0.14, 0.16\nDisk Usage: 76%\nMemory Usage: 53.9%\nCPU Load: 0.09\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 1:55PM up 22 days, 3:44, 1 user, load averages: 0.21, 0.21, 0.23\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:55:11 up 3 days, 6:26, 1 user, load average: 0.00, 0.03, 0.05\nDisk Usage: 79%\nMemory Usage: 14.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:55:11 up 4:01, 1 user, load average: 1.49, 1.31, 1.28\nDisk Usage: 1%\nMemory Usage: 22.0%\nCPU Load: 1.45\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T21:55:20.925940+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_220024_257f37_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_220024_257f37_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..afe721b --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_220024_257f37_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `f3699f0f9ecf4da1bcb5eccafab36dc1` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T22:00:00.004835+00:00 | +| **Fin** | 2025-12-17T22:00:24.732611+00:00 | +| **Durée** | 24.7s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003615", "end": "2025-12-17 17:00:12.085092", "msg": "", "rc": 0, "start": "2025-12-17 17:00:12.081477", "stderr": "", "stderr_lines": [], "stdout": " 17:00:12 up 22 days, 6:10, 1 user, load average: 0.01, 0.02, 0.00", "stdout_lines": [" 17:00:12 up 22 days, 6:10, 1 user, load average: 0.01, 0.02, 0.00"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002958", "end": "2025-12-17 17:00:12.088819", "msg": "", "rc": 0, "start": "2025-12-17 17:00:12.085861", "stderr": "", "stderr_lines": [], "stdout": " 17:00:12 up 3 days, 6:32, 1 user, load average: 0.29, 0.20, 0.26", "stdout_lines": [" 17:00:12 up 3 days, 6:32, 1 user, load average: 0.29, 0.20, 0.26"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009073", "end": "2025-12-17 17:00:12.836724", "msg": "", "rc": 0, "start": "2025-12-17 17:00:12.827651", "stderr": "", "stderr_lines": [], "stdout": " 17:00:12 up 194 days, 8:33, 1 user, load average: 0.23, 0.22, 0.19", "stdout_lines": [" 17:00:12 up 194 days, 8:33, 1 user, load average: 0.23, 0.22, 0.19"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.003511", "end": "2025-12-17 17:00:13.056072", "msg": "", "rc": 0, "start": "2025-12-17 17:00:12.052561", "stderr": "", "stderr_lines": [], "stdout": " 17:00:12 up 22 days, 3:51, 1 user, load average: 0.24, 0.12, 0.14", "stdout_lines": [" 17:00:12 up 22 days, 3:51, 1 user, load average: 0.24, 0.12, 0.14"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.003519", "end": "2025-12-17 17:00:13.056545", "msg": "", "rc": 0, "start": "2025-12-17 17:00:12.053026", "stderr": "", "stderr_lines": [], "stdout": " 17:00:12 up 22 days, 4:11, 1 user, load average: 0.52, 0.56, 0.64", "stdout_lines": [" 17:00:12 up 22 days, 4:11, 1 user, load average: 0.52, 0.56, 0.64"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.005429", "end": "2025-12-17 17:00:13.097382", "msg": "", "rc": 0, "start": "2025-12-17 17:00:12.091953", "stderr": "", "stderr_lines": [], "stdout": " 17:00:12 up 22 days, 5:24, 1 user, load average: 0.52, 0.58, 0.69", "stdout_lines": [" 17:00:12 up 22 days, 5:24, 1 user, load average: 0.52, 0.58, 0.69"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003019", "end": "2025-12-17 16:59:46.904753", "msg": "", "rc": 0, "start": "2025-12-17 16:59:46.901734", "stderr": "", "stderr_lines": [], "stdout": " 16:59:46 up 11 days, 4:49, 0 user, load average: 0.01, 0.13, 0.12", "stdout_lines": [" 16:59:46 up 11 days, 4:49, 0 user, load average: 0.01, 0.13, 0.12"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004740", "end": "2025-12-17 17:00:13.578237", "msg": "", "rc": 0, "start": "2025-12-17 17:00:13.573497", "stderr": "", "stderr_lines": [], "stdout": " 17:00:13 up 3 days, 6:31, 1 user, load average: 0.04, 0.04, 0.00", "stdout_lines": [" 17:00:13 up 3 days, 6:31, 1 user, load average: 0.04, 0.04, 0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008411", "end": "2025-12-17 17:00:13.554420", "msg": "", "rc": 0, "start": "2025-12-17 17:00:13.546009", "stderr": "", "stderr_lines": [], "stdout": " 17:00:13 up 194 days, 8:33, 1 user, load average: 0.52, 0.28, 0.16", "stdout_lines": [" 17:00:13 up 194 days, 8:33, 1 user, load average: 0.52, 0.28, 0.16"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019732", "end": "2025-12-17 17:00:13.488438", "msg": "", "rc": 0, "start": "2025-12-17 17:00:13.468706", "stderr": "", "stderr_lines": [], "stdout": " 17:00:13 up 15 days, 6:26, 1 user, load average: 0.21, 0.09, 0.08", "stdout_lines": [" 17:00:13 up 15 days, 6:26, 1 user, load average: 0.21, 0.09, 0.08"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.006086", "end": "2025-12-17 16:59:40.442447", "msg": "", "rc": 0, "start": "2025-12-17 16:59:40.436361", "stderr": "", "stderr_lines": [], "stdout": " 16:59:40 up 18 days, 1:01, 0 user, load average: 0.07, 0.05, 0.22", "stdout_lines": [" 16:59:40 up 18 days, 1:01, 0 user, load average: 0.07, 0.05, 0.22"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003150", "end": "2025-12-17 16:59:43.594845", "msg": "", "rc": 0, "start": "2025-12-17 16:59:43.591695", "stderr": "", "stderr_lines": [], "stdout": " 16:59:43 up 20 days, 19:54, 0 user, load average: 0.67, 0.52, 0.49", "stdout_lines": [" 16:59:43 up 20 days, 19:54, 0 user, load average: 0.67, 0.52, 0.49"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.010053", "end": "2025-12-17 17:00:15.000362", "msg": "", "rc": 0, "start": "2025-12-17 17:00:14.990309", "stderr": "", "stderr_lines": [], "stdout": " 17:00:14 up 4:07, 1 user, load average: 1.48, 1.30, 1.27", "stdout_lines": [" 17:00:14 up 4:07, 1 user, load average: 1.48, 1.30, 1.27"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002779", "end": "2025-12-17 16:59:50.284481", "msg": "", "rc": 0, "start": "2025-12-17 16:59:50.281702", "stderr": "", "stderr_lines": [], "stdout": " 16:59:50 up 17 days, 6:15, 0 user, load average: 0.35, 0.23, 0.19", "stdout_lines": [" 16:59:50 up 17 days, 6:15, 0 user, load average: 0.35, 0.23, 0.19"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004263", "end": "2025-12-17 14:00:14.296594", "msg": "", "rc": 0, "start": "2025-12-17 14:00:14.292331", "stderr": "", "stderr_lines": [], "stdout": " 2:00PM up 22 days, 3:50, 1 user, load averages: 0.15, 0.18, 0.21", "stdout_lines": [" 2:00PM up 22 days, 3:50, 1 user, load averages: 0.15, 0.18, 0.21"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003648", "end": "2025-12-17 17:00:14.316631", "msg": "", "rc": 0, "start": "2025-12-17 17:00:14.312983", "stderr": "", "stderr_lines": [], "stdout": " 17:00:14 up 3 days, 6:31, 1 user, load average: 0.46, 0.20, 0.11", "stdout_lines": [" 17:00:14 up 3 days, 6:31, 1 user, load average: 0.46, 0.20, 0.11"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004264", "end": "2025-12-17 17:00:15.048322", "msg": "", "rc": 0, "start": "2025-12-17 17:00:15.044058", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004133", "end": "2025-12-17 17:00:15.072118", "msg": "", "rc": 0, "start": "2025-12-17 17:00:15.067985", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004726", "end": "2025-12-17 17:00:15.082580", "msg": "", "rc": 0, "start": "2025-12-17 17:00:15.077854", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004787", "end": "2025-12-17 17:00:15.086823", "msg": "", "rc": 0, "start": "2025-12-17 17:00:15.082036", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005737", "end": "2025-12-17 17:00:15.108936", "msg": "", "rc": 0, "start": "2025-12-17 17:00:15.103199", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004725", "end": "2025-12-17 16:59:49.349604", "msg": "", "rc": 0, "start": "2025-12-17 16:59:49.344879", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005532", "end": "2025-12-17 16:59:42.845061", "msg": "", "rc": 0, "start": "2025-12-17 16:59:42.839529", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010469", "end": "2025-12-17 17:00:16.232688", "msg": "", "rc": 0, "start": "2025-12-17 17:00:16.222219", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011791", "end": "2025-12-17 17:00:16.256488", "msg": "", "rc": 0, "start": "2025-12-17 17:00:16.244697", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005884", "end": "2025-12-17 17:00:16.425198", "msg": "", "rc": 0, "start": "2025-12-17 17:00:16.419314", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005709", "end": "2025-12-17 16:59:46.045902", "msg": "", "rc": 0, "start": "2025-12-17 16:59:46.040193", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004664", "end": "2025-12-17 16:59:52.919249", "msg": "", "rc": 0, "start": "2025-12-17 16:59:52.914585", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005513", "end": "2025-12-17 14:00:16.945639", "msg": "", "rc": 0, "start": "2025-12-17 14:00:16.940126", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.030662", "end": "2025-12-17 17:00:17.932603", "msg": "", "rc": 0, "start": "2025-12-17 17:00:17.901941", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025663", "end": "2025-12-17 17:00:16.906591", "msg": "", "rc": 0, "start": "2025-12-17 17:00:16.880928", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005588", "end": "2025-12-17 17:00:17.050815", "msg": "", "rc": 0, "start": "2025-12-17 17:00:17.045227", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004526", "end": "2025-12-17 17:00:17.532003", "msg": "", "rc": 0, "start": "2025-12-17 17:00:17.527477", "stderr": "", "stderr_lines": [], "stdout": "77.6%", "stdout_lines": ["77.6%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004309", "end": "2025-12-17 17:00:17.553352", "msg": "", "rc": 0, "start": "2025-12-17 17:00:17.549043", "stderr": "", "stderr_lines": [], "stdout": "22.5%", "stdout_lines": ["22.5%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004656", "end": "2025-12-17 17:00:17.574656", "msg": "", "rc": 0, "start": "2025-12-17 17:00:17.570000", "stderr": "", "stderr_lines": [], "stdout": "49.4%", "stdout_lines": ["49.4%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004774", "end": "2025-12-17 17:00:17.589113", "msg": "", "rc": 0, "start": "2025-12-17 17:00:17.584339", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005611", "end": "2025-12-17 17:00:17.608147", "msg": "", "rc": 0, "start": "2025-12-17 17:00:17.602536", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003706", "end": "2025-12-17 16:59:51.524810", "msg": "", "rc": 0, "start": "2025-12-17 16:59:51.521104", "stderr": "", "stderr_lines": [], "stdout": "71.4%", "stdout_lines": ["71.4%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004480", "end": "2025-12-17 16:59:45.019902", "msg": "", "rc": 0, "start": "2025-12-17 16:59:45.015422", "stderr": "", "stderr_lines": [], "stdout": "69.6%", "stdout_lines": ["69.6%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010846", "end": "2025-12-17 17:00:18.313040", "msg": "", "rc": 0, "start": "2025-12-17 17:00:18.302194", "stderr": "", "stderr_lines": [], "stdout": "6.9%", "stdout_lines": ["6.9%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011989", "end": "2025-12-17 17:00:18.358697", "msg": "", "rc": 0, "start": "2025-12-17 17:00:18.346708", "stderr": "", "stderr_lines": [], "stdout": "12.8%", "stdout_lines": ["12.8%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006854", "end": "2025-12-17 17:00:18.665269", "msg": "", "rc": 0, "start": "2025-12-17 17:00:18.658415", "stderr": "", "stderr_lines": [], "stdout": "35.4%", "stdout_lines": ["35.4%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004220", "end": "2025-12-17 16:59:48.244074", "msg": "", "rc": 0, "start": "2025-12-17 16:59:48.239854", "stderr": "", "stderr_lines": [], "stdout": "27.3%", "stdout_lines": ["27.3%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004166", "end": "2025-12-17 16:59:54.862215", "msg": "", "rc": 0, "start": "2025-12-17 16:59:54.858049", "stderr": "", "stderr_lines": [], "stdout": "55.0%", "stdout_lines": ["55.0%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005071", "end": "2025-12-17 14:00:18.866571", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 14:00:18.861500", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010978", "end": "2025-12-17 17:00:20.153956", "msg": "", "rc": 0, "start": "2025-12-17 17:00:20.142978", "stderr": "", "stderr_lines": [], "stdout": "22.1%", "stdout_lines": ["22.1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025541", "end": "2025-12-17 17:00:18.974045", "msg": "", "rc": 0, "start": "2025-12-17 17:00:18.948504", "stderr": "", "stderr_lines": [], "stdout": "19.7%", "stdout_lines": ["19.7%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005425", "end": "2025-12-17 17:00:19.144511", "msg": "", "rc": 0, "start": "2025-12-17 17:00:19.139086", "stderr": "", "stderr_lines": [], "stdout": "14.2%", "stdout_lines": ["14.2%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004959", "end": "2025-12-17 17:00:19.866972", "msg": "", "rc": 0, "start": "2025-12-17 17:00:19.862013", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003356", "end": "2025-12-17 17:00:19.877154", "msg": "", "rc": 0, "start": "2025-12-17 17:00:19.873798", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005490", "end": "2025-12-17 17:00:19.863583", "msg": "", "rc": 0, "start": "2025-12-17 17:00:19.858093", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005778", "end": "2025-12-17 17:00:19.881046", "msg": "", "rc": 0, "start": "2025-12-17 17:00:19.875268", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006172", "end": "2025-12-17 17:00:19.895632", "msg": "", "rc": 0, "start": "2025-12-17 17:00:19.889460", "stderr": "", "stderr_lines": [], "stdout": "53.0°C", "stdout_lines": ["53.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002327", "end": "2025-12-17 16:59:53.813602", "msg": "", "rc": 0, "start": "2025-12-17 16:59:53.811275", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003055", "end": "2025-12-17 16:59:47.324277", "msg": "", "rc": 0, "start": "2025-12-17 16:59:47.321222", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011762", "end": "2025-12-17 17:00:20.669548", "msg": "", "rc": 0, "start": "2025-12-17 17:00:20.657786", "stderr": "", "stderr_lines": [], "stdout": "32.1°C", "stdout_lines": ["32.1°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012916", "end": "2025-12-17 17:00:20.697165", "msg": "", "rc": 0, "start": "2025-12-17 17:00:20.684249", "stderr": "", "stderr_lines": [], "stdout": "35.5°C", "stdout_lines": ["35.5°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003139", "end": "2025-12-17 17:00:20.891154", "msg": "", "rc": 0, "start": "2025-12-17 17:00:20.888015", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003079", "end": "2025-12-17 16:59:50.512528", "msg": "", "rc": 0, "start": "2025-12-17 16:59:50.509449", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003029", "end": "2025-12-17 16:59:57.194516", "msg": "", "rc": 0, "start": "2025-12-17 16:59:57.191487", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003827", "end": "2025-12-17 14:00:21.169423", "msg": "", "rc": 0, "start": "2025-12-17 14:00:21.165596", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002850", "end": "2025-12-17 17:00:21.325568", "msg": "", "rc": 0, "start": "2025-12-17 17:00:21.322718", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004463", "end": "2025-12-17 17:00:22.516027", "msg": "", "rc": 0, "start": "2025-12-17 17:00:22.511564", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.029122", "end": "2025-12-17 17:00:21.321747", "msg": "", "rc": 0, "start": "2025-12-17 17:00:21.292625", "stderr": "", "stderr_lines": [], "stdout": "36.9°C", "stdout_lines": ["36.9°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004128", "end": "2025-12-17 17:00:21.863782", "msg": "", "rc": 0, "start": "2025-12-17 17:00:21.859654", "stderr": "", "stderr_lines": [], "stdout": "0.36", "stdout_lines": ["0.36"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004028", "end": "2025-12-17 17:00:21.879792", "msg": "", "rc": 0, "start": "2025-12-17 17:00:21.875764", "stderr": "", "stderr_lines": [], "stdout": "0.32", "stdout_lines": ["0.32"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004659", "end": "2025-12-17 17:00:21.876904", "msg": "", "rc": 0, "start": "2025-12-17 17:00:21.872245", "stderr": "", "stderr_lines": [], "stdout": "0.52", "stdout_lines": ["0.52"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005207", "end": "2025-12-17 17:00:21.912641", "msg": "", "rc": 0, "start": "2025-12-17 17:00:21.907434", "stderr": "", "stderr_lines": [], "stdout": "0.01", "stdout_lines": ["0.01"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005430", "end": "2025-12-17 17:00:21.929970", "msg": "", "rc": 0, "start": "2025-12-17 17:00:21.924540", "stderr": "", "stderr_lines": [], "stdout": "0.44", "stdout_lines": ["0.44"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004805", "end": "2025-12-17 16:59:55.794814", "msg": "", "rc": 0, "start": "2025-12-17 16:59:55.790009", "stderr": "", "stderr_lines": [], "stdout": "0.01", "stdout_lines": ["0.01"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005213", "end": "2025-12-17 16:59:49.289804", "msg": "", "rc": 0, "start": "2025-12-17 16:59:49.284591", "stderr": "", "stderr_lines": [], "stdout": "0.06", "stdout_lines": ["0.06"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010118", "end": "2025-12-17 17:00:22.646639", "msg": "", "rc": 0, "start": "2025-12-17 17:00:22.636521", "stderr": "", "stderr_lines": [], "stdout": "0.56", "stdout_lines": ["0.56"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.012038", "end": "2025-12-17 17:00:22.687965", "msg": "", "rc": 0, "start": "2025-12-17 17:00:22.675927", "stderr": "", "stderr_lines": [], "stdout": "0.27", "stdout_lines": ["0.27"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005544", "end": "2025-12-17 17:00:22.857639", "msg": "", "rc": 0, "start": "2025-12-17 17:00:22.852095", "stderr": "", "stderr_lines": [], "stdout": "0.03", "stdout_lines": ["0.03"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004874", "end": "2025-12-17 16:59:52.466123", "msg": "", "rc": 0, "start": "2025-12-17 16:59:52.461249", "stderr": "", "stderr_lines": [], "stdout": "0.71", "stdout_lines": ["0.71"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.008509", "end": "2025-12-17 17:00:23.391283", "msg": "", "rc": 0, "start": "2025-12-17 17:00:23.382774", "stderr": "", "stderr_lines": [], "stdout": "1.71", "stdout_lines": ["1.71"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005874", "end": "2025-12-17 14:00:23.157987", "msg": "", "rc": 0, "start": "2025-12-17 14:00:23.152113", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004218", "end": "2025-12-17 16:59:59.158182", "msg": "", "rc": 0, "start": "2025-12-17 16:59:59.153964", "stderr": "", "stderr_lines": [], "stdout": "0.38", "stdout_lines": ["0.38"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024301", "end": "2025-12-17 17:00:23.274378", "msg": "", "rc": 0, "start": "2025-12-17 17:00:23.250077", "stderr": "", "stderr_lines": [], "stdout": "0.25", "stdout_lines": ["0.25"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005345", "end": "2025-12-17 17:00:23.586678", "msg": "", "rc": 0, "start": "2025-12-17 17:00:23.581333", "stderr": "", "stderr_lines": [], "stdout": "0.46", "stdout_lines": ["0.46"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:00:12 up 3 days, 6:32, 1 user, load average: 0.29, 0.20, 0.26\nDisk Usage: 22%\nMemory Usage: 22.5%\nCPU Load: 0.32\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:00:12 up 22 days, 3:51, 1 user, load average: 0.24, 0.12, 0.14\nDisk Usage: 23%\nMemory Usage: 77.6%\nCPU Load: 0.36\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:00:12 up 22 days, 4:11, 1 user, load average: 0.52, 0.56, 0.64\nDisk Usage: 14%\nMemory Usage: 49.4%\nCPU Load: 0.52\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:00:12 up 22 days, 5:24, 1 user, load average: 0.52, 0.58, 0.69\nDisk Usage: 14%\nMemory Usage: 59.7%\nCPU Load: 0.44\nCPU Temp: 53.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:00:12 up 22 days, 6:10, 1 user, load average: 0.01, 0.02, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.01\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:00:13 up 15 days, 6:26, 1 user, load average: 0.21, 0.09, 0.08\nDisk Usage: 21%\nMemory Usage: 19.7%\nCPU Load: 0.25\nCPU Temp: 36.9°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:00:12 up 194 days, 8:33, 1 user, load average: 0.23, 0.22, 0.19\nDisk Usage: 6%\nMemory Usage: 12.8%\nCPU Load: 0.27\nCPU Temp: 35.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:00:13 up 194 days, 8:33, 1 user, load average: 0.52, 0.28, 0.16\nDisk Usage: 3%\nMemory Usage: 6.9%\nCPU Load: 0.56\nCPU Temp: 32.1°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:59:46 up 11 days, 4:49, 0 user, load average: 0.01, 0.13, 0.12\nDisk Usage: 48%\nMemory Usage: 71.4%\nCPU Load: 0.01\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:59:40 up 18 days, 1:01, 0 user, load average: 0.07, 0.05, 0.22\nDisk Usage: 25%\nMemory Usage: 69.6%\nCPU Load: 0.06\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:00:13 up 3 days, 6:31, 1 user, load average: 0.04, 0.04, 0.00\nDisk Usage: 1%\nMemory Usage: 35.4%\nCPU Load: 0.03\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:59:43 up 20 days, 19:54, 0 user, load average: 0.67, 0.52, 0.49\nDisk Usage: 28%\nMemory Usage: 27.3%\nCPU Load: 0.71\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 16:59:50 up 17 days, 6:15, 0 user, load average: 0.35, 0.23, 0.19\nDisk Usage: 76%\nMemory Usage: 55.0%\nCPU Load: 0.38\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 2:00PM up 22 days, 3:50, 1 user, load averages: 0.15, 0.18, 0.21\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:00:14 up 3 days, 6:31, 1 user, load average: 0.46, 0.20, 0.11\nDisk Usage: 79%\nMemory Usage: 14.2%\nCPU Load: 0.46\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:00:14 up 4:07, 1 user, load average: 1.48, 1.30, 1.27\nDisk Usage: 1%\nMemory Usage: 22.1%\nCPU Load: 1.71\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T22:00:24.779727+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_220520_5b0b1a_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_220520_5b0b1a_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..9cfda83 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_220520_5b0b1a_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `1435fdc788d748e09e87714d0c4c8df0` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T22:05:00.003165+00:00 | +| **Fin** | 2025-12-17T22:05:20.644059+00:00 | +| **Durée** | 20.6s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003667", "end": "2025-12-17 17:05:10.036189", "msg": "", "rc": 0, "start": "2025-12-17 17:05:10.032522", "stderr": "", "stderr_lines": [], "stdout": " 17:05:10 up 22 days, 3:56, 1 user, load average: 0.06, 0.10, 0.12", "stdout_lines": [" 17:05:10 up 22 days, 3:56, 1 user, load average: 0.06, 0.10, 0.12"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003334", "end": "2025-12-17 17:05:10.046970", "msg": "", "rc": 0, "start": "2025-12-17 17:05:10.043636", "stderr": "", "stderr_lines": [], "stdout": " 17:05:10 up 22 days, 4:16, 1 user, load average: 0.51, 0.63, 0.65", "stdout_lines": [" 17:05:10 up 22 days, 4:16, 1 user, load average: 0.51, 0.63, 0.65"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003736", "end": "2025-12-17 17:05:10.051317", "msg": "", "rc": 0, "start": "2025-12-17 17:05:10.047581", "stderr": "", "stderr_lines": [], "stdout": " 17:05:10 up 22 days, 6:15, 1 user, load average: 0.06, 0.04, 0.00", "stdout_lines": [" 17:05:10 up 22 days, 6:15, 1 user, load average: 0.06, 0.04, 0.00"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002835", "end": "2025-12-17 17:05:10.074976", "msg": "", "rc": 0, "start": "2025-12-17 17:05:10.072141", "stderr": "", "stderr_lines": [], "stdout": " 17:05:10 up 3 days, 6:37, 1 user, load average: 0.17, 0.17, 0.23", "stdout_lines": [" 17:05:10 up 3 days, 6:37, 1 user, load average: 0.17, 0.17, 0.23"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003778", "end": "2025-12-17 17:05:10.069756", "msg": "", "rc": 0, "start": "2025-12-17 17:05:10.065978", "stderr": "", "stderr_lines": [], "stdout": " 17:05:10 up 22 days, 5:29, 1 user, load average: 0.56, 0.56, 0.65", "stdout_lines": [" 17:05:10 up 22 days, 5:29, 1 user, load average: 0.56, 0.56, 0.65"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002867", "end": "2025-12-17 17:04:43.963284", "msg": "", "rc": 0, "start": "2025-12-17 17:04:43.960417", "stderr": "", "stderr_lines": [], "stdout": " 17:04:43 up 11 days, 4:54, 0 user, load average: 0.21, 0.11, 0.10", "stdout_lines": [" 17:04:43 up 11 days, 4:54, 0 user, load average: 0.21, 0.11, 0.10"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003198", "end": "2025-12-17 17:04:37.456808", "msg": "", "rc": 0, "start": "2025-12-17 17:04:37.453610", "stderr": "", "stderr_lines": [], "stdout": " 17:04:37 up 18 days, 1:06, 0 user, load average: 0.04, 0.03, 0.16", "stdout_lines": [" 17:04:37 up 18 days, 1:06, 0 user, load average: 0.04, 0.03, 0.16"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008518", "end": "2025-12-17 17:05:10.759262", "msg": "", "rc": 0, "start": "2025-12-17 17:05:10.750744", "stderr": "", "stderr_lines": [], "stdout": " 17:05:10 up 194 days, 8:38, 1 user, load average: 0.17, 0.25, 0.18", "stdout_lines": [" 17:05:10 up 194 days, 8:38, 1 user, load average: 0.17, 0.25, 0.18"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009448", "end": "2025-12-17 17:05:10.782480", "msg": "", "rc": 0, "start": "2025-12-17 17:05:10.773032", "stderr": "", "stderr_lines": [], "stdout": " 17:05:10 up 194 days, 8:38, 1 user, load average: 0.26, 0.21, 0.19", "stdout_lines": [" 17:05:10 up 194 days, 8:38, 1 user, load average: 0.26, 0.21, 0.19"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004854", "end": "2025-12-17 17:05:11.033563", "msg": "", "rc": 0, "start": "2025-12-17 17:05:11.028709", "stderr": "", "stderr_lines": [], "stdout": " 17:05:11 up 3 days, 6:36, 1 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 17:05:11 up 3 days, 6:36, 1 user, load average: 0.00, 0.00, 0.00"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003219", "end": "2025-12-17 17:04:40.620982", "msg": "", "rc": 0, "start": "2025-12-17 17:04:40.617763", "stderr": "", "stderr_lines": [], "stdout": " 17:04:40 up 20 days, 19:58, 0 user, load average: 0.40, 0.51, 0.49", "stdout_lines": [" 17:04:40 up 20 days, 19:58, 0 user, load average: 0.40, 0.51, 0.49"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004102", "end": "2025-12-17 14:05:11.234610", "msg": "", "rc": 0, "start": "2025-12-17 14:05:11.230508", "stderr": "", "stderr_lines": [], "stdout": " 2:05PM up 22 days, 3:54, 1 user, load averages: 0.10, 0.16, 0.18", "stdout_lines": [" 2:05PM up 22 days, 3:54, 1 user, load averages: 0.10, 0.16, 0.18"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002819", "end": "2025-12-17 17:04:47.302303", "msg": "", "rc": 0, "start": "2025-12-17 17:04:47.299484", "stderr": "", "stderr_lines": [], "stdout": " 17:04:47 up 17 days, 6:20, 0 user, load average: 0.00, 0.08, 0.13", "stdout_lines": [" 17:04:47 up 17 days, 6:20, 0 user, load average: 0.00, 0.08, 0.13"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003822", "end": "2025-12-17 17:05:11.464400", "msg": "", "rc": 0, "start": "2025-12-17 17:05:11.460578", "stderr": "", "stderr_lines": [], "stdout": " 17:05:11 up 3 days, 6:36, 1 user, load average: 0.01, 0.11, 0.09", "stdout_lines": [" 17:05:11 up 3 days, 6:36, 1 user, load average: 0.01, 0.11, 0.09"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.006620", "end": "2025-12-17 17:05:11.586071", "msg": "", "rc": 0, "start": "2025-12-17 17:05:11.579451", "stderr": "", "stderr_lines": [], "stdout": " 17:05:11 up 4:12, 1 user, load average: 1.18, 1.24, 1.25", "stdout_lines": [" 17:05:11 up 4:12, 1 user, load average: 1.18, 1.24, 1.25"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019668", "end": "2025-12-17 17:05:11.460243", "msg": "", "rc": 0, "start": "2025-12-17 17:05:11.440575", "stderr": "", "stderr_lines": [], "stdout": " 17:05:11 up 15 days, 6:31, 1 user, load average: 0.20, 0.11, 0.10", "stdout_lines": [" 17:05:11 up 15 days, 6:31, 1 user, load average: 0.20, 0.11, 0.10"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004326", "end": "2025-12-17 17:05:11.985862", "msg": "", "rc": 0, "start": "2025-12-17 17:05:11.981536", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004217", "end": "2025-12-17 17:05:12.016798", "msg": "", "rc": 0, "start": "2025-12-17 17:05:12.012581", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004605", "end": "2025-12-17 17:05:12.030231", "msg": "", "rc": 0, "start": "2025-12-17 17:05:12.025626", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005088", "end": "2025-12-17 17:05:12.057985", "msg": "", "rc": 0, "start": "2025-12-17 17:05:12.052897", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006667", "end": "2025-12-17 17:05:12.073696", "msg": "", "rc": 0, "start": "2025-12-17 17:05:12.067029", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004933", "end": "2025-12-17 17:04:45.902409", "msg": "", "rc": 0, "start": "2025-12-17 17:04:45.897476", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006224", "end": "2025-12-17 17:04:39.443114", "msg": "", "rc": 0, "start": "2025-12-17 17:04:39.436890", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010618", "end": "2025-12-17 17:05:12.731552", "msg": "", "rc": 0, "start": "2025-12-17 17:05:12.720934", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011302", "end": "2025-12-17 17:05:12.770335", "msg": "", "rc": 0, "start": "2025-12-17 17:05:12.759033", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005728", "end": "2025-12-17 17:05:12.975902", "msg": "", "rc": 0, "start": "2025-12-17 17:05:12.970174", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005334", "end": "2025-12-17 17:04:42.663318", "msg": "", "rc": 0, "start": "2025-12-17 17:04:42.657984", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005348", "end": "2025-12-17 14:05:13.230745", "msg": "", "rc": 0, "start": "2025-12-17 14:05:13.225397", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006324", "end": "2025-12-17 17:04:49.251846", "msg": "", "rc": 0, "start": "2025-12-17 17:04:49.245522", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005338", "end": "2025-12-17 17:05:13.403198", "msg": "", "rc": 0, "start": "2025-12-17 17:05:13.397860", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025650", "end": "2025-12-17 17:05:13.366081", "msg": "", "rc": 0, "start": "2025-12-17 17:05:13.340431", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010459", "end": "2025-12-17 17:05:13.650310", "msg": "", "rc": 0, "start": "2025-12-17 17:05:13.639851", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004273", "end": "2025-12-17 17:05:13.918261", "msg": "", "rc": 0, "start": "2025-12-17 17:05:13.913988", "stderr": "", "stderr_lines": [], "stdout": "77.6%", "stdout_lines": ["77.6%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004157", "end": "2025-12-17 17:05:13.932889", "msg": "", "rc": 0, "start": "2025-12-17 17:05:13.928732", "stderr": "", "stderr_lines": [], "stdout": "22.5%", "stdout_lines": ["22.5%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004735", "end": "2025-12-17 17:05:13.950182", "msg": "", "rc": 0, "start": "2025-12-17 17:05:13.945447", "stderr": "", "stderr_lines": [], "stdout": "49.5%", "stdout_lines": ["49.5%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004836", "end": "2025-12-17 17:05:13.980892", "msg": "", "rc": 0, "start": "2025-12-17 17:05:13.976056", "stderr": "", "stderr_lines": [], "stdout": "9.1%", "stdout_lines": ["9.1%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006012", "end": "2025-12-17 17:05:13.999481", "msg": "", "rc": 0, "start": "2025-12-17 17:05:13.993469", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003893", "end": "2025-12-17 17:04:47.953555", "msg": "", "rc": 0, "start": "2025-12-17 17:04:47.949662", "stderr": "", "stderr_lines": [], "stdout": "71.2%", "stdout_lines": ["71.2%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004863", "end": "2025-12-17 17:04:41.468702", "msg": "", "rc": 0, "start": "2025-12-17 17:04:41.463839", "stderr": "", "stderr_lines": [], "stdout": "69.7%", "stdout_lines": ["69.7%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010856", "end": "2025-12-17 17:05:14.698382", "msg": "", "rc": 0, "start": "2025-12-17 17:05:14.687526", "stderr": "", "stderr_lines": [], "stdout": "6.7%", "stdout_lines": ["6.7%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012004", "end": "2025-12-17 17:05:14.748675", "msg": "", "rc": 0, "start": "2025-12-17 17:05:14.736671", "stderr": "", "stderr_lines": [], "stdout": "12.9%", "stdout_lines": ["12.9%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006444", "end": "2025-12-17 17:05:15.037160", "msg": "", "rc": 0, "start": "2025-12-17 17:05:15.030716", "stderr": "", "stderr_lines": [], "stdout": "35.4%", "stdout_lines": ["35.4%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004173", "end": "2025-12-17 17:04:51.219412", "msg": "", "rc": 0, "start": "2025-12-17 17:04:51.215239", "stderr": "", "stderr_lines": [], "stdout": "55.7%", "stdout_lines": ["55.7%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005159", "end": "2025-12-17 14:05:15.212113", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 14:05:15.206954", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004416", "end": "2025-12-17 17:04:44.675159", "msg": "", "rc": 0, "start": "2025-12-17 17:04:44.670743", "stderr": "", "stderr_lines": [], "stdout": "27.1%", "stdout_lines": ["27.1%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005421", "end": "2025-12-17 17:05:15.491218", "msg": "", "rc": 0, "start": "2025-12-17 17:05:15.485797", "stderr": "", "stderr_lines": [], "stdout": "14.1%", "stdout_lines": ["14.1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.026221", "end": "2025-12-17 17:05:15.375847", "msg": "", "rc": 0, "start": "2025-12-17 17:05:15.349626", "stderr": "", "stderr_lines": [], "stdout": "19.8%", "stdout_lines": ["19.8%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012701", "end": "2025-12-17 17:05:15.718398", "msg": "", "rc": 0, "start": "2025-12-17 17:05:15.705697", "stderr": "", "stderr_lines": [], "stdout": "22.4%", "stdout_lines": ["22.4%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005358", "end": "2025-12-17 17:05:15.903141", "msg": "", "rc": 0, "start": "2025-12-17 17:05:15.897783", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004839", "end": "2025-12-17 17:05:15.924555", "msg": "", "rc": 0, "start": "2025-12-17 17:05:15.919716", "stderr": "", "stderr_lines": [], "stdout": "47.0°C", "stdout_lines": ["47.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005999", "end": "2025-12-17 17:05:15.924081", "msg": "", "rc": 0, "start": "2025-12-17 17:05:15.918082", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003353", "end": "2025-12-17 17:05:15.961560", "msg": "", "rc": 0, "start": "2025-12-17 17:05:15.958207", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006785", "end": "2025-12-17 17:05:15.994608", "msg": "", "rc": 0, "start": "2025-12-17 17:05:15.987823", "stderr": "", "stderr_lines": [], "stdout": "53.0°C", "stdout_lines": ["53.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002337", "end": "2025-12-17 17:04:49.830933", "msg": "", "rc": 0, "start": "2025-12-17 17:04:49.828596", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003235", "end": "2025-12-17 17:04:43.355994", "msg": "", "rc": 0, "start": "2025-12-17 17:04:43.352759", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011724", "end": "2025-12-17 17:05:16.610757", "msg": "", "rc": 0, "start": "2025-12-17 17:05:16.599033", "stderr": "", "stderr_lines": [], "stdout": "31.6°C", "stdout_lines": ["31.6°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012886", "end": "2025-12-17 17:05:16.667581", "msg": "", "rc": 0, "start": "2025-12-17 17:05:16.654695", "stderr": "", "stderr_lines": [], "stdout": "36.5°C", "stdout_lines": ["36.5°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003150", "end": "2025-12-17 17:05:16.869876", "msg": "", "rc": 0, "start": "2025-12-17 17:05:16.866726", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002865", "end": "2025-12-17 17:04:46.524031", "msg": "", "rc": 0, "start": "2025-12-17 17:04:46.521166", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003656", "end": "2025-12-17 17:04:53.130984", "msg": "", "rc": 0, "start": "2025-12-17 17:04:53.127328", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003897", "end": "2025-12-17 14:05:17.137293", "msg": "", "rc": 0, "start": "2025-12-17 14:05:17.133396", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002971", "end": "2025-12-17 17:05:17.315644", "msg": "", "rc": 0, "start": "2025-12-17 17:05:17.312673", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004964", "end": "2025-12-17 17:05:17.691801", "msg": "", "rc": 0, "start": "2025-12-17 17:05:17.686837", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028590", "end": "2025-12-17 17:05:17.325682", "msg": "", "rc": 0, "start": "2025-12-17 17:05:17.297092", "stderr": "", "stderr_lines": [], "stdout": "36.4°C", "stdout_lines": ["36.4°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004070", "end": "2025-12-17 17:05:17.916091", "msg": "", "rc": 0, "start": "2025-12-17 17:05:17.912021", "stderr": "", "stderr_lines": [], "stdout": "0.14", "stdout_lines": ["0.14"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004185", "end": "2025-12-17 17:05:17.932185", "msg": "", "rc": 0, "start": "2025-12-17 17:05:17.928000", "stderr": "", "stderr_lines": [], "stdout": "0.22", "stdout_lines": ["0.22"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004829", "end": "2025-12-17 17:05:17.977829", "msg": "", "rc": 0, "start": "2025-12-17 17:05:17.973000", "stderr": "", "stderr_lines": [], "stdout": "0.13", "stdout_lines": ["0.13"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004920", "end": "2025-12-17 17:05:17.983375", "msg": "", "rc": 0, "start": "2025-12-17 17:05:17.978455", "stderr": "", "stderr_lines": [], "stdout": "0.50", "stdout_lines": ["0.50"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005625", "end": "2025-12-17 17:05:17.984967", "msg": "", "rc": 0, "start": "2025-12-17 17:05:17.979342", "stderr": "", "stderr_lines": [], "stdout": "0.47", "stdout_lines": ["0.47"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004383", "end": "2025-12-17 17:04:51.865940", "msg": "", "rc": 0, "start": "2025-12-17 17:04:51.861557", "stderr": "", "stderr_lines": [], "stdout": "0.18", "stdout_lines": ["0.18"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004877", "end": "2025-12-17 17:04:45.353808", "msg": "", "rc": 0, "start": "2025-12-17 17:04:45.348931", "stderr": "", "stderr_lines": [], "stdout": "0.03", "stdout_lines": ["0.03"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010056", "end": "2025-12-17 17:05:18.725690", "msg": "", "rc": 0, "start": "2025-12-17 17:05:18.715634", "stderr": "", "stderr_lines": [], "stdout": "0.22", "stdout_lines": ["0.22"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011282", "end": "2025-12-17 17:05:18.728118", "msg": "", "rc": 0, "start": "2025-12-17 17:05:18.716836", "stderr": "", "stderr_lines": [], "stdout": "0.30", "stdout_lines": ["0.30"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005685", "end": "2025-12-17 17:05:18.928056", "msg": "", "rc": 0, "start": "2025-12-17 17:05:18.922371", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004684", "end": "2025-12-17 17:04:48.540524", "msg": "", "rc": 0, "start": "2025-12-17 17:04:48.535840", "stderr": "", "stderr_lines": [], "stdout": "0.48", "stdout_lines": ["0.48"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005816", "end": "2025-12-17 14:05:19.205084", "msg": "", "rc": 0, "start": "2025-12-17 14:05:19.199268", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004820", "end": "2025-12-17 17:04:55.286223", "msg": "", "rc": 0, "start": "2025-12-17 17:04:55.281403", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005394", "end": "2025-12-17 17:05:19.367064", "msg": "", "rc": 0, "start": "2025-12-17 17:05:19.361670", "stderr": "", "stderr_lines": [], "stdout": "0.01", "stdout_lines": ["0.01"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024424", "end": "2025-12-17 17:05:19.304926", "msg": "", "rc": 0, "start": "2025-12-17 17:05:19.280502", "stderr": "", "stderr_lines": [], "stdout": "0.32", "stdout_lines": ["0.32"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010269", "end": "2025-12-17 17:05:19.805939", "msg": "", "rc": 0, "start": "2025-12-17 17:05:19.795670", "stderr": "", "stderr_lines": [], "stdout": "1.16", "stdout_lines": ["1.16"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:05:10 up 3 days, 6:37, 1 user, load average: 0.17, 0.17, 0.23\nDisk Usage: 22%\nMemory Usage: 22.5%\nCPU Load: 0.14\nCPU Temp: 47.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:05:10 up 22 days, 3:56, 1 user, load average: 0.06, 0.10, 0.12\nDisk Usage: 23%\nMemory Usage: 77.6%\nCPU Load: 0.22\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:05:10 up 22 days, 4:16, 1 user, load average: 0.51, 0.63, 0.65\nDisk Usage: 14%\nMemory Usage: 49.5%\nCPU Load: 0.50\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:05:10 up 22 days, 5:29, 1 user, load average: 0.56, 0.56, 0.65\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.47\nCPU Temp: 53.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:05:10 up 22 days, 6:15, 1 user, load average: 0.06, 0.04, 0.00\nDisk Usage: 9%\nMemory Usage: 9.1%\nCPU Load: 0.13\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:05:11 up 15 days, 6:31, 1 user, load average: 0.20, 0.11, 0.10\nDisk Usage: 21%\nMemory Usage: 19.8%\nCPU Load: 0.32\nCPU Temp: 36.4°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:05:10 up 194 days, 8:38, 1 user, load average: 0.26, 0.21, 0.19\nDisk Usage: 6%\nMemory Usage: 12.9%\nCPU Load: 0.30\nCPU Temp: 36.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:05:10 up 194 days, 8:38, 1 user, load average: 0.17, 0.25, 0.18\nDisk Usage: 3%\nMemory Usage: 6.7%\nCPU Load: 0.22\nCPU Temp: 31.6°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:04:43 up 11 days, 4:54, 0 user, load average: 0.21, 0.11, 0.10\nDisk Usage: 48%\nMemory Usage: 71.2%\nCPU Load: 0.18\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:04:37 up 18 days, 1:06, 0 user, load average: 0.04, 0.03, 0.16\nDisk Usage: 25%\nMemory Usage: 69.7%\nCPU Load: 0.03\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:05:11 up 3 days, 6:36, 1 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 1%\nMemory Usage: 35.4%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:04:40 up 20 days, 19:58, 0 user, load average: 0.40, 0.51, 0.49\nDisk Usage: 28%\nMemory Usage: 27.1%\nCPU Load: 0.48\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:04:47 up 17 days, 6:20, 0 user, load average: 0.00, 0.08, 0.13\nDisk Usage: 76%\nMemory Usage: 55.7%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 2:05PM up 22 days, 3:54, 1 user, load averages: 0.10, 0.16, 0.18\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:05:11 up 3 days, 6:36, 1 user, load average: 0.01, 0.11, 0.09\nDisk Usage: 79%\nMemory Usage: 14.1%\nCPU Load: 0.01\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:05:11 up 4:12, 1 user, load average: 1.18, 1.24, 1.25\nDisk Usage: 1%\nMemory Usage: 22.4%\nCPU Load: 1.16\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T22:05:20.690768+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_221023_e38fad_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_221023_e38fad_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..0cac42d --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_221023_e38fad_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `0cfe9ce14fba41758b15cb9217038878` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T22:10:00.004008+00:00 | +| **Fin** | 2025-12-17T22:10:23.350720+00:00 | +| **Durée** | 23.3s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [hp.nas.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [dev.prod.home] +ok: [hp.truenas.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003709", "end": "2025-12-17 17:10:11.530724", "msg": "", "rc": 0, "start": "2025-12-17 17:10:11.527015", "stderr": "", "stderr_lines": [], "stdout": " 17:10:11 up 22 days, 6:20, 1 user, load average: 0.00, 0.01, 0.00", "stdout_lines": [" 17:10:11 up 22 days, 6:20, 1 user, load average: 0.00, 0.01, 0.00"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003452", "end": "2025-12-17 17:10:11.530059", "msg": "", "rc": 0, "start": "2025-12-17 17:10:11.526607", "stderr": "", "stderr_lines": [], "stdout": " 17:10:11 up 22 days, 4:21, 1 user, load average: 0.65, 0.59, 0.62", "stdout_lines": [" 17:10:11 up 22 days, 4:21, 1 user, load average: 0.65, 0.59, 0.62"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003749", "end": "2025-12-17 17:10:11.546909", "msg": "", "rc": 0, "start": "2025-12-17 17:10:11.543160", "stderr": "", "stderr_lines": [], "stdout": " 17:10:11 up 22 days, 5:34, 1 user, load average: 0.56, 0.60, 0.63", "stdout_lines": [" 17:10:11 up 22 days, 5:34, 1 user, load average: 0.56, 0.60, 0.63"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002803", "end": "2025-12-17 17:10:11.556409", "msg": "", "rc": 0, "start": "2025-12-17 17:10:11.553606", "stderr": "", "stderr_lines": [], "stdout": " 17:10:11 up 3 days, 6:42, 1 user, load average: 0.27, 0.16, 0.20", "stdout_lines": [" 17:10:11 up 3 days, 6:42, 1 user, load average: 0.27, 0.16, 0.20"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003095", "end": "2025-12-17 17:09:45.431272", "msg": "", "rc": 0, "start": "2025-12-17 17:09:45.428177", "stderr": "", "stderr_lines": [], "stdout": " 17:09:45 up 11 days, 4:59, 0 user, load average: 0.10, 0.14, 0.10", "stdout_lines": [" 17:09:45 up 11 days, 4:59, 0 user, load average: 0.10, 0.14, 0.10"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008307", "end": "2025-12-17 17:10:12.231502", "msg": "", "rc": 0, "start": "2025-12-17 17:10:12.223195", "stderr": "", "stderr_lines": [], "stdout": " 17:10:12 up 194 days, 8:43, 1 user, load average: 0.49, 0.30, 0.21", "stdout_lines": [" 17:10:12 up 194 days, 8:43, 1 user, load average: 0.49, 0.30, 0.21"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.010331", "end": "2025-12-17 17:10:12.258629", "msg": "", "rc": 0, "start": "2025-12-17 17:10:12.248298", "stderr": "", "stderr_lines": [], "stdout": " 17:10:12 up 194 days, 8:43, 1 user, load average: 0.41, 0.24, 0.20", "stdout_lines": [" 17:10:12 up 194 days, 8:43, 1 user, load average: 0.41, 0.24, 0.20"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.003586", "end": "2025-12-17 17:10:12.518075", "msg": "", "rc": 0, "start": "2025-12-17 17:10:11.514489", "stderr": "", "stderr_lines": [], "stdout": " 17:10:11 up 22 days, 4:01, 1 user, load average: 0.06, 0.10, 0.10", "stdout_lines": [" 17:10:11 up 22 days, 4:01, 1 user, load average: 0.06, 0.10, 0.10"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003249", "end": "2025-12-17 17:09:39.374921", "msg": "", "rc": 0, "start": "2025-12-17 17:09:39.371672", "stderr": "", "stderr_lines": [], "stdout": " 17:09:39 up 18 days, 1:11, 0 user, load average: 0.00, 0.01, 0.11", "stdout_lines": [" 17:09:39 up 18 days, 1:11, 0 user, load average: 0.00, 0.01, 0.11"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004874", "end": "2025-12-17 17:10:12.760670", "msg": "", "rc": 0, "start": "2025-12-17 17:10:12.755796", "stderr": "", "stderr_lines": [], "stdout": " 17:10:12 up 3 days, 6:41, 1 user, load average: 0.08, 0.04, 0.01", "stdout_lines": [" 17:10:12 up 3 days, 6:41, 1 user, load average: 0.08, 0.04, 0.01"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003066", "end": "2025-12-17 17:09:42.307817", "msg": "", "rc": 0, "start": "2025-12-17 17:09:42.304751", "stderr": "", "stderr_lines": [], "stdout": " 17:09:42 up 20 days, 20:04, 0 user, load average: 0.32, 0.43, 0.45", "stdout_lines": [" 17:09:42 up 20 days, 20:04, 0 user, load average: 0.32, 0.43, 0.45"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002945", "end": "2025-12-17 17:09:48.994924", "msg": "", "rc": 0, "start": "2025-12-17 17:09:48.991979", "stderr": "", "stderr_lines": [], "stdout": " 17:09:48 up 17 days, 6:25, 0 user, load average: 0.00, 0.04, 0.09", "stdout_lines": [" 17:09:48 up 17 days, 6:25, 0 user, load average: 0.00, 0.04, 0.09"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004301", "end": "2025-12-17 14:10:12.984648", "msg": "", "rc": 0, "start": "2025-12-17 14:10:12.980347", "stderr": "", "stderr_lines": [], "stdout": " 2:10PM up 22 days, 4 hrs, 1 user, load averages: 0.27, 0.21, 0.19", "stdout_lines": [" 2:10PM up 22 days, 4 hrs, 1 user, load averages: 0.27, 0.21, 0.19"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019302", "end": "2025-12-17 17:10:12.926735", "msg": "", "rc": 0, "start": "2025-12-17 17:10:12.907433", "stderr": "", "stderr_lines": [], "stdout": " 17:10:12 up 15 days, 6:36, 1 user, load average: 0.16, 0.11, 0.09", "stdout_lines": [" 17:10:12 up 15 days, 6:36, 1 user, load average: 0.16, 0.11, 0.09"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.006495", "end": "2025-12-17 17:10:13.775663", "msg": "", "rc": 0, "start": "2025-12-17 17:10:13.769168", "stderr": "", "stderr_lines": [], "stdout": " 17:10:13 up 4:17, 1 user, load average: 1.24, 1.20, 1.23", "stdout_lines": [" 17:10:13 up 4:17, 1 user, load average: 1.24, 1.20, 1.23"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003847", "end": "2025-12-17 17:10:13.202463", "msg": "", "rc": 0, "start": "2025-12-17 17:10:13.198616", "stderr": "", "stderr_lines": [], "stdout": " 17:10:13 up 3 days, 6:41, 1 user, load average: 0.01, 0.06, 0.07", "stdout_lines": [" 17:10:13 up 3 days, 6:41, 1 user, load average: 0.01, 0.06, 0.07"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004416", "end": "2025-12-17 17:10:13.609903", "msg": "", "rc": 0, "start": "2025-12-17 17:10:13.605487", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004066", "end": "2025-12-17 17:10:13.632451", "msg": "", "rc": 0, "start": "2025-12-17 17:10:13.628385", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005125", "end": "2025-12-17 17:10:13.641702", "msg": "", "rc": 0, "start": "2025-12-17 17:10:13.636577", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004203", "end": "2025-12-17 17:10:13.678989", "msg": "", "rc": 0, "start": "2025-12-17 17:10:13.674786", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.007105", "end": "2025-12-17 17:10:13.702247", "msg": "", "rc": 0, "start": "2025-12-17 17:10:13.695142", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005141", "end": "2025-12-17 17:09:47.516627", "msg": "", "rc": 0, "start": "2025-12-17 17:09:47.511486", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006808", "end": "2025-12-17 17:09:41.070491", "msg": "", "rc": 0, "start": "2025-12-17 17:09:41.063683", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010680", "end": "2025-12-17 17:10:14.376226", "msg": "", "rc": 0, "start": "2025-12-17 17:10:14.365546", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.012009", "end": "2025-12-17 17:10:14.411339", "msg": "", "rc": 0, "start": "2025-12-17 17:10:14.399330", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005704", "end": "2025-12-17 17:10:14.681321", "msg": "", "rc": 0, "start": "2025-12-17 17:10:14.675617", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005707", "end": "2025-12-17 17:09:44.390345", "msg": "", "rc": 0, "start": "2025-12-17 17:09:44.384638", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005397", "end": "2025-12-17 14:10:14.961663", "msg": "", "rc": 0, "start": "2025-12-17 14:10:14.956266", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005136", "end": "2025-12-17 17:09:51.002054", "msg": "", "rc": 0, "start": "2025-12-17 17:09:50.996918", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.024975", "end": "2025-12-17 17:10:15.016410", "msg": "", "rc": 0, "start": "2025-12-17 17:10:14.991435", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005447", "end": "2025-12-17 17:10:15.134547", "msg": "", "rc": 0, "start": "2025-12-17 17:10:15.129100", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011855", "end": "2025-12-17 17:10:16.043887", "msg": "", "rc": 0, "start": "2025-12-17 17:10:16.032032", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004332", "end": "2025-12-17 17:10:15.791591", "msg": "", "rc": 0, "start": "2025-12-17 17:10:15.787259", "stderr": "", "stderr_lines": [], "stdout": "77.6%", "stdout_lines": ["77.6%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004166", "end": "2025-12-17 17:10:15.811801", "msg": "", "rc": 0, "start": "2025-12-17 17:10:15.807635", "stderr": "", "stderr_lines": [], "stdout": "22.5%", "stdout_lines": ["22.5%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004668", "end": "2025-12-17 17:10:15.863609", "msg": "", "rc": 0, "start": "2025-12-17 17:10:15.858941", "stderr": "", "stderr_lines": [], "stdout": "49.5%", "stdout_lines": ["49.5%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004867", "end": "2025-12-17 17:10:15.902172", "msg": "", "rc": 0, "start": "2025-12-17 17:10:15.897305", "stderr": "", "stderr_lines": [], "stdout": "9.1%", "stdout_lines": ["9.1%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.008757", "end": "2025-12-17 17:10:15.907412", "msg": "", "rc": 0, "start": "2025-12-17 17:10:15.898655", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003852", "end": "2025-12-17 17:09:49.800538", "msg": "", "rc": 0, "start": "2025-12-17 17:09:49.796686", "stderr": "", "stderr_lines": [], "stdout": "70.9%", "stdout_lines": ["70.9%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006667", "end": "2025-12-17 17:09:43.360326", "msg": "", "rc": 0, "start": "2025-12-17 17:09:43.353659", "stderr": "", "stderr_lines": [], "stdout": "69.6%", "stdout_lines": ["69.6%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010828", "end": "2025-12-17 17:10:16.612978", "msg": "", "rc": 0, "start": "2025-12-17 17:10:16.602150", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011935", "end": "2025-12-17 17:10:16.620402", "msg": "", "rc": 0, "start": "2025-12-17 17:10:16.608467", "stderr": "", "stderr_lines": [], "stdout": "13.0%", "stdout_lines": ["13.0%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006002", "end": "2025-12-17 17:10:16.871129", "msg": "", "rc": 0, "start": "2025-12-17 17:10:16.865127", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005251", "end": "2025-12-17 14:10:17.084870", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 14:10:17.079619", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003441", "end": "2025-12-17 17:09:53.134300", "msg": "", "rc": 0, "start": "2025-12-17 17:09:53.130859", "stderr": "", "stderr_lines": [], "stdout": "55.1%", "stdout_lines": ["55.1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004322", "end": "2025-12-17 17:09:46.570415", "msg": "", "rc": 0, "start": "2025-12-17 17:09:46.566093", "stderr": "", "stderr_lines": [], "stdout": "27.3%", "stdout_lines": ["27.3%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005395", "end": "2025-12-17 17:10:17.330776", "msg": "", "rc": 0, "start": "2025-12-17 17:10:17.325381", "stderr": "", "stderr_lines": [], "stdout": "14.1%", "stdout_lines": ["14.1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025682", "end": "2025-12-17 17:10:17.253885", "msg": "", "rc": 0, "start": "2025-12-17 17:10:17.228203", "stderr": "", "stderr_lines": [], "stdout": "19.8%", "stdout_lines": ["19.8%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012065", "end": "2025-12-17 17:10:18.191246", "msg": "", "rc": 0, "start": "2025-12-17 17:10:18.179181", "stderr": "", "stderr_lines": [], "stdout": "22.1%", "stdout_lines": ["22.1%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005555", "end": "2025-12-17 17:10:17.966818", "msg": "", "rc": 0, "start": "2025-12-17 17:10:17.961263", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004914", "end": "2025-12-17 17:10:18.010430", "msg": "", "rc": 0, "start": "2025-12-17 17:10:18.005516", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002712", "end": "2025-12-17 17:10:18.023450", "msg": "", "rc": 0, "start": "2025-12-17 17:10:18.020738", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006869", "end": "2025-12-17 17:10:18.058753", "msg": "", "rc": 0, "start": "2025-12-17 17:10:18.051884", "stderr": "", "stderr_lines": [], "stdout": "53.0°C", "stdout_lines": ["53.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006560", "end": "2025-12-17 17:10:18.065971", "msg": "", "rc": 0, "start": "2025-12-17 17:10:18.059411", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002676", "end": "2025-12-17 17:09:51.924872", "msg": "", "rc": 0, "start": "2025-12-17 17:09:51.922196", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003008", "end": "2025-12-17 17:09:45.419051", "msg": "", "rc": 0, "start": "2025-12-17 17:09:45.416043", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011738", "end": "2025-12-17 17:10:18.722183", "msg": "", "rc": 0, "start": "2025-12-17 17:10:18.710445", "stderr": "", "stderr_lines": [], "stdout": "31.6°C", "stdout_lines": ["31.6°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012979", "end": "2025-12-17 17:10:18.752994", "msg": "", "rc": 0, "start": "2025-12-17 17:10:18.740015", "stderr": "", "stderr_lines": [], "stdout": "37.5°C", "stdout_lines": ["37.5°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003122", "end": "2025-12-17 17:10:19.004767", "msg": "", "rc": 0, "start": "2025-12-17 17:10:19.001645", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002788", "end": "2025-12-17 17:09:48.602265", "msg": "", "rc": 0, "start": "2025-12-17 17:09:48.599477", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003799", "end": "2025-12-17 14:10:19.205650", "msg": "", "rc": 0, "start": "2025-12-17 14:10:19.201851", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002800", "end": "2025-12-17 17:09:55.222935", "msg": "", "rc": 0, "start": "2025-12-17 17:09:55.220135", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002972", "end": "2025-12-17 17:10:19.457621", "msg": "", "rc": 0, "start": "2025-12-17 17:10:19.454649", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004480", "end": "2025-12-17 17:10:20.358499", "msg": "", "rc": 0, "start": "2025-12-17 17:10:20.354019", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028399", "end": "2025-12-17 17:10:19.367688", "msg": "", "rc": 0, "start": "2025-12-17 17:10:19.339289", "stderr": "", "stderr_lines": [], "stdout": "35.6°C", "stdout_lines": ["35.6°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004093", "end": "2025-12-17 17:10:19.913986", "msg": "", "rc": 0, "start": "2025-12-17 17:10:19.909893", "stderr": "", "stderr_lines": [], "stdout": "0.20", "stdout_lines": ["0.20"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004000", "end": "2025-12-17 17:10:19.929696", "msg": "", "rc": 0, "start": "2025-12-17 17:10:19.925696", "stderr": "", "stderr_lines": [], "stdout": "0.38", "stdout_lines": ["0.38"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004608", "end": "2025-12-17 17:10:19.946327", "msg": "", "rc": 0, "start": "2025-12-17 17:10:19.941719", "stderr": "", "stderr_lines": [], "stdout": "0.55", "stdout_lines": ["0.55"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005215", "end": "2025-12-17 17:10:19.960374", "msg": "", "rc": 0, "start": "2025-12-17 17:10:19.955159", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005595", "end": "2025-12-17 17:10:19.974637", "msg": "", "rc": 0, "start": "2025-12-17 17:10:19.969042", "stderr": "", "stderr_lines": [], "stdout": "0.75", "stdout_lines": ["0.75"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004038", "end": "2025-12-17 17:09:53.850073", "msg": "", "rc": 0, "start": "2025-12-17 17:09:53.846035", "stderr": "", "stderr_lines": [], "stdout": "0.09", "stdout_lines": ["0.09"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005035", "end": "2025-12-17 17:09:47.344307", "msg": "", "rc": 0, "start": "2025-12-17 17:09:47.339272", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010027", "end": "2025-12-17 17:10:20.737123", "msg": "", "rc": 0, "start": "2025-12-17 17:10:20.727096", "stderr": "", "stderr_lines": [], "stdout": "0.49", "stdout_lines": ["0.49"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011174", "end": "2025-12-17 17:10:20.750309", "msg": "", "rc": 0, "start": "2025-12-17 17:10:20.739135", "stderr": "", "stderr_lines": [], "stdout": "0.34", "stdout_lines": ["0.34"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005726", "end": "2025-12-17 17:10:21.052408", "msg": "", "rc": 0, "start": "2025-12-17 17:10:21.046682", "stderr": "", "stderr_lines": [], "stdout": "0.07", "stdout_lines": ["0.07"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005371", "end": "2025-12-17 17:09:50.585069", "msg": "", "rc": 0, "start": "2025-12-17 17:09:50.579698", "stderr": "", "stderr_lines": [], "stdout": "0.45", "stdout_lines": ["0.45"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006216", "end": "2025-12-17 14:10:21.281980", "msg": "", "rc": 0, "start": "2025-12-17 14:10:21.275764", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004349", "end": "2025-12-17 17:09:57.323319", "msg": "", "rc": 0, "start": "2025-12-17 17:09:57.318970", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024254", "end": "2025-12-17 17:10:21.327314", "msg": "", "rc": 0, "start": "2025-12-17 17:10:21.303060", "stderr": "", "stderr_lines": [], "stdout": "0.14", "stdout_lines": ["0.14"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.009041", "end": "2025-12-17 17:10:22.451747", "msg": "", "rc": 0, "start": "2025-12-17 17:10:22.442706", "stderr": "", "stderr_lines": [], "stdout": "1.52", "stdout_lines": ["1.52"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005238", "end": "2025-12-17 17:10:21.535651", "msg": "", "rc": 0, "start": "2025-12-17 17:10:21.530413", "stderr": "", "stderr_lines": [], "stdout": "0.01", "stdout_lines": ["0.01"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:10:11 up 3 days, 6:42, 1 user, load average: 0.27, 0.16, 0.20\nDisk Usage: 22%\nMemory Usage: 22.5%\nCPU Load: 0.38\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:10:11 up 22 days, 4:01, 1 user, load average: 0.06, 0.10, 0.10\nDisk Usage: 23%\nMemory Usage: 77.6%\nCPU Load: 0.20\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:10:11 up 22 days, 4:21, 1 user, load average: 0.65, 0.59, 0.62\nDisk Usage: 14%\nMemory Usage: 49.5%\nCPU Load: 0.55\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:10:11 up 22 days, 5:34, 1 user, load average: 0.56, 0.60, 0.63\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.75\nCPU Temp: 53.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:10:11 up 22 days, 6:20, 1 user, load average: 0.00, 0.01, 0.00\nDisk Usage: 9%\nMemory Usage: 9.1%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:10:12 up 15 days, 6:36, 1 user, load average: 0.16, 0.11, 0.09\nDisk Usage: 21%\nMemory Usage: 19.8%\nCPU Load: 0.14\nCPU Temp: 35.6°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:10:12 up 194 days, 8:43, 1 user, load average: 0.41, 0.24, 0.20\nDisk Usage: 6%\nMemory Usage: 13.0%\nCPU Load: 0.34\nCPU Temp: 37.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:10:12 up 194 days, 8:43, 1 user, load average: 0.49, 0.30, 0.21\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.49\nCPU Temp: 31.6°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:09:45 up 11 days, 4:59, 0 user, load average: 0.10, 0.14, 0.10\nDisk Usage: 48%\nMemory Usage: 70.9%\nCPU Load: 0.09\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:09:39 up 18 days, 1:11, 0 user, load average: 0.00, 0.01, 0.11\nDisk Usage: 25%\nMemory Usage: 69.6%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:10:12 up 3 days, 6:41, 1 user, load average: 0.08, 0.04, 0.01\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.07\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:09:42 up 20 days, 20:04, 0 user, load average: 0.32, 0.43, 0.45\nDisk Usage: 28%\nMemory Usage: 27.3%\nCPU Load: 0.45\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:09:48 up 17 days, 6:25, 0 user, load average: 0.00, 0.04, 0.09\nDisk Usage: 76%\nMemory Usage: 55.1%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 2:10PM up 22 days, 4 hrs, 1 user, load averages: 0.27, 0.21, 0.19\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:10:13 up 3 days, 6:41, 1 user, load average: 0.01, 0.06, 0.07\nDisk Usage: 79%\nMemory Usage: 14.1%\nCPU Load: 0.01\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:10:13 up 4:17, 1 user, load average: 1.24, 1.20, 1.23\nDisk Usage: 1%\nMemory Usage: 22.1%\nCPU Load: 1.52\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T22:10:23.390202+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_221521_4b8729_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_221521_4b8729_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..61955b2 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_221521_4b8729_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `00b3c8fe30bf4d3cb024c06c4105465e` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T22:15:00.000924+00:00 | +| **Fin** | 2025-12-17T22:15:21.802954+00:00 | +| **Durée** | 21.8s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [hp2.i7.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003907", "end": "2025-12-17 17:15:11.162046", "msg": "", "rc": 0, "start": "2025-12-17 17:15:11.158139", "stderr": "", "stderr_lines": [], "stdout": " 17:15:11 up 22 days, 6:25, 1 user, load average: 0.10, 0.06, 0.02", "stdout_lines": [" 17:15:11 up 22 days, 6:25, 1 user, load average: 0.10, 0.06, 0.02"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003405", "end": "2025-12-17 17:15:11.170253", "msg": "", "rc": 0, "start": "2025-12-17 17:15:11.166848", "stderr": "", "stderr_lines": [], "stdout": " 17:15:11 up 22 days, 4:26, 1 user, load average: 1.01, 0.83, 0.72", "stdout_lines": [" 17:15:11 up 22 days, 4:26, 1 user, load average: 1.01, 0.83, 0.72"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003861", "end": "2025-12-17 17:15:11.179838", "msg": "", "rc": 0, "start": "2025-12-17 17:15:11.175977", "stderr": "", "stderr_lines": [], "stdout": " 17:15:11 up 22 days, 5:39, 1 user, load average: 0.87, 0.70, 0.66", "stdout_lines": [" 17:15:11 up 22 days, 5:39, 1 user, load average: 0.87, 0.70, 0.66"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002897", "end": "2025-12-17 17:15:11.190839", "msg": "", "rc": 0, "start": "2025-12-17 17:15:11.187942", "stderr": "", "stderr_lines": [], "stdout": " 17:15:11 up 3 days, 6:47, 1 user, load average: 0.17, 0.16, 0.18", "stdout_lines": [" 17:15:11 up 3 days, 6:47, 1 user, load average: 0.17, 0.16, 0.18"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002965", "end": "2025-12-17 17:14:45.106335", "msg": "", "rc": 0, "start": "2025-12-17 17:14:45.103370", "stderr": "", "stderr_lines": [], "stdout": " 17:14:45 up 11 days, 5:04, 0 user, load average: 0.20, 0.11, 0.10", "stdout_lines": [" 17:14:45 up 11 days, 5:04, 0 user, load average: 0.20, 0.11, 0.10"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008523", "end": "2025-12-17 17:15:11.858723", "msg": "", "rc": 0, "start": "2025-12-17 17:15:11.850200", "stderr": "", "stderr_lines": [], "stdout": " 17:15:11 up 194 days, 8:48, 1 user, load average: 0.44, 0.30, 0.21", "stdout_lines": [" 17:15:11 up 194 days, 8:48, 1 user, load average: 0.44, 0.30, 0.21"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009238", "end": "2025-12-17 17:15:11.888167", "msg": "", "rc": 0, "start": "2025-12-17 17:15:11.878929", "stderr": "", "stderr_lines": [], "stdout": " 17:15:11 up 194 days, 8:48, 1 user, load average: 0.56, 0.37, 0.25", "stdout_lines": [" 17:15:11 up 194 days, 8:48, 1 user, load average: 0.56, 0.37, 0.25"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004446", "end": "2025-12-17 17:15:12.149079", "msg": "", "rc": 0, "start": "2025-12-17 17:15:11.144633", "stderr": "", "stderr_lines": [], "stdout": " 17:15:11 up 22 days, 4:06, 1 user, load average: 0.10, 0.10, 0.09", "stdout_lines": [" 17:15:11 up 22 days, 4:06, 1 user, load average: 0.10, 0.10, 0.09"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004555", "end": "2025-12-17 17:14:39.076049", "msg": "", "rc": 0, "start": "2025-12-17 17:14:39.071494", "stderr": "", "stderr_lines": [], "stdout": " 17:14:39 up 18 days, 1:16, 0 user, load average: 0.16, 0.08, 0.10", "stdout_lines": [" 17:14:39 up 18 days, 1:16, 0 user, load average: 0.16, 0.08, 0.10"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004826", "end": "2025-12-17 17:15:12.387384", "msg": "", "rc": 0, "start": "2025-12-17 17:15:12.382558", "stderr": "", "stderr_lines": [], "stdout": " 17:15:12 up 3 days, 6:46, 1 user, load average: 0.00, 0.01, 0.00", "stdout_lines": [" 17:15:12 up 3 days, 6:46, 1 user, load average: 0.00, 0.01, 0.00"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003496", "end": "2025-12-17 17:14:41.969275", "msg": "", "rc": 0, "start": "2025-12-17 17:14:41.965779", "stderr": "", "stderr_lines": [], "stdout": " 17:14:41 up 20 days, 20:08, 0 user, load average: 0.45, 0.42, 0.44", "stdout_lines": [" 17:14:41 up 20 days, 20:08, 0 user, load average: 0.45, 0.42, 0.44"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002830", "end": "2025-12-17 17:14:48.608586", "msg": "", "rc": 0, "start": "2025-12-17 17:14:48.605756", "stderr": "", "stderr_lines": [], "stdout": " 17:14:48 up 17 days, 6:30, 0 user, load average: 0.19, 0.16, 0.12", "stdout_lines": [" 17:14:48 up 17 days, 6:30, 0 user, load average: 0.19, 0.16, 0.12"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019539", "end": "2025-12-17 17:15:12.561334", "msg": "", "rc": 0, "start": "2025-12-17 17:15:12.541795", "stderr": "", "stderr_lines": [], "stdout": " 17:15:12 up 15 days, 6:41, 1 user, load average: 0.24, 0.13, 0.10", "stdout_lines": [" 17:15:12 up 15 days, 6:41, 1 user, load average: 0.24, 0.13, 0.10"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004231", "end": "2025-12-17 14:15:12.689682", "msg": "", "rc": 0, "start": "2025-12-17 14:15:12.685451", "stderr": "", "stderr_lines": [], "stdout": " 2:15PM up 22 days, 4:05, 1 user, load averages: 0.16, 0.17, 0.16", "stdout_lines": [" 2:15PM up 22 days, 4:05, 1 user, load averages: 0.16, 0.17, 0.16"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003699", "end": "2025-12-17 17:15:12.818272", "msg": "", "rc": 0, "start": "2025-12-17 17:15:12.814573", "stderr": "", "stderr_lines": [], "stdout": " 17:15:12 up 3 days, 6:46, 1 user, load average: 0.02, 0.07, 0.08", "stdout_lines": [" 17:15:12 up 3 days, 6:46, 1 user, load average: 0.02, 0.07, 0.08"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.006018", "end": "2025-12-17 17:15:13.886221", "msg": "", "rc": 0, "start": "2025-12-17 17:15:13.880203", "stderr": "", "stderr_lines": [], "stdout": " 17:15:13 up 4:22, 1 user, load average: 1.18, 1.20, 1.23", "stdout_lines": [" 17:15:13 up 4:22, 1 user, load average: 1.18, 1.20, 1.23"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004280", "end": "2025-12-17 17:15:13.237335", "msg": "", "rc": 0, "start": "2025-12-17 17:15:13.233055", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004131", "end": "2025-12-17 17:15:13.258039", "msg": "", "rc": 0, "start": "2025-12-17 17:15:13.253908", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004969", "end": "2025-12-17 17:15:13.278992", "msg": "", "rc": 0, "start": "2025-12-17 17:15:13.274023", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005302", "end": "2025-12-17 17:15:13.305005", "msg": "", "rc": 0, "start": "2025-12-17 17:15:13.299703", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004846", "end": "2025-12-17 17:15:13.312041", "msg": "", "rc": 0, "start": "2025-12-17 17:15:13.307195", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004857", "end": "2025-12-17 17:14:47.155786", "msg": "", "rc": 0, "start": "2025-12-17 17:14:47.150929", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005143", "end": "2025-12-17 17:14:40.683073", "msg": "", "rc": 0, "start": "2025-12-17 17:14:40.677930", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010697", "end": "2025-12-17 17:15:13.986567", "msg": "", "rc": 0, "start": "2025-12-17 17:15:13.975870", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011584", "end": "2025-12-17 17:15:14.041070", "msg": "", "rc": 0, "start": "2025-12-17 17:15:14.029486", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005578", "end": "2025-12-17 17:15:14.245761", "msg": "", "rc": 0, "start": "2025-12-17 17:15:14.240183", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005563", "end": "2025-12-17 17:14:43.873417", "msg": "", "rc": 0, "start": "2025-12-17 17:14:43.867854", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005117", "end": "2025-12-17 17:14:50.509601", "msg": "", "rc": 0, "start": "2025-12-17 17:14:50.504484", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005806", "end": "2025-12-17 14:15:14.503634", "msg": "", "rc": 0, "start": "2025-12-17 14:15:14.497828", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005324", "end": "2025-12-17 17:15:14.740778", "msg": "", "rc": 0, "start": "2025-12-17 17:15:14.735454", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025386", "end": "2025-12-17 17:15:14.653876", "msg": "", "rc": 0, "start": "2025-12-17 17:15:14.628490", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011257", "end": "2025-12-17 17:15:16.053568", "msg": "", "rc": 0, "start": "2025-12-17 17:15:16.042311", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004234", "end": "2025-12-17 17:15:15.347762", "msg": "", "rc": 0, "start": "2025-12-17 17:15:15.343528", "stderr": "", "stderr_lines": [], "stdout": "77.6%", "stdout_lines": ["77.6%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004285", "end": "2025-12-17 17:15:15.363208", "msg": "", "rc": 0, "start": "2025-12-17 17:15:15.358923", "stderr": "", "stderr_lines": [], "stdout": "22.5%", "stdout_lines": ["22.5%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004925", "end": "2025-12-17 17:15:15.364216", "msg": "", "rc": 0, "start": "2025-12-17 17:15:15.359291", "stderr": "", "stderr_lines": [], "stdout": "49.3%", "stdout_lines": ["49.3%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004887", "end": "2025-12-17 17:15:15.399965", "msg": "", "rc": 0, "start": "2025-12-17 17:15:15.395078", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005805", "end": "2025-12-17 17:15:15.427629", "msg": "", "rc": 0, "start": "2025-12-17 17:15:15.421824", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003964", "end": "2025-12-17 17:14:49.247968", "msg": "", "rc": 0, "start": "2025-12-17 17:14:49.244004", "stderr": "", "stderr_lines": [], "stdout": "71.1%", "stdout_lines": ["71.1%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006038", "end": "2025-12-17 17:14:42.803274", "msg": "", "rc": 0, "start": "2025-12-17 17:14:42.797236", "stderr": "", "stderr_lines": [], "stdout": "69.5%", "stdout_lines": ["69.5%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010948", "end": "2025-12-17 17:15:16.030468", "msg": "", "rc": 0, "start": "2025-12-17 17:15:16.019520", "stderr": "", "stderr_lines": [], "stdout": "6.7%", "stdout_lines": ["6.7%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011992", "end": "2025-12-17 17:15:16.090048", "msg": "", "rc": 0, "start": "2025-12-17 17:15:16.078056", "stderr": "", "stderr_lines": [], "stdout": "13.0%", "stdout_lines": ["13.0%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006059", "end": "2025-12-17 17:15:16.392258", "msg": "", "rc": 0, "start": "2025-12-17 17:15:16.386199", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004063", "end": "2025-12-17 17:14:52.544164", "msg": "", "rc": 0, "start": "2025-12-17 17:14:52.540101", "stderr": "", "stderr_lines": [], "stdout": "55.6%", "stdout_lines": ["55.6%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005413", "end": "2025-12-17 14:15:16.562569", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 14:15:16.557156", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004120", "end": "2025-12-17 17:14:46.015528", "msg": "", "rc": 0, "start": "2025-12-17 17:14:46.011408", "stderr": "", "stderr_lines": [], "stdout": "26.5%", "stdout_lines": ["26.5%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010585", "end": "2025-12-17 17:15:16.863692", "msg": "", "rc": 0, "start": "2025-12-17 17:15:16.853107", "stderr": "", "stderr_lines": [], "stdout": "22.2%", "stdout_lines": ["22.2%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005347", "end": "2025-12-17 17:15:16.828931", "msg": "", "rc": 0, "start": "2025-12-17 17:15:16.823584", "stderr": "", "stderr_lines": [], "stdout": "13.9%", "stdout_lines": ["13.9%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025782", "end": "2025-12-17 17:15:16.747955", "msg": "", "rc": 0, "start": "2025-12-17 17:15:16.722173", "stderr": "", "stderr_lines": [], "stdout": "19.8%", "stdout_lines": ["19.8%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005409", "end": "2025-12-17 17:15:17.279001", "msg": "", "rc": 0, "start": "2025-12-17 17:15:17.273592", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004799", "end": "2025-12-17 17:15:17.296815", "msg": "", "rc": 0, "start": "2025-12-17 17:15:17.292016", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005718", "end": "2025-12-17 17:15:17.297075", "msg": "", "rc": 0, "start": "2025-12-17 17:15:17.291357", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002844", "end": "2025-12-17 17:15:17.335899", "msg": "", "rc": 0, "start": "2025-12-17 17:15:17.333055", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006708", "end": "2025-12-17 17:15:17.367566", "msg": "", "rc": 0, "start": "2025-12-17 17:15:17.360858", "stderr": "", "stderr_lines": [], "stdout": "52.5°C", "stdout_lines": ["52.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002824", "end": "2025-12-17 17:14:51.195625", "msg": "", "rc": 0, "start": "2025-12-17 17:14:51.192801", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003342", "end": "2025-12-17 17:14:44.739595", "msg": "", "rc": 0, "start": "2025-12-17 17:14:44.736253", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011784", "end": "2025-12-17 17:15:17.989430", "msg": "", "rc": 0, "start": "2025-12-17 17:15:17.977646", "stderr": "", "stderr_lines": [], "stdout": "32.6°C", "stdout_lines": ["32.6°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012973", "end": "2025-12-17 17:15:18.025355", "msg": "", "rc": 0, "start": "2025-12-17 17:15:18.012382", "stderr": "", "stderr_lines": [], "stdout": "37.5°C", "stdout_lines": ["37.5°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003121", "end": "2025-12-17 17:15:18.330504", "msg": "", "rc": 0, "start": "2025-12-17 17:15:18.327383", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003742", "end": "2025-12-17 14:15:18.481313", "msg": "", "rc": 0, "start": "2025-12-17 14:15:18.477571", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002503", "end": "2025-12-17 17:14:54.498675", "msg": "", "rc": 0, "start": "2025-12-17 17:14:54.496172", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002976", "end": "2025-12-17 17:14:47.973520", "msg": "", "rc": 0, "start": "2025-12-17 17:14:47.970544", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003271", "end": "2025-12-17 17:15:18.771185", "msg": "", "rc": 0, "start": "2025-12-17 17:15:18.767914", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005108", "end": "2025-12-17 17:15:18.908500", "msg": "", "rc": 0, "start": "2025-12-17 17:15:18.903392", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028595", "end": "2025-12-17 17:15:18.668346", "msg": "", "rc": 0, "start": "2025-12-17 17:15:18.639751", "stderr": "", "stderr_lines": [], "stdout": "35.8°C", "stdout_lines": ["35.8°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004203", "end": "2025-12-17 17:15:19.199331", "msg": "", "rc": 0, "start": "2025-12-17 17:15:19.195128", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005001", "end": "2025-12-17 17:15:19.218295", "msg": "", "rc": 0, "start": "2025-12-17 17:15:19.213294", "stderr": "", "stderr_lines": [], "stdout": "1.00", "stdout_lines": ["1.00"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004080", "end": "2025-12-17 17:15:19.221611", "msg": "", "rc": 0, "start": "2025-12-17 17:15:19.217531", "stderr": "", "stderr_lines": [], "stdout": "0.22", "stdout_lines": ["0.22"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004711", "end": "2025-12-17 17:15:19.258440", "msg": "", "rc": 0, "start": "2025-12-17 17:15:19.253729", "stderr": "", "stderr_lines": [], "stdout": "0.10", "stdout_lines": ["0.10"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005409", "end": "2025-12-17 17:15:19.267122", "msg": "", "rc": 0, "start": "2025-12-17 17:15:19.261713", "stderr": "", "stderr_lines": [], "stdout": "0.90", "stdout_lines": ["0.90"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004463", "end": "2025-12-17 17:14:53.122358", "msg": "", "rc": 0, "start": "2025-12-17 17:14:53.117895", "stderr": "", "stderr_lines": [], "stdout": "0.16", "stdout_lines": ["0.16"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005224", "end": "2025-12-17 17:14:46.627001", "msg": "", "rc": 0, "start": "2025-12-17 17:14:46.621777", "stderr": "", "stderr_lines": [], "stdout": "0.14", "stdout_lines": ["0.14"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010208", "end": "2025-12-17 17:15:20.035702", "msg": "", "rc": 0, "start": "2025-12-17 17:15:20.025494", "stderr": "", "stderr_lines": [], "stdout": "0.52", "stdout_lines": ["0.52"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010889", "end": "2025-12-17 17:15:20.038641", "msg": "", "rc": 0, "start": "2025-12-17 17:15:20.027752", "stderr": "", "stderr_lines": [], "stdout": "0.62", "stdout_lines": ["0.62"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005666", "end": "2025-12-17 17:15:20.201600", "msg": "", "rc": 0, "start": "2025-12-17 17:15:20.195934", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005427", "end": "2025-12-17 17:14:49.803523", "msg": "", "rc": 0, "start": "2025-12-17 17:14:49.798096", "stderr": "", "stderr_lines": [], "stdout": "0.50", "stdout_lines": ["0.50"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005948", "end": "2025-12-17 14:15:20.506280", "msg": "", "rc": 0, "start": "2025-12-17 14:15:20.500332", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005036", "end": "2025-12-17 17:14:56.546156", "msg": "", "rc": 0, "start": "2025-12-17 17:14:56.541120", "stderr": "", "stderr_lines": [], "stdout": "0.17", "stdout_lines": ["0.17"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005233", "end": "2025-12-17 17:15:20.640269", "msg": "", "rc": 0, "start": "2025-12-17 17:15:20.635036", "stderr": "", "stderr_lines": [], "stdout": "0.02", "stdout_lines": ["0.02"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.008832", "end": "2025-12-17 17:15:20.894656", "msg": "", "rc": 0, "start": "2025-12-17 17:15:20.885824", "stderr": "", "stderr_lines": [], "stdout": "1.23", "stdout_lines": ["1.23"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024282", "end": "2025-12-17 17:15:20.623822", "msg": "", "rc": 0, "start": "2025-12-17 17:15:20.599540", "stderr": "", "stderr_lines": [], "stdout": "0.29", "stdout_lines": ["0.29"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:15:11 up 3 days, 6:47, 1 user, load average: 0.17, 0.16, 0.18\nDisk Usage: 22%\nMemory Usage: 22.5%\nCPU Load: 0.22\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:15:11 up 22 days, 4:06, 1 user, load average: 0.10, 0.10, 0.09\nDisk Usage: 23%\nMemory Usage: 77.6%\nCPU Load: 0.08\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:15:11 up 22 days, 4:26, 1 user, load average: 1.01, 0.83, 0.72\nDisk Usage: 14%\nMemory Usage: 49.3%\nCPU Load: 1.00\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:15:11 up 22 days, 5:39, 1 user, load average: 0.87, 0.70, 0.66\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.90\nCPU Temp: 52.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:15:11 up 22 days, 6:25, 1 user, load average: 0.10, 0.06, 0.02\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.10\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:15:12 up 15 days, 6:41, 1 user, load average: 0.24, 0.13, 0.10\nDisk Usage: 21%\nMemory Usage: 19.8%\nCPU Load: 0.29\nCPU Temp: 35.8°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:15:11 up 194 days, 8:48, 1 user, load average: 0.56, 0.37, 0.25\nDisk Usage: 6%\nMemory Usage: 13.0%\nCPU Load: 0.62\nCPU Temp: 37.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:15:11 up 194 days, 8:48, 1 user, load average: 0.44, 0.30, 0.21\nDisk Usage: 3%\nMemory Usage: 6.7%\nCPU Load: 0.52\nCPU Temp: 32.6°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:14:45 up 11 days, 5:04, 0 user, load average: 0.20, 0.11, 0.10\nDisk Usage: 48%\nMemory Usage: 71.1%\nCPU Load: 0.16\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:14:39 up 18 days, 1:16, 0 user, load average: 0.16, 0.08, 0.10\nDisk Usage: 25%\nMemory Usage: 69.5%\nCPU Load: 0.14\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:15:12 up 3 days, 6:46, 1 user, load average: 0.00, 0.01, 0.00\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:14:41 up 20 days, 20:08, 0 user, load average: 0.45, 0.42, 0.44\nDisk Usage: 28%\nMemory Usage: 26.5%\nCPU Load: 0.50\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:14:48 up 17 days, 6:30, 0 user, load average: 0.19, 0.16, 0.12\nDisk Usage: 76%\nMemory Usage: 55.6%\nCPU Load: 0.17\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 2:15PM up 22 days, 4:05, 1 user, load averages: 0.16, 0.17, 0.16\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:15:12 up 3 days, 6:46, 1 user, load average: 0.02, 0.07, 0.08\nDisk Usage: 79%\nMemory Usage: 13.9%\nCPU Load: 0.02\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:15:13 up 4:22, 1 user, load average: 1.18, 1.20, 1.23\nDisk Usage: 1%\nMemory Usage: 22.2%\nCPU Load: 1.23\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T22:15:21.841560+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_222020_a91dea_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_222020_a91dea_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..d1db168 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_222020_a91dea_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `3ac263d9f4e94e7697b7eb49b70b4473` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T22:20:00.000584+00:00 | +| **Fin** | 2025-12-17T22:20:20.697365+00:00 | +| **Durée** | 20.7s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003317", "end": "2025-12-17 17:20:09.851163", "msg": "", "rc": 0, "start": "2025-12-17 17:20:09.847846", "stderr": "", "stderr_lines": [], "stdout": " 17:20:09 up 22 days, 4:11, 1 user, load average: 0.12, 0.12, 0.09", "stdout_lines": [" 17:20:09 up 22 days, 4:11, 1 user, load average: 0.12, 0.12, 0.09"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003676", "end": "2025-12-17 17:20:09.861680", "msg": "", "rc": 0, "start": "2025-12-17 17:20:09.858004", "stderr": "", "stderr_lines": [], "stdout": " 17:20:09 up 22 days, 6:30, 1 user, load average: 0.10, 0.05, 0.00", "stdout_lines": [" 17:20:09 up 22 days, 6:30, 1 user, load average: 0.10, 0.05, 0.00"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003443", "end": "2025-12-17 17:20:09.870846", "msg": "", "rc": 0, "start": "2025-12-17 17:20:09.867403", "stderr": "", "stderr_lines": [], "stdout": " 17:20:09 up 22 days, 4:31, 1 user, load average: 0.72, 0.70, 0.69", "stdout_lines": [" 17:20:09 up 22 days, 4:31, 1 user, load average: 0.72, 0.70, 0.69"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003916", "end": "2025-12-17 17:20:09.882655", "msg": "", "rc": 0, "start": "2025-12-17 17:20:09.878739", "stderr": "", "stderr_lines": [], "stdout": " 17:20:09 up 22 days, 5:44, 1 user, load average: 0.37, 0.55, 0.60", "stdout_lines": [" 17:20:09 up 22 days, 5:44, 1 user, load average: 0.37, 0.55, 0.60"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002833", "end": "2025-12-17 17:20:09.892386", "msg": "", "rc": 0, "start": "2025-12-17 17:20:09.889553", "stderr": "", "stderr_lines": [], "stdout": " 17:20:09 up 3 days, 6:52, 1 user, load average: 0.15, 0.10, 0.14", "stdout_lines": [" 17:20:09 up 3 days, 6:52, 1 user, load average: 0.15, 0.10, 0.14"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003058", "end": "2025-12-17 17:19:43.753959", "msg": "", "rc": 0, "start": "2025-12-17 17:19:43.750901", "stderr": "", "stderr_lines": [], "stdout": " 17:19:43 up 11 days, 5:09, 0 user, load average: 0.05, 0.09, 0.09", "stdout_lines": [" 17:19:43 up 11 days, 5:09, 0 user, load average: 0.05, 0.09, 0.09"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003257", "end": "2025-12-17 17:19:37.268667", "msg": "", "rc": 0, "start": "2025-12-17 17:19:37.265410", "stderr": "", "stderr_lines": [], "stdout": " 17:19:37 up 18 days, 1:21, 0 user, load average: 0.22, 0.09, 0.09", "stdout_lines": [" 17:19:37 up 18 days, 1:21, 0 user, load average: 0.22, 0.09, 0.09"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008449", "end": "2025-12-17 17:20:10.558817", "msg": "", "rc": 0, "start": "2025-12-17 17:20:10.550368", "stderr": "", "stderr_lines": [], "stdout": " 17:20:10 up 194 days, 8:53, 1 user, load average: 0.22, 0.27, 0.22", "stdout_lines": [" 17:20:10 up 194 days, 8:53, 1 user, load average: 0.22, 0.27, 0.22"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.010086", "end": "2025-12-17 17:20:10.591930", "msg": "", "rc": 0, "start": "2025-12-17 17:20:10.581844", "stderr": "", "stderr_lines": [], "stdout": " 17:20:10 up 194 days, 8:53, 1 user, load average: 0.27, 0.29, 0.25", "stdout_lines": [" 17:20:10 up 194 days, 8:53, 1 user, load average: 0.27, 0.29, 0.25"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004994", "end": "2025-12-17 17:20:10.839299", "msg": "", "rc": 0, "start": "2025-12-17 17:20:10.834305", "stderr": "", "stderr_lines": [], "stdout": " 17:20:10 up 3 days, 6:51, 1 user, load average: 0.08, 0.06, 0.01", "stdout_lines": [" 17:20:10 up 3 days, 6:51, 1 user, load average: 0.08, 0.06, 0.01"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003372", "end": "2025-12-17 17:19:40.450602", "msg": "", "rc": 0, "start": "2025-12-17 17:19:40.447230", "stderr": "", "stderr_lines": [], "stdout": " 17:19:40 up 20 days, 20:13, 0 user, load average: 0.33, 0.35, 0.41", "stdout_lines": [" 17:19:40 up 20 days, 20:13, 0 user, load average: 0.33, 0.35, 0.41"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003234", "end": "2025-12-17 17:19:47.060817", "msg": "", "rc": 0, "start": "2025-12-17 17:19:47.057583", "stderr": "", "stderr_lines": [], "stdout": " 17:19:47 up 17 days, 6:35, 0 user, load average: 0.22, 0.13, 0.10", "stdout_lines": [" 17:19:47 up 17 days, 6:35, 0 user, load average: 0.22, 0.13, 0.10"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004247", "end": "2025-12-17 14:20:11.061152", "msg": "", "rc": 0, "start": "2025-12-17 14:20:11.056905", "stderr": "", "stderr_lines": [], "stdout": " 2:20PM up 22 days, 4:09, 1 user, load averages: 0.13, 0.19, 0.16", "stdout_lines": [" 2:20PM up 22 days, 4:09, 1 user, load averages: 0.13, 0.19, 0.16"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004310", "end": "2025-12-17 17:20:11.269799", "msg": "", "rc": 0, "start": "2025-12-17 17:20:11.265489", "stderr": "", "stderr_lines": [], "stdout": " 17:20:11 up 3 days, 6:51, 1 user, load average: 0.20, 0.12, 0.09", "stdout_lines": [" 17:20:11 up 3 days, 6:51, 1 user, load average: 0.20, 0.12, 0.09"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.006442", "end": "2025-12-17 17:20:11.619861", "msg": "", "rc": 0, "start": "2025-12-17 17:20:11.613419", "stderr": "", "stderr_lines": [], "stdout": " 17:20:11 up 4:27, 1 user, load average: 1.29, 1.21, 1.21", "stdout_lines": [" 17:20:11 up 4:27, 1 user, load average: 1.29, 1.21, 1.21"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019512", "end": "2025-12-17 17:20:11.242215", "msg": "", "rc": 0, "start": "2025-12-17 17:20:11.222703", "stderr": "", "stderr_lines": [], "stdout": " 17:20:11 up 15 days, 6:46, 1 user, load average: 0.25, 0.15, 0.10", "stdout_lines": [" 17:20:11 up 15 days, 6:46, 1 user, load average: 0.25, 0.15, 0.10"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004300", "end": "2025-12-17 17:20:11.766836", "msg": "", "rc": 0, "start": "2025-12-17 17:20:11.762536", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004175", "end": "2025-12-17 17:20:11.778760", "msg": "", "rc": 0, "start": "2025-12-17 17:20:11.774585", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005418", "end": "2025-12-17 17:20:11.813048", "msg": "", "rc": 0, "start": "2025-12-17 17:20:11.807630", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004952", "end": "2025-12-17 17:20:11.815872", "msg": "", "rc": 0, "start": "2025-12-17 17:20:11.810920", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005572", "end": "2025-12-17 17:20:11.816621", "msg": "", "rc": 0, "start": "2025-12-17 17:20:11.811049", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005513", "end": "2025-12-17 17:19:45.726156", "msg": "", "rc": 0, "start": "2025-12-17 17:19:45.720643", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005552", "end": "2025-12-17 17:19:39.199616", "msg": "", "rc": 0, "start": "2025-12-17 17:19:39.194064", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010550", "end": "2025-12-17 17:20:12.536487", "msg": "", "rc": 0, "start": "2025-12-17 17:20:12.525937", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011657", "end": "2025-12-17 17:20:12.554212", "msg": "", "rc": 0, "start": "2025-12-17 17:20:12.542555", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005685", "end": "2025-12-17 17:20:12.814420", "msg": "", "rc": 0, "start": "2025-12-17 17:20:12.808735", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005748", "end": "2025-12-17 17:19:42.384545", "msg": "", "rc": 0, "start": "2025-12-17 17:19:42.378797", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005363", "end": "2025-12-17 14:20:13.013079", "msg": "", "rc": 0, "start": "2025-12-17 14:20:13.007716", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004896", "end": "2025-12-17 17:19:49.044511", "msg": "", "rc": 0, "start": "2025-12-17 17:19:49.039615", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005669", "end": "2025-12-17 17:20:13.250295", "msg": "", "rc": 0, "start": "2025-12-17 17:20:13.244626", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.012458", "end": "2025-12-17 17:20:13.654165", "msg": "", "rc": 0, "start": "2025-12-17 17:20:13.641707", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.024940", "end": "2025-12-17 17:20:13.176428", "msg": "", "rc": 0, "start": "2025-12-17 17:20:13.151488", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004277", "end": "2025-12-17 17:20:13.705822", "msg": "", "rc": 0, "start": "2025-12-17 17:20:13.701545", "stderr": "", "stderr_lines": [], "stdout": "77.6%", "stdout_lines": ["77.6%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004161", "end": "2025-12-17 17:20:13.733457", "msg": "", "rc": 0, "start": "2025-12-17 17:20:13.729296", "stderr": "", "stderr_lines": [], "stdout": "22.5%", "stdout_lines": ["22.5%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004759", "end": "2025-12-17 17:20:13.743020", "msg": "", "rc": 0, "start": "2025-12-17 17:20:13.738261", "stderr": "", "stderr_lines": [], "stdout": "49.4%", "stdout_lines": ["49.4%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004868", "end": "2025-12-17 17:20:13.769252", "msg": "", "rc": 0, "start": "2025-12-17 17:20:13.764384", "stderr": "", "stderr_lines": [], "stdout": "9.1%", "stdout_lines": ["9.1%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005522", "end": "2025-12-17 17:20:13.785292", "msg": "", "rc": 0, "start": "2025-12-17 17:20:13.779770", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003740", "end": "2025-12-17 17:19:47.631775", "msg": "", "rc": 0, "start": "2025-12-17 17:19:47.628035", "stderr": "", "stderr_lines": [], "stdout": "71.4%", "stdout_lines": ["71.4%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005795", "end": "2025-12-17 17:19:41.152042", "msg": "", "rc": 0, "start": "2025-12-17 17:19:41.146247", "stderr": "", "stderr_lines": [], "stdout": "69.6%", "stdout_lines": ["69.6%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010865", "end": "2025-12-17 17:20:14.409103", "msg": "", "rc": 0, "start": "2025-12-17 17:20:14.398238", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012009", "end": "2025-12-17 17:20:14.463120", "msg": "", "rc": 0, "start": "2025-12-17 17:20:14.451111", "stderr": "", "stderr_lines": [], "stdout": "12.7%", "stdout_lines": ["12.7%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005857", "end": "2025-12-17 17:20:14.711253", "msg": "", "rc": 0, "start": "2025-12-17 17:20:14.705396", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004159", "end": "2025-12-17 17:19:44.338169", "msg": "", "rc": 0, "start": "2025-12-17 17:19:44.334010", "stderr": "", "stderr_lines": [], "stdout": "27.7%", "stdout_lines": ["27.7%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004119", "end": "2025-12-17 17:19:50.969365", "msg": "", "rc": 0, "start": "2025-12-17 17:19:50.965246", "stderr": "", "stderr_lines": [], "stdout": "55.4%", "stdout_lines": ["55.4%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005165", "end": "2025-12-17 14:20:14.979260", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 14:20:14.974095", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005975", "end": "2025-12-17 17:20:15.205442", "msg": "", "rc": 0, "start": "2025-12-17 17:20:15.199467", "stderr": "", "stderr_lines": [], "stdout": "13.7%", "stdout_lines": ["13.7%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.026131", "end": "2025-12-17 17:20:15.098483", "msg": "", "rc": 0, "start": "2025-12-17 17:20:15.072352", "stderr": "", "stderr_lines": [], "stdout": "19.4%", "stdout_lines": ["19.4%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011452", "end": "2025-12-17 17:20:15.685160", "msg": "", "rc": 0, "start": "2025-12-17 17:20:15.673708", "stderr": "", "stderr_lines": [], "stdout": "22.2%", "stdout_lines": ["22.2%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005403", "end": "2025-12-17 17:20:15.653129", "msg": "", "rc": 0, "start": "2025-12-17 17:20:15.647726", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004791", "end": "2025-12-17 17:20:15.668790", "msg": "", "rc": 0, "start": "2025-12-17 17:20:15.663999", "stderr": "", "stderr_lines": [], "stdout": "47.0°C", "stdout_lines": ["47.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005842", "end": "2025-12-17 17:20:15.682254", "msg": "", "rc": 0, "start": "2025-12-17 17:20:15.676412", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003379", "end": "2025-12-17 17:20:15.704546", "msg": "", "rc": 0, "start": "2025-12-17 17:20:15.701167", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.007490", "end": "2025-12-17 17:20:15.705699", "msg": "", "rc": 0, "start": "2025-12-17 17:20:15.698209", "stderr": "", "stderr_lines": [], "stdout": "53.0°C", "stdout_lines": ["53.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002578", "end": "2025-12-17 17:19:49.552409", "msg": "", "rc": 0, "start": "2025-12-17 17:19:49.549831", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002931", "end": "2025-12-17 17:19:43.060646", "msg": "", "rc": 0, "start": "2025-12-17 17:19:43.057715", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011766", "end": "2025-12-17 17:20:16.368789", "msg": "", "rc": 0, "start": "2025-12-17 17:20:16.357023", "stderr": "", "stderr_lines": [], "stdout": "32.6°C", "stdout_lines": ["32.6°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012982", "end": "2025-12-17 17:20:16.401402", "msg": "", "rc": 0, "start": "2025-12-17 17:20:16.388420", "stderr": "", "stderr_lines": [], "stdout": "35.5°C", "stdout_lines": ["35.5°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003277", "end": "2025-12-17 17:20:16.628184", "msg": "", "rc": 0, "start": "2025-12-17 17:20:16.624907", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002511", "end": "2025-12-17 17:19:52.867099", "msg": "", "rc": 0, "start": "2025-12-17 17:19:52.864588", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002925", "end": "2025-12-17 17:19:46.293673", "msg": "", "rc": 0, "start": "2025-12-17 17:19:46.290748", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004116", "end": "2025-12-17 14:20:16.864423", "msg": "", "rc": 0, "start": "2025-12-17 14:20:16.860307", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002954", "end": "2025-12-17 17:20:17.060841", "msg": "", "rc": 0, "start": "2025-12-17 17:20:17.057887", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028913", "end": "2025-12-17 17:20:17.062452", "msg": "", "rc": 0, "start": "2025-12-17 17:20:17.033539", "stderr": "", "stderr_lines": [], "stdout": "36.8°C", "stdout_lines": ["36.8°C"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004176", "end": "2025-12-17 17:20:17.716258", "msg": "", "rc": 0, "start": "2025-12-17 17:20:17.712082", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005035", "end": "2025-12-17 17:20:17.606556", "msg": "", "rc": 0, "start": "2025-12-17 17:20:17.601521", "stderr": "", "stderr_lines": [], "stdout": "0.11", "stdout_lines": ["0.11"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004159", "end": "2025-12-17 17:20:17.615264", "msg": "", "rc": 0, "start": "2025-12-17 17:20:17.611105", "stderr": "", "stderr_lines": [], "stdout": "0.28", "stdout_lines": ["0.28"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004578", "end": "2025-12-17 17:20:17.633359", "msg": "", "rc": 0, "start": "2025-12-17 17:20:17.628781", "stderr": "", "stderr_lines": [], "stdout": "0.77", "stdout_lines": ["0.77"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005265", "end": "2025-12-17 17:20:17.659816", "msg": "", "rc": 0, "start": "2025-12-17 17:20:17.654551", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006265", "end": "2025-12-17 17:20:17.690202", "msg": "", "rc": 0, "start": "2025-12-17 17:20:17.683937", "stderr": "", "stderr_lines": [], "stdout": "0.31", "stdout_lines": ["0.31"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004320", "end": "2025-12-17 17:19:51.538544", "msg": "", "rc": 0, "start": "2025-12-17 17:19:51.534224", "stderr": "", "stderr_lines": [], "stdout": "0.19", "stdout_lines": ["0.19"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006491", "end": "2025-12-17 17:19:45.069320", "msg": "", "rc": 0, "start": "2025-12-17 17:19:45.062829", "stderr": "", "stderr_lines": [], "stdout": "0.26", "stdout_lines": ["0.26"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010105", "end": "2025-12-17 17:20:18.418175", "msg": "", "rc": 0, "start": "2025-12-17 17:20:18.408070", "stderr": "", "stderr_lines": [], "stdout": "0.28", "stdout_lines": ["0.28"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011369", "end": "2025-12-17 17:20:18.446970", "msg": "", "rc": 0, "start": "2025-12-17 17:20:18.435601", "stderr": "", "stderr_lines": [], "stdout": "0.25", "stdout_lines": ["0.25"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005632", "end": "2025-12-17 17:20:18.653279", "msg": "", "rc": 0, "start": "2025-12-17 17:20:18.647647", "stderr": "", "stderr_lines": [], "stdout": "0.07", "stdout_lines": ["0.07"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005349", "end": "2025-12-17 17:19:48.306902", "msg": "", "rc": 0, "start": "2025-12-17 17:19:48.301553", "stderr": "", "stderr_lines": [], "stdout": "0.36", "stdout_lines": ["0.36"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004538", "end": "2025-12-17 17:19:54.928512", "msg": "", "rc": 0, "start": "2025-12-17 17:19:54.923974", "stderr": "", "stderr_lines": [], "stdout": "0.18", "stdout_lines": ["0.18"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005896", "end": "2025-12-17 14:20:18.927756", "msg": "", "rc": 0, "start": "2025-12-17 14:20:18.921860", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005278", "end": "2025-12-17 17:20:19.104171", "msg": "", "rc": 0, "start": "2025-12-17 17:20:19.098893", "stderr": "", "stderr_lines": [], "stdout": "0.24", "stdout_lines": ["0.24"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024347", "end": "2025-12-17 17:20:19.003600", "msg": "", "rc": 0, "start": "2025-12-17 17:20:18.979253", "stderr": "", "stderr_lines": [], "stdout": "0.30", "stdout_lines": ["0.30"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010264", "end": "2025-12-17 17:20:19.837130", "msg": "", "rc": 0, "start": "2025-12-17 17:20:19.826866", "stderr": "", "stderr_lines": [], "stdout": "1.49", "stdout_lines": ["1.49"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:20:09 up 3 days, 6:52, 1 user, load average: 0.15, 0.10, 0.14\nDisk Usage: 22%\nMemory Usage: 22.5%\nCPU Load: 0.28\nCPU Temp: 47.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:20:09 up 22 days, 4:11, 1 user, load average: 0.12, 0.12, 0.09\nDisk Usage: 23%\nMemory Usage: 77.6%\nCPU Load: 0.11\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:20:09 up 22 days, 4:31, 1 user, load average: 0.72, 0.70, 0.69\nDisk Usage: 14%\nMemory Usage: 49.4%\nCPU Load: 0.77\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:20:09 up 22 days, 5:44, 1 user, load average: 0.37, 0.55, 0.60\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.31\nCPU Temp: 53.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:20:09 up 22 days, 6:30, 1 user, load average: 0.10, 0.05, 0.00\nDisk Usage: 9%\nMemory Usage: 9.1%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:20:11 up 15 days, 6:46, 1 user, load average: 0.25, 0.15, 0.10\nDisk Usage: 21%\nMemory Usage: 19.4%\nCPU Load: 0.30\nCPU Temp: 36.8°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:20:10 up 194 days, 8:53, 1 user, load average: 0.27, 0.29, 0.25\nDisk Usage: 6%\nMemory Usage: 12.7%\nCPU Load: 0.25\nCPU Temp: 35.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:20:10 up 194 days, 8:53, 1 user, load average: 0.22, 0.27, 0.22\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.28\nCPU Temp: 32.6°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:19:43 up 11 days, 5:09, 0 user, load average: 0.05, 0.09, 0.09\nDisk Usage: 48%\nMemory Usage: 71.4%\nCPU Load: 0.19\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:19:37 up 18 days, 1:21, 0 user, load average: 0.22, 0.09, 0.09\nDisk Usage: 25%\nMemory Usage: 69.6%\nCPU Load: 0.26\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:20:10 up 3 days, 6:51, 1 user, load average: 0.08, 0.06, 0.01\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.07\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:19:40 up 20 days, 20:13, 0 user, load average: 0.33, 0.35, 0.41\nDisk Usage: 28%\nMemory Usage: 27.7%\nCPU Load: 0.36\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:19:47 up 17 days, 6:35, 0 user, load average: 0.22, 0.13, 0.10\nDisk Usage: 76%\nMemory Usage: 55.4%\nCPU Load: 0.18\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 2:20PM up 22 days, 4:09, 1 user, load averages: 0.13, 0.19, 0.16\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:20:11 up 3 days, 6:51, 1 user, load average: 0.20, 0.12, 0.09\nDisk Usage: 79%\nMemory Usage: 13.7%\nCPU Load: 0.24\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:20:11 up 4:27, 1 user, load average: 1.29, 1.21, 1.21\nDisk Usage: 1%\nMemory Usage: 22.2%\nCPU Load: 1.49\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T22:20:20.738212+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_224526_4f39d3_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_224526_4f39d3_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..5aa5ea9 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_224526_4f39d3_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `0b64de245e384ee081dfad3b6d4c44a0` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T22:45:00.001884+00:00 | +| **Fin** | 2025-12-17T22:45:26.473418+00:00 | +| **Durée** | 26.5s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [dev.prod.home] +ok: [hp.truenas.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003653", "end": "2025-12-17 17:45:11.683163", "msg": "", "rc": 0, "start": "2025-12-17 17:45:11.679510", "stderr": "", "stderr_lines": [], "stdout": " 17:45:11 up 22 days, 4:56, 1 user, load average: 0.47, 0.53, 0.56", "stdout_lines": [" 17:45:11 up 22 days, 4:56, 1 user, load average: 0.47, 0.53, 0.56"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003690", "end": "2025-12-17 17:45:11.689268", "msg": "", "rc": 0, "start": "2025-12-17 17:45:11.685578", "stderr": "", "stderr_lines": [], "stdout": " 17:45:11 up 22 days, 6:55, 1 user, load average: 0.19, 0.10, 0.03", "stdout_lines": [" 17:45:11 up 22 days, 6:55, 1 user, load average: 0.19, 0.10, 0.03"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003880", "end": "2025-12-17 17:45:11.702921", "msg": "", "rc": 0, "start": "2025-12-17 17:45:11.699041", "stderr": "", "stderr_lines": [], "stdout": " 17:45:11 up 22 days, 6:09, 1 user, load average: 0.74, 0.69, 0.64", "stdout_lines": [" 17:45:11 up 22 days, 6:09, 1 user, load average: 0.74, 0.69, 0.64"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002848", "end": "2025-12-17 17:45:11.712520", "msg": "", "rc": 0, "start": "2025-12-17 17:45:11.709672", "stderr": "", "stderr_lines": [], "stdout": " 17:45:11 up 3 days, 7:17, 1 user, load average: 0.18, 0.24, 0.23", "stdout_lines": [" 17:45:11 up 3 days, 7:17, 1 user, load average: 0.18, 0.24, 0.23"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003199", "end": "2025-12-17 17:44:45.599110", "msg": "", "rc": 0, "start": "2025-12-17 17:44:45.595911", "stderr": "", "stderr_lines": [], "stdout": " 17:44:45 up 11 days, 5:34, 0 user, load average: 0.60, 0.27, 0.18", "stdout_lines": [" 17:44:45 up 11 days, 5:34, 0 user, load average: 0.60, 0.27, 0.18"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008307", "end": "2025-12-17 17:45:12.421217", "msg": "", "rc": 0, "start": "2025-12-17 17:45:12.412910", "stderr": "", "stderr_lines": [], "stdout": " 17:45:12 up 194 days, 9:18, 1 user, load average: 0.15, 0.11, 0.11", "stdout_lines": [" 17:45:12 up 194 days, 9:18, 1 user, load average: 0.15, 0.11, 0.11"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009111", "end": "2025-12-17 17:45:12.459610", "msg": "", "rc": 0, "start": "2025-12-17 17:45:12.450499", "stderr": "", "stderr_lines": [], "stdout": " 17:45:12 up 194 days, 9:18, 1 user, load average: 0.28, 0.20, 0.20", "stdout_lines": [" 17:45:12 up 194 days, 9:18, 1 user, load average: 0.28, 0.20, 0.20"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004424", "end": "2025-12-17 17:45:12.667923", "msg": "", "rc": 0, "start": "2025-12-17 17:45:11.663499", "stderr": "", "stderr_lines": [], "stdout": " 17:45:11 up 22 days, 4:36, 1 user, load average: 0.20, 0.10, 0.08", "stdout_lines": [" 17:45:11 up 22 days, 4:36, 1 user, load average: 0.20, 0.10, 0.08"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003690", "end": "2025-12-17 17:44:39.618919", "msg": "", "rc": 0, "start": "2025-12-17 17:44:39.615229", "stderr": "", "stderr_lines": [], "stdout": " 17:44:39 up 18 days, 1:46, 0 user, load average: 0.05, 0.03, 0.00", "stdout_lines": [" 17:44:39 up 18 days, 1:46, 0 user, load average: 0.05, 0.03, 0.00"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004714", "end": "2025-12-17 17:45:12.971152", "msg": "", "rc": 0, "start": "2025-12-17 17:45:12.966438", "stderr": "", "stderr_lines": [], "stdout": " 17:45:12 up 3 days, 7:16, 1 user, load average: 0.08, 0.07, 0.02", "stdout_lines": [" 17:45:12 up 3 days, 7:16, 1 user, load average: 0.08, 0.07, 0.02"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003275", "end": "2025-12-17 17:44:42.486187", "msg": "", "rc": 0, "start": "2025-12-17 17:44:42.482912", "stderr": "", "stderr_lines": [], "stdout": " 17:44:42 up 20 days, 20:39, 0 user, load average: 0.34, 0.34, 0.39", "stdout_lines": [" 17:44:42 up 20 days, 20:39, 0 user, load average: 0.34, 0.34, 0.39"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002581", "end": "2025-12-17 17:44:49.283206", "msg": "", "rc": 0, "start": "2025-12-17 17:44:49.280625", "stderr": "", "stderr_lines": [], "stdout": " 17:44:49 up 17 days, 7:00, 0 user, load average: 0.40, 0.16, 0.11", "stdout_lines": [" 17:44:49 up 17 days, 7:00, 0 user, load average: 0.40, 0.16, 0.11"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019621", "end": "2025-12-17 17:45:13.132127", "msg": "", "rc": 0, "start": "2025-12-17 17:45:13.112506", "stderr": "", "stderr_lines": [], "stdout": " 17:45:13 up 15 days, 7:11, 1 user, load average: 0.15, 0.03, 0.01", "stdout_lines": [" 17:45:13 up 15 days, 7:11, 1 user, load average: 0.15, 0.03, 0.01"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.006040", "end": "2025-12-17 17:45:13.752785", "msg": "", "rc": 0, "start": "2025-12-17 17:45:13.746745", "stderr": "", "stderr_lines": [], "stdout": " 17:45:13 up 2 min, 1 user, load average: 1.43, 0.54, 0.20", "stdout_lines": [" 17:45:13 up 2 min, 1 user, load average: 1.43, 0.54, 0.20"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004373", "end": "2025-12-17 14:45:13.661470", "msg": "", "rc": 0, "start": "2025-12-17 14:45:13.657097", "stderr": "", "stderr_lines": [], "stdout": " 2:45PM up 22 days, 4:35, 1 user, load averages: 0.13, 0.19, 0.17", "stdout_lines": [" 2:45PM up 22 days, 4:35, 1 user, load averages: 0.13, 0.19, 0.17"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003726", "end": "2025-12-17 17:45:13.790670", "msg": "", "rc": 0, "start": "2025-12-17 17:45:13.786944", "stderr": "", "stderr_lines": [], "stdout": " 17:45:13 up 3 days, 7:16, 1 user, load average: 0.15, 0.03, 0.01", "stdout_lines": [" 17:45:13 up 3 days, 7:16, 1 user, load average: 0.15, 0.03, 0.01"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004225", "end": "2025-12-17 17:45:14.801763", "msg": "", "rc": 0, "start": "2025-12-17 17:45:14.797538", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004102", "end": "2025-12-17 17:45:14.846399", "msg": "", "rc": 0, "start": "2025-12-17 17:45:14.842297", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004597", "end": "2025-12-17 17:45:14.911769", "msg": "", "rc": 0, "start": "2025-12-17 17:45:14.907172", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004758", "end": "2025-12-17 17:45:14.912546", "msg": "", "rc": 0, "start": "2025-12-17 17:45:14.907788", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005688", "end": "2025-12-17 17:45:14.926251", "msg": "", "rc": 0, "start": "2025-12-17 17:45:14.920563", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005138", "end": "2025-12-17 17:44:49.281809", "msg": "", "rc": 0, "start": "2025-12-17 17:44:49.276671", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005307", "end": "2025-12-17 17:44:42.854358", "msg": "", "rc": 0, "start": "2025-12-17 17:44:42.849051", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011863", "end": "2025-12-17 17:45:16.238688", "msg": "", "rc": 0, "start": "2025-12-17 17:45:16.226825", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005908", "end": "2025-12-17 17:45:16.388492", "msg": "", "rc": 0, "start": "2025-12-17 17:45:16.382584", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010529", "end": "2025-12-17 17:45:16.377884", "msg": "", "rc": 0, "start": "2025-12-17 17:45:16.367355", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005097", "end": "2025-12-17 17:44:46.029629", "msg": "", "rc": 0, "start": "2025-12-17 17:44:46.024532", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004941", "end": "2025-12-17 17:44:52.738263", "msg": "", "rc": 0, "start": "2025-12-17 17:44:52.733322", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005360", "end": "2025-12-17 14:45:16.800217", "msg": "", "rc": 0, "start": "2025-12-17 14:45:16.794857", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005290", "end": "2025-12-17 17:45:16.845740", "msg": "", "rc": 0, "start": "2025-12-17 17:45:16.840450", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.012639", "end": "2025-12-17 17:45:17.351158", "msg": "", "rc": 0, "start": "2025-12-17 17:45:17.338519", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025321", "end": "2025-12-17 17:45:16.876300", "msg": "", "rc": 0, "start": "2025-12-17 17:45:16.850979", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004242", "end": "2025-12-17 17:45:17.398343", "msg": "", "rc": 0, "start": "2025-12-17 17:45:17.394101", "stderr": "", "stderr_lines": [], "stdout": "22.5%", "stdout_lines": ["22.5%"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004517", "end": "2025-12-17 17:45:17.401973", "msg": "", "rc": 0, "start": "2025-12-17 17:45:17.397456", "stderr": "", "stderr_lines": [], "stdout": "77.6%", "stdout_lines": ["77.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004623", "end": "2025-12-17 17:45:17.421502", "msg": "", "rc": 0, "start": "2025-12-17 17:45:17.416879", "stderr": "", "stderr_lines": [], "stdout": "49.4%", "stdout_lines": ["49.4%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004502", "end": "2025-12-17 17:45:17.452280", "msg": "", "rc": 0, "start": "2025-12-17 17:45:17.447778", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005671", "end": "2025-12-17 17:45:17.469045", "msg": "", "rc": 0, "start": "2025-12-17 17:45:17.463374", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003947", "end": "2025-12-17 17:44:51.421612", "msg": "", "rc": 0, "start": "2025-12-17 17:44:51.417665", "stderr": "", "stderr_lines": [], "stdout": "70.8%", "stdout_lines": ["70.8%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005313", "end": "2025-12-17 17:44:44.932962", "msg": "", "rc": 0, "start": "2025-12-17 17:44:44.927649", "stderr": "", "stderr_lines": [], "stdout": "69.6%", "stdout_lines": ["69.6%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010801", "end": "2025-12-17 17:45:18.217117", "msg": "", "rc": 0, "start": "2025-12-17 17:45:18.206316", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011994", "end": "2025-12-17 17:45:18.238134", "msg": "", "rc": 0, "start": "2025-12-17 17:45:18.226140", "stderr": "", "stderr_lines": [], "stdout": "13.0%", "stdout_lines": ["13.0%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006109", "end": "2025-12-17 17:45:18.499279", "msg": "", "rc": 0, "start": "2025-12-17 17:45:18.493170", "stderr": "", "stderr_lines": [], "stdout": "35.4%", "stdout_lines": ["35.4%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005308", "end": "2025-12-17 14:45:18.686705", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 14:45:18.681397", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004297", "end": "2025-12-17 17:44:48.114939", "msg": "", "rc": 0, "start": "2025-12-17 17:44:48.110642", "stderr": "", "stderr_lines": [], "stdout": "27.5%", "stdout_lines": ["27.5%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003641", "end": "2025-12-17 17:44:54.694987", "msg": "", "rc": 0, "start": "2025-12-17 17:44:54.691346", "stderr": "", "stderr_lines": [], "stdout": "55.2%", "stdout_lines": ["55.2%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005383", "end": "2025-12-17 17:45:18.929247", "msg": "", "rc": 0, "start": "2025-12-17 17:45:18.923864", "stderr": "", "stderr_lines": [], "stdout": "13.8%", "stdout_lines": ["13.8%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.028146", "end": "2025-12-17 17:45:19.003932", "msg": "", "rc": 0, "start": "2025-12-17 17:45:18.975786", "stderr": "", "stderr_lines": [], "stdout": "19.4%", "stdout_lines": ["19.4%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.022394", "end": "2025-12-17 17:45:19.603675", "msg": "", "rc": 0, "start": "2025-12-17 17:45:19.581281", "stderr": "", "stderr_lines": [], "stdout": "11.5%", "stdout_lines": ["11.5%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005491", "end": "2025-12-17 17:45:19.718325", "msg": "", "rc": 0, "start": "2025-12-17 17:45:19.712834", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005959", "end": "2025-12-17 17:45:19.753155", "msg": "", "rc": 0, "start": "2025-12-17 17:45:19.747196", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004864", "end": "2025-12-17 17:45:19.761592", "msg": "", "rc": 0, "start": "2025-12-17 17:45:19.756728", "stderr": "", "stderr_lines": [], "stdout": "47.0°C", "stdout_lines": ["47.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003242", "end": "2025-12-17 17:45:19.786551", "msg": "", "rc": 0, "start": "2025-12-17 17:45:19.783309", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006113", "end": "2025-12-17 17:45:19.808115", "msg": "", "rc": 0, "start": "2025-12-17 17:45:19.802002", "stderr": "", "stderr_lines": [], "stdout": "53.0°C", "stdout_lines": ["53.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003204", "end": "2025-12-17 17:44:53.699618", "msg": "", "rc": 0, "start": "2025-12-17 17:44:53.696414", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003007", "end": "2025-12-17 17:44:47.203339", "msg": "", "rc": 0, "start": "2025-12-17 17:44:47.200332", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011838", "end": "2025-12-17 17:45:20.536873", "msg": "", "rc": 0, "start": "2025-12-17 17:45:20.525035", "stderr": "", "stderr_lines": [], "stdout": "32.1°C", "stdout_lines": ["32.1°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013073", "end": "2025-12-17 17:45:20.666403", "msg": "", "rc": 0, "start": "2025-12-17 17:45:20.653330", "stderr": "", "stderr_lines": [], "stdout": "37.5°C", "stdout_lines": ["37.5°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003325", "end": "2025-12-17 17:45:20.805022", "msg": "", "rc": 0, "start": "2025-12-17 17:45:20.801697", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003201", "end": "2025-12-17 17:44:50.375151", "msg": "", "rc": 0, "start": "2025-12-17 17:44:50.371950", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002816", "end": "2025-12-17 17:44:57.024098", "msg": "", "rc": 0, "start": "2025-12-17 17:44:57.021282", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003820", "end": "2025-12-17 14:45:21.132655", "msg": "", "rc": 0, "start": "2025-12-17 14:45:21.128835", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002894", "end": "2025-12-17 17:45:21.245624", "msg": "", "rc": 0, "start": "2025-12-17 17:45:21.242730", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004664", "end": "2025-12-17 17:45:21.751116", "msg": "", "rc": 0, "start": "2025-12-17 17:45:21.746452", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028482", "end": "2025-12-17 17:45:21.466375", "msg": "", "rc": 0, "start": "2025-12-17 17:45:21.437893", "stderr": "", "stderr_lines": [], "stdout": "37.5°C", "stdout_lines": ["37.5°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004322", "end": "2025-12-17 17:45:22.005046", "msg": "", "rc": 0, "start": "2025-12-17 17:45:22.000724", "stderr": "", "stderr_lines": [], "stdout": "0.25", "stdout_lines": ["0.25"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004235", "end": "2025-12-17 17:45:22.032280", "msg": "", "rc": 0, "start": "2025-12-17 17:45:22.028045", "stderr": "", "stderr_lines": [], "stdout": "0.39", "stdout_lines": ["0.39"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004512", "end": "2025-12-17 17:45:22.076542", "msg": "", "rc": 0, "start": "2025-12-17 17:45:22.072030", "stderr": "", "stderr_lines": [], "stdout": "0.48", "stdout_lines": ["0.48"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005756", "end": "2025-12-17 17:45:22.103265", "msg": "", "rc": 0, "start": "2025-12-17 17:45:22.097509", "stderr": "", "stderr_lines": [], "stdout": "0.16", "stdout_lines": ["0.16"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005177", "end": "2025-12-17 17:45:22.186672", "msg": "", "rc": 0, "start": "2025-12-17 17:45:22.181495", "stderr": "", "stderr_lines": [], "stdout": "0.86", "stdout_lines": ["0.86"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004521", "end": "2025-12-17 17:44:55.957778", "msg": "", "rc": 0, "start": "2025-12-17 17:44:55.953257", "stderr": "", "stderr_lines": [], "stdout": "0.51", "stdout_lines": ["0.51"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004903", "end": "2025-12-17 17:44:49.513185", "msg": "", "rc": 0, "start": "2025-12-17 17:44:49.508282", "stderr": "", "stderr_lines": [], "stdout": "0.04", "stdout_lines": ["0.04"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010998", "end": "2025-12-17 17:45:22.761624", "msg": "", "rc": 0, "start": "2025-12-17 17:45:22.750626", "stderr": "", "stderr_lines": [], "stdout": "0.31", "stdout_lines": ["0.31"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010307", "end": "2025-12-17 17:45:22.859058", "msg": "", "rc": 0, "start": "2025-12-17 17:45:22.848751", "stderr": "", "stderr_lines": [], "stdout": "0.20", "stdout_lines": ["0.20"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005556", "end": "2025-12-17 17:45:23.139989", "msg": "", "rc": 0, "start": "2025-12-17 17:45:23.134433", "stderr": "", "stderr_lines": [], "stdout": "0.06", "stdout_lines": ["0.06"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004261", "end": "2025-12-17 17:44:59.426993", "msg": "", "rc": 0, "start": "2025-12-17 17:44:59.422732", "stderr": "", "stderr_lines": [], "stdout": "0.34", "stdout_lines": ["0.34"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004704", "end": "2025-12-17 17:44:52.861142", "msg": "", "rc": 0, "start": "2025-12-17 17:44:52.856438", "stderr": "", "stderr_lines": [], "stdout": "0.34", "stdout_lines": ["0.34"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005762", "end": "2025-12-17 14:45:23.460872", "msg": "", "rc": 0, "start": "2025-12-17 14:45:23.455110", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024114", "end": "2025-12-17 17:45:23.458688", "msg": "", "rc": 0, "start": "2025-12-17 17:45:23.434574", "stderr": "", "stderr_lines": [], "stdout": "0.29", "stdout_lines": ["0.29"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005315", "end": "2025-12-17 17:45:23.777117", "msg": "", "rc": 0, "start": "2025-12-17 17:45:23.771802", "stderr": "", "stderr_lines": [], "stdout": "0.12", "stdout_lines": ["0.12"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.019692", "end": "2025-12-17 17:45:25.028034", "msg": "", "rc": 0, "start": "2025-12-17 17:45:25.008342", "stderr": "", "stderr_lines": [], "stdout": "1.75", "stdout_lines": ["1.75"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:45:11 up 3 days, 7:17, 1 user, load average: 0.18, 0.24, 0.23\nDisk Usage: 22%\nMemory Usage: 22.5%\nCPU Load: 0.39\nCPU Temp: 47.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:45:11 up 22 days, 4:36, 1 user, load average: 0.20, 0.10, 0.08\nDisk Usage: 23%\nMemory Usage: 77.6%\nCPU Load: 0.25\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:45:11 up 22 days, 4:56, 1 user, load average: 0.47, 0.53, 0.56\nDisk Usage: 14%\nMemory Usage: 49.4%\nCPU Load: 0.48\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:45:11 up 22 days, 6:09, 1 user, load average: 0.74, 0.69, 0.64\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.86\nCPU Temp: 53.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:45:11 up 22 days, 6:55, 1 user, load average: 0.19, 0.10, 0.03\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.16\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:45:13 up 15 days, 7:11, 1 user, load average: 0.15, 0.03, 0.01\nDisk Usage: 21%\nMemory Usage: 19.4%\nCPU Load: 0.29\nCPU Temp: 37.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:45:12 up 194 days, 9:18, 1 user, load average: 0.28, 0.20, 0.20\nDisk Usage: 6%\nMemory Usage: 13.0%\nCPU Load: 0.31\nCPU Temp: 37.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:45:12 up 194 days, 9:18, 1 user, load average: 0.15, 0.11, 0.11\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.20\nCPU Temp: 32.1°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:44:45 up 11 days, 5:34, 0 user, load average: 0.60, 0.27, 0.18\nDisk Usage: 48%\nMemory Usage: 70.8%\nCPU Load: 0.51\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:44:39 up 18 days, 1:46, 0 user, load average: 0.05, 0.03, 0.00\nDisk Usage: 25%\nMemory Usage: 69.6%\nCPU Load: 0.04\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:45:12 up 3 days, 7:16, 1 user, load average: 0.08, 0.07, 0.02\nDisk Usage: 1%\nMemory Usage: 35.4%\nCPU Load: 0.06\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:44:49 up 17 days, 7:00, 0 user, load average: 0.40, 0.16, 0.11\nDisk Usage: 76%\nMemory Usage: 55.2%\nCPU Load: 0.34\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:44:42 up 20 days, 20:39, 0 user, load average: 0.34, 0.34, 0.39\nDisk Usage: 28%\nMemory Usage: 27.5%\nCPU Load: 0.34\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 2:45PM up 22 days, 4:35, 1 user, load averages: 0.13, 0.19, 0.17\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:45:13 up 3 days, 7:16, 1 user, load average: 0.15, 0.03, 0.01\nDisk Usage: 79%\nMemory Usage: 13.8%\nCPU Load: 0.12\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:45:13 up 2 min, 1 user, load average: 1.43, 0.54, 0.20\nDisk Usage: 1%\nMemory Usage: 11.5%\nCPU Load: 1.75\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T22:45:26.526939+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_225022_12f870_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_225022_12f870_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..03bb3cd --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_225022_12f870_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `64d03bee186a4a65be99ae1b77c059cf` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T22:50:00.000909+00:00 | +| **Fin** | 2025-12-17T22:50:22.943441+00:00 | +| **Durée** | 22.9s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002946", "end": "2025-12-17 17:50:11.667153", "msg": "", "rc": 0, "start": "2025-12-17 17:50:11.664207", "stderr": "", "stderr_lines": [], "stdout": " 17:50:11 up 22 days, 4:41, 1 user, load average: 0.08, 0.11, 0.09", "stdout_lines": [" 17:50:11 up 22 days, 4:41, 1 user, load average: 0.08, 0.11, 0.09"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003799", "end": "2025-12-17 17:50:11.684350", "msg": "", "rc": 0, "start": "2025-12-17 17:50:11.680551", "stderr": "", "stderr_lines": [], "stdout": " 17:50:11 up 22 days, 7:00, 1 user, load average: 0.21, 0.12, 0.05", "stdout_lines": [" 17:50:11 up 22 days, 7:00, 1 user, load average: 0.21, 0.12, 0.05"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002877", "end": "2025-12-17 17:50:11.718394", "msg": "", "rc": 0, "start": "2025-12-17 17:50:11.715517", "stderr": "", "stderr_lines": [], "stdout": " 17:50:11 up 3 days, 7:22, 1 user, load average: 0.27, 0.22, 0.21", "stdout_lines": [" 17:50:11 up 3 days, 7:22, 1 user, load average: 0.27, 0.22, 0.21"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003988", "end": "2025-12-17 17:50:11.723539", "msg": "", "rc": 0, "start": "2025-12-17 17:50:11.719551", "stderr": "", "stderr_lines": [], "stdout": " 17:50:11 up 22 days, 6:14, 1 user, load average: 0.77, 0.64, 0.63", "stdout_lines": [" 17:50:11 up 22 days, 6:14, 1 user, load average: 0.77, 0.64, 0.63"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002834", "end": "2025-12-17 17:49:45.641762", "msg": "", "rc": 0, "start": "2025-12-17 17:49:45.638928", "stderr": "", "stderr_lines": [], "stdout": " 17:49:45 up 11 days, 5:39, 0 user, load average: 0.01, 0.11, 0.13", "stdout_lines": [" 17:49:45 up 11 days, 5:39, 0 user, load average: 0.01, 0.11, 0.13"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008425", "end": "2025-12-17 17:50:12.435212", "msg": "", "rc": 0, "start": "2025-12-17 17:50:12.426787", "stderr": "", "stderr_lines": [], "stdout": " 17:50:12 up 194 days, 9:23, 1 user, load average: 0.22, 0.14, 0.11", "stdout_lines": [" 17:50:12 up 194 days, 9:23, 1 user, load average: 0.22, 0.14, 0.11"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009068", "end": "2025-12-17 17:50:12.448861", "msg": "", "rc": 0, "start": "2025-12-17 17:50:12.439793", "stderr": "", "stderr_lines": [], "stdout": " 17:50:12 up 194 days, 9:23, 1 user, load average: 0.27, 0.22, 0.19", "stdout_lines": [" 17:50:12 up 194 days, 9:23, 1 user, load average: 0.27, 0.22, 0.19"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004632", "end": "2025-12-17 17:50:12.686409", "msg": "", "rc": 0, "start": "2025-12-17 17:50:11.681777", "stderr": "", "stderr_lines": [], "stdout": " 17:50:11 up 22 days, 5:01, 1 user, load average: 0.49, 0.52, 0.55", "stdout_lines": [" 17:50:11 up 22 days, 5:01, 1 user, load average: 0.49, 0.52, 0.55"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004449", "end": "2025-12-17 17:49:39.606100", "msg": "", "rc": 0, "start": "2025-12-17 17:49:39.601651", "stderr": "", "stderr_lines": [], "stdout": " 17:49:39 up 18 days, 1:51, 0 user, load average: 0.11, 0.04, 0.01", "stdout_lines": [" 17:49:39 up 18 days, 1:51, 0 user, load average: 0.11, 0.04, 0.01"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.005234", "end": "2025-12-17 17:50:12.956635", "msg": "", "rc": 0, "start": "2025-12-17 17:50:12.951401", "stderr": "", "stderr_lines": [], "stdout": " 17:50:12 up 3 days, 7:21, 1 user, load average: 0.01, 0.05, 0.01", "stdout_lines": [" 17:50:12 up 3 days, 7:21, 1 user, load average: 0.01, 0.05, 0.01"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003882", "end": "2025-12-17 17:49:42.475490", "msg": "", "rc": 0, "start": "2025-12-17 17:49:42.471608", "stderr": "", "stderr_lines": [], "stdout": " 17:49:42 up 20 days, 20:44, 0 user, load average: 0.37, 0.39, 0.39", "stdout_lines": [" 17:49:42 up 20 days, 20:44, 0 user, load average: 0.37, 0.39, 0.39"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003094", "end": "2025-12-17 17:49:49.278298", "msg": "", "rc": 0, "start": "2025-12-17 17:49:49.275204", "stderr": "", "stderr_lines": [], "stdout": " 17:49:49 up 17 days, 7:05, 0 user, load average: 0.24, 0.18, 0.12", "stdout_lines": [" 17:49:49 up 17 days, 7:05, 0 user, load average: 0.24, 0.18, 0.12"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019276", "end": "2025-12-17 17:50:13.194430", "msg": "", "rc": 0, "start": "2025-12-17 17:50:13.175154", "stderr": "", "stderr_lines": [], "stdout": " 17:50:13 up 15 days, 7:16, 1 user, load average: 0.23, 0.12, 0.05", "stdout_lines": [" 17:50:13 up 15 days, 7:16, 1 user, load average: 0.23, 0.12, 0.05"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004281", "end": "2025-12-17 14:50:13.414668", "msg": "", "rc": 0, "start": "2025-12-17 14:50:13.410387", "stderr": "", "stderr_lines": [], "stdout": " 2:50PM up 22 days, 4:40, 1 user, load averages: 0.11, 0.20, 0.18", "stdout_lines": [" 2:50PM up 22 days, 4:40, 1 user, load averages: 0.11, 0.20, 0.18"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004312", "end": "2025-12-17 17:50:13.571652", "msg": "", "rc": 0, "start": "2025-12-17 17:50:13.567340", "stderr": "", "stderr_lines": [], "stdout": " 17:50:13 up 3 days, 7:21, 1 user, load average: 0.11, 0.06, 0.01", "stdout_lines": [" 17:50:13 up 3 days, 7:21, 1 user, load average: 0.11, 0.06, 0.01"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.010492", "end": "2025-12-17 17:50:14.753180", "msg": "", "rc": 0, "start": "2025-12-17 17:50:14.742688", "stderr": "", "stderr_lines": [], "stdout": " 17:50:14 up 7 min, 1 user, load average: 1.24, 1.02, 0.52", "stdout_lines": [" 17:50:14 up 7 min, 1 user, load average: 1.24, 1.02, 0.52"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004344", "end": "2025-12-17 17:50:14.396294", "msg": "", "rc": 0, "start": "2025-12-17 17:50:14.391950", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004515", "end": "2025-12-17 17:50:14.406341", "msg": "", "rc": 0, "start": "2025-12-17 17:50:14.401826", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004171", "end": "2025-12-17 17:50:14.421282", "msg": "", "rc": 0, "start": "2025-12-17 17:50:14.417111", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004667", "end": "2025-12-17 17:50:14.441830", "msg": "", "rc": 0, "start": "2025-12-17 17:50:14.437163", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005392", "end": "2025-12-17 17:50:14.454350", "msg": "", "rc": 0, "start": "2025-12-17 17:50:14.448958", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005153", "end": "2025-12-17 17:49:48.267914", "msg": "", "rc": 0, "start": "2025-12-17 17:49:48.262761", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005327", "end": "2025-12-17 17:49:41.761405", "msg": "", "rc": 0, "start": "2025-12-17 17:49:41.756078", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010590", "end": "2025-12-17 17:50:15.198394", "msg": "", "rc": 0, "start": "2025-12-17 17:50:15.187804", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011663", "end": "2025-12-17 17:50:15.220063", "msg": "", "rc": 0, "start": "2025-12-17 17:50:15.208400", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006003", "end": "2025-12-17 17:50:15.380900", "msg": "", "rc": 0, "start": "2025-12-17 17:50:15.374897", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005397", "end": "2025-12-17 17:49:44.934747", "msg": "", "rc": 0, "start": "2025-12-17 17:49:44.929350", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005333", "end": "2025-12-17 14:50:15.683696", "msg": "", "rc": 0, "start": "2025-12-17 14:50:15.678363", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004534", "end": "2025-12-17 17:49:51.688872", "msg": "", "rc": 0, "start": "2025-12-17 17:49:51.684338", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005305", "end": "2025-12-17 17:50:15.803963", "msg": "", "rc": 0, "start": "2025-12-17 17:50:15.798658", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.008127", "end": "2025-12-17 17:50:16.687817", "msg": "", "rc": 0, "start": "2025-12-17 17:50:16.679690", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.024834", "end": "2025-12-17 17:50:15.792993", "msg": "", "rc": 0, "start": "2025-12-17 17:50:15.768159", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004524", "end": "2025-12-17 17:50:16.311489", "msg": "", "rc": 0, "start": "2025-12-17 17:50:16.306965", "stderr": "", "stderr_lines": [], "stdout": "77.7%", "stdout_lines": ["77.7%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004375", "end": "2025-12-17 17:50:16.335949", "msg": "", "rc": 0, "start": "2025-12-17 17:50:16.331574", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005251", "end": "2025-12-17 17:50:16.354138", "msg": "", "rc": 0, "start": "2025-12-17 17:50:16.348887", "stderr": "", "stderr_lines": [], "stdout": "49.4%", "stdout_lines": ["49.4%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004960", "end": "2025-12-17 17:50:16.362618", "msg": "", "rc": 0, "start": "2025-12-17 17:50:16.357658", "stderr": "", "stderr_lines": [], "stdout": "9.1%", "stdout_lines": ["9.1%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005549", "end": "2025-12-17 17:50:16.381029", "msg": "", "rc": 0, "start": "2025-12-17 17:50:16.375480", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004185", "end": "2025-12-17 17:49:50.200241", "msg": "", "rc": 0, "start": "2025-12-17 17:49:50.196056", "stderr": "", "stderr_lines": [], "stdout": "71.0%", "stdout_lines": ["71.0%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004646", "end": "2025-12-17 17:49:43.686151", "msg": "", "rc": 0, "start": "2025-12-17 17:49:43.681505", "stderr": "", "stderr_lines": [], "stdout": "69.5%", "stdout_lines": ["69.5%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011036", "end": "2025-12-17 17:50:17.020291", "msg": "", "rc": 0, "start": "2025-12-17 17:50:17.009255", "stderr": "", "stderr_lines": [], "stdout": "6.7%", "stdout_lines": ["6.7%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011828", "end": "2025-12-17 17:50:17.069523", "msg": "", "rc": 0, "start": "2025-12-17 17:50:17.057695", "stderr": "", "stderr_lines": [], "stdout": "13.0%", "stdout_lines": ["13.0%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006082", "end": "2025-12-17 17:50:17.313820", "msg": "", "rc": 0, "start": "2025-12-17 17:50:17.307738", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005808", "end": "2025-12-17 17:49:46.876808", "msg": "", "rc": 0, "start": "2025-12-17 17:49:46.871000", "stderr": "", "stderr_lines": [], "stdout": "27.4%", "stdout_lines": ["27.4%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005539", "end": "2025-12-17 14:50:17.545327", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 14:50:17.539788", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003843", "end": "2025-12-17 17:49:53.571462", "msg": "", "rc": 0, "start": "2025-12-17 17:49:53.567619", "stderr": "", "stderr_lines": [], "stdout": "60.3%", "stdout_lines": ["60.3%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005378", "end": "2025-12-17 17:50:17.736501", "msg": "", "rc": 0, "start": "2025-12-17 17:50:17.731123", "stderr": "", "stderr_lines": [], "stdout": "14.0%", "stdout_lines": ["14.0%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.007549", "end": "2025-12-17 17:50:18.637078", "msg": "", "rc": 0, "start": "2025-12-17 17:50:18.629529", "stderr": "", "stderr_lines": [], "stdout": "12.0%", "stdout_lines": ["12.0%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.029699", "end": "2025-12-17 17:50:17.715342", "msg": "", "rc": 0, "start": "2025-12-17 17:50:17.685643", "stderr": "", "stderr_lines": [], "stdout": "20.4%", "stdout_lines": ["20.4%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005094", "end": "2025-12-17 17:50:18.242700", "msg": "", "rc": 0, "start": "2025-12-17 17:50:18.237606", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004841", "end": "2025-12-17 17:50:18.263900", "msg": "", "rc": 0, "start": "2025-12-17 17:50:18.259059", "stderr": "", "stderr_lines": [], "stdout": "47.0°C", "stdout_lines": ["47.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005690", "end": "2025-12-17 17:50:18.278008", "msg": "", "rc": 0, "start": "2025-12-17 17:50:18.272318", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003101", "end": "2025-12-17 17:50:18.290676", "msg": "", "rc": 0, "start": "2025-12-17 17:50:18.287575", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006895", "end": "2025-12-17 17:50:18.311865", "msg": "", "rc": 0, "start": "2025-12-17 17:50:18.304970", "stderr": "", "stderr_lines": [], "stdout": "53.0°C", "stdout_lines": ["53.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002654", "end": "2025-12-17 17:49:52.104188", "msg": "", "rc": 0, "start": "2025-12-17 17:49:52.101534", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003206", "end": "2025-12-17 17:49:45.612012", "msg": "", "rc": 0, "start": "2025-12-17 17:49:45.608806", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011755", "end": "2025-12-17 17:50:18.946742", "msg": "", "rc": 0, "start": "2025-12-17 17:50:18.934987", "stderr": "", "stderr_lines": [], "stdout": "31.6°C", "stdout_lines": ["31.6°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012758", "end": "2025-12-17 17:50:18.990292", "msg": "", "rc": 0, "start": "2025-12-17 17:50:18.977534", "stderr": "", "stderr_lines": [], "stdout": "36.0°C", "stdout_lines": ["36.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003210", "end": "2025-12-17 17:50:19.195381", "msg": "", "rc": 0, "start": "2025-12-17 17:50:19.192171", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003101", "end": "2025-12-17 17:49:48.772604", "msg": "", "rc": 0, "start": "2025-12-17 17:49:48.769503", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002575", "end": "2025-12-17 17:49:55.427721", "msg": "", "rc": 0, "start": "2025-12-17 17:49:55.425146", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003770", "end": "2025-12-17 14:50:19.441572", "msg": "", "rc": 0, "start": "2025-12-17 14:50:19.437802", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003036", "end": "2025-12-17 17:50:19.632254", "msg": "", "rc": 0, "start": "2025-12-17 17:50:19.629218", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003761", "end": "2025-12-17 17:50:19.689567", "msg": "", "rc": 0, "start": "2025-12-17 17:50:19.685806", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.031373", "end": "2025-12-17 17:50:19.845225", "msg": "", "rc": 0, "start": "2025-12-17 17:50:19.813852", "stderr": "", "stderr_lines": [], "stdout": "38.4°C", "stdout_lines": ["38.4°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004924", "end": "2025-12-17 17:50:20.396096", "msg": "", "rc": 0, "start": "2025-12-17 17:50:20.391172", "stderr": "", "stderr_lines": [], "stdout": "0.07", "stdout_lines": ["0.07"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004570", "end": "2025-12-17 17:50:20.423963", "msg": "", "rc": 0, "start": "2025-12-17 17:50:20.419393", "stderr": "", "stderr_lines": [], "stdout": "0.72", "stdout_lines": ["0.72"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004058", "end": "2025-12-17 17:50:20.427979", "msg": "", "rc": 0, "start": "2025-12-17 17:50:20.423921", "stderr": "", "stderr_lines": [], "stdout": "0.39", "stdout_lines": ["0.39"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005596", "end": "2025-12-17 17:50:20.448495", "msg": "", "rc": 0, "start": "2025-12-17 17:50:20.442899", "stderr": "", "stderr_lines": [], "stdout": "0.27", "stdout_lines": ["0.27"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005447", "end": "2025-12-17 17:50:20.468622", "msg": "", "rc": 0, "start": "2025-12-17 17:50:20.463175", "stderr": "", "stderr_lines": [], "stdout": "0.88", "stdout_lines": ["0.88"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004371", "end": "2025-12-17 17:49:54.265733", "msg": "", "rc": 0, "start": "2025-12-17 17:49:54.261362", "stderr": "", "stderr_lines": [], "stdout": "0.01", "stdout_lines": ["0.01"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005091", "end": "2025-12-17 17:49:47.770676", "msg": "", "rc": 0, "start": "2025-12-17 17:49:47.765585", "stderr": "", "stderr_lines": [], "stdout": "0.25", "stdout_lines": ["0.25"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010213", "end": "2025-12-17 17:50:21.197021", "msg": "", "rc": 0, "start": "2025-12-17 17:50:21.186808", "stderr": "", "stderr_lines": [], "stdout": "0.19", "stdout_lines": ["0.19"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010897", "end": "2025-12-17 17:50:21.237807", "msg": "", "rc": 0, "start": "2025-12-17 17:50:21.226910", "stderr": "", "stderr_lines": [], "stdout": "0.31", "stdout_lines": ["0.31"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005606", "end": "2025-12-17 17:50:21.379060", "msg": "", "rc": 0, "start": "2025-12-17 17:50:21.373454", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005097", "end": "2025-12-17 17:49:50.943157", "msg": "", "rc": 0, "start": "2025-12-17 17:49:50.938060", "stderr": "", "stderr_lines": [], "stdout": "0.39", "stdout_lines": ["0.39"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004432", "end": "2025-12-17 17:49:57.680847", "msg": "", "rc": 0, "start": "2025-12-17 17:49:57.676415", "stderr": "", "stderr_lines": [], "stdout": "0.22", "stdout_lines": ["0.22"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005859", "end": "2025-12-17 14:50:21.696210", "msg": "", "rc": 0, "start": "2025-12-17 14:50:21.690351", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005324", "end": "2025-12-17 17:50:21.815166", "msg": "", "rc": 0, "start": "2025-12-17 17:50:21.809842", "stderr": "", "stderr_lines": [], "stdout": "0.25", "stdout_lines": ["0.25"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.007232", "end": "2025-12-17 17:50:21.941179", "msg": "", "rc": 0, "start": "2025-12-17 17:50:21.933947", "stderr": "", "stderr_lines": [], "stdout": "1.37", "stdout_lines": ["1.37"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024160", "end": "2025-12-17 17:50:21.916164", "msg": "", "rc": 0, "start": "2025-12-17 17:50:21.892004", "stderr": "", "stderr_lines": [], "stdout": "0.35", "stdout_lines": ["0.35"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:50:11 up 3 days, 7:22, 1 user, load average: 0.27, 0.22, 0.21\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.39\nCPU Temp: 47.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:50:11 up 22 days, 4:41, 1 user, load average: 0.08, 0.11, 0.09\nDisk Usage: 23%\nMemory Usage: 77.7%\nCPU Load: 0.07\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:50:11 up 22 days, 5:01, 1 user, load average: 0.49, 0.52, 0.55\nDisk Usage: 14%\nMemory Usage: 49.4%\nCPU Load: 0.72\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:50:11 up 22 days, 6:14, 1 user, load average: 0.77, 0.64, 0.63\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.88\nCPU Temp: 53.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:50:11 up 22 days, 7:00, 1 user, load average: 0.21, 0.12, 0.05\nDisk Usage: 9%\nMemory Usage: 9.1%\nCPU Load: 0.27\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:50:13 up 15 days, 7:16, 1 user, load average: 0.23, 0.12, 0.05\nDisk Usage: 21%\nMemory Usage: 20.4%\nCPU Load: 0.35\nCPU Temp: 38.4°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:50:12 up 194 days, 9:23, 1 user, load average: 0.27, 0.22, 0.19\nDisk Usage: 6%\nMemory Usage: 13.0%\nCPU Load: 0.31\nCPU Temp: 36.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:50:12 up 194 days, 9:23, 1 user, load average: 0.22, 0.14, 0.11\nDisk Usage: 3%\nMemory Usage: 6.7%\nCPU Load: 0.19\nCPU Temp: 31.6°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:49:45 up 11 days, 5:39, 0 user, load average: 0.01, 0.11, 0.13\nDisk Usage: 48%\nMemory Usage: 71.0%\nCPU Load: 0.01\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:49:39 up 18 days, 1:51, 0 user, load average: 0.11, 0.04, 0.01\nDisk Usage: 25%\nMemory Usage: 69.5%\nCPU Load: 0.25\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:50:12 up 3 days, 7:21, 1 user, load average: 0.01, 0.05, 0.01\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:49:42 up 20 days, 20:44, 0 user, load average: 0.37, 0.39, 0.39\nDisk Usage: 28%\nMemory Usage: 27.4%\nCPU Load: 0.39\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:49:49 up 17 days, 7:05, 0 user, load average: 0.24, 0.18, 0.12\nDisk Usage: 76%\nMemory Usage: 60.3%\nCPU Load: 0.22\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 2:50PM up 22 days, 4:40, 1 user, load averages: 0.11, 0.20, 0.18\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:50:13 up 3 days, 7:21, 1 user, load average: 0.11, 0.06, 0.01\nDisk Usage: 79%\nMemory Usage: 14.0%\nCPU Load: 0.25\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:50:14 up 7 min, 1 user, load average: 1.24, 1.02, 0.52\nDisk Usage: 1%\nMemory Usage: 12.0%\nCPU Load: 1.37\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T22:50:22.986743+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_225531_673385_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_225531_673385_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..4eafc4c --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_225531_673385_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `dfd75701a57949f287dc3ecdea68f428` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T22:55:00.004961+00:00 | +| **Fin** | 2025-12-17T22:55:31.189196+00:00 | +| **Durée** | 31.2s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [dev.prod.home] +ok: [hp.truenas.home] +ok: [jump.point.home] +ok: [orangepi.pc.home] +ok: [localhost] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002965", "end": "2025-12-17 17:55:15.537368", "msg": "", "rc": 0, "start": "2025-12-17 17:55:15.534403", "stderr": "", "stderr_lines": [], "stdout": " 17:55:15 up 22 days, 4:46, 1 user, load average: 0.13, 0.12, 0.10", "stdout_lines": [" 17:55:15 up 22 days, 4:46, 1 user, load average: 0.13, 0.12, 0.10"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003952", "end": "2025-12-17 17:55:15.554753", "msg": "", "rc": 0, "start": "2025-12-17 17:55:15.550801", "stderr": "", "stderr_lines": [], "stdout": " 17:55:15 up 22 days, 7:05, 1 user, load average: 0.09, 0.10, 0.05", "stdout_lines": [" 17:55:15 up 22 days, 7:05, 1 user, load average: 0.09, 0.10, 0.05"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002827", "end": "2025-12-17 17:55:15.563485", "msg": "", "rc": 0, "start": "2025-12-17 17:55:15.560658", "stderr": "", "stderr_lines": [], "stdout": " 17:55:15 up 3 days, 7:27, 1 user, load average: 0.39, 0.25, 0.22", "stdout_lines": [" 17:55:15 up 3 days, 7:27, 1 user, load average: 0.39, 0.25, 0.22"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003789", "end": "2025-12-17 17:55:15.562643", "msg": "", "rc": 0, "start": "2025-12-17 17:55:15.558854", "stderr": "", "stderr_lines": [], "stdout": " 17:55:15 up 22 days, 6:19, 1 user, load average: 0.68, 0.59, 0.61", "stdout_lines": [" 17:55:15 up 22 days, 6:19, 1 user, load average: 0.68, 0.59, 0.61"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002840", "end": "2025-12-17 17:54:49.597396", "msg": "", "rc": 0, "start": "2025-12-17 17:54:49.594556", "stderr": "", "stderr_lines": [], "stdout": " 17:54:49 up 11 days, 5:44, 0 user, load average: 0.10, 0.10, 0.11", "stdout_lines": [" 17:54:49 up 11 days, 5:44, 0 user, load average: 0.10, 0.10, 0.11"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008506", "end": "2025-12-17 17:55:16.384372", "msg": "", "rc": 0, "start": "2025-12-17 17:55:16.375866", "stderr": "", "stderr_lines": [], "stdout": " 17:55:16 up 194 days, 9:28, 1 user, load average: 0.31, 0.15, 0.10", "stdout_lines": [" 17:55:16 up 194 days, 9:28, 1 user, load average: 0.31, 0.15, 0.10"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009158", "end": "2025-12-17 17:55:16.397359", "msg": "", "rc": 0, "start": "2025-12-17 17:55:16.388201", "stderr": "", "stderr_lines": [], "stdout": " 17:55:16 up 194 days, 9:28, 1 user, load average: 0.22, 0.18, 0.18", "stdout_lines": [" 17:55:16 up 194 days, 9:28, 1 user, load average: 0.22, 0.18, 0.18"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004305", "end": "2025-12-17 17:55:16.545522", "msg": "", "rc": 0, "start": "2025-12-17 17:55:15.541217", "stderr": "", "stderr_lines": [], "stdout": " 17:55:15 up 22 days, 5:06, 1 user, load average: 1.27, 0.84, 0.66", "stdout_lines": [" 17:55:15 up 22 days, 5:06, 1 user, load average: 1.27, 0.84, 0.66"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003415", "end": "2025-12-17 17:54:43.647641", "msg": "", "rc": 0, "start": "2025-12-17 17:54:43.644226", "stderr": "", "stderr_lines": [], "stdout": " 17:54:43 up 18 days, 1:56, 0 user, load average: 0.09, 0.05, 0.01", "stdout_lines": [" 17:54:43 up 18 days, 1:56, 0 user, load average: 0.09, 0.05, 0.01"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004754", "end": "2025-12-17 17:55:17.000547", "msg": "", "rc": 0, "start": "2025-12-17 17:55:16.995793", "stderr": "", "stderr_lines": [], "stdout": " 17:55:16 up 3 days, 7:26, 1 user, load average: 0.07, 0.05, 0.00", "stdout_lines": [" 17:55:16 up 3 days, 7:26, 1 user, load average: 0.07, 0.05, 0.00"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003090", "end": "2025-12-17 17:54:53.102607", "msg": "", "rc": 0, "start": "2025-12-17 17:54:53.099517", "stderr": "", "stderr_lines": [], "stdout": " 17:54:53 up 17 days, 7:10, 0 user, load average: 0.12, 0.13, 0.10", "stdout_lines": [" 17:54:53 up 17 days, 7:10, 0 user, load average: 0.12, 0.13, 0.10"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004135", "end": "2025-12-17 17:54:46.533994", "msg": "", "rc": 0, "start": "2025-12-17 17:54:46.529859", "stderr": "", "stderr_lines": [], "stdout": " 17:54:46 up 20 days, 20:49, 0 user, load average: 0.33, 0.42, 0.41", "stdout_lines": [" 17:54:46 up 20 days, 20:49, 0 user, load average: 0.33, 0.42, 0.41"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019528", "end": "2025-12-17 17:55:17.138582", "msg": "", "rc": 0, "start": "2025-12-17 17:55:17.119054", "stderr": "", "stderr_lines": [], "stdout": " 17:55:17 up 15 days, 7:21, 1 user, load average: 0.12, 0.11, 0.06", "stdout_lines": [" 17:55:17 up 15 days, 7:21, 1 user, load average: 0.12, 0.11, 0.06"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004523", "end": "2025-12-17 14:55:17.406938", "msg": "", "rc": 0, "start": "2025-12-17 14:55:17.402415", "stderr": "", "stderr_lines": [], "stdout": " 2:55PM up 22 days, 4:45, 1 user, load averages: 0.17, 0.13, 0.15", "stdout_lines": [" 2:55PM up 22 days, 4:45, 1 user, load averages: 0.17, 0.13, 0.15"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003828", "end": "2025-12-17 17:55:17.558511", "msg": "", "rc": 0, "start": "2025-12-17 17:55:17.554683", "stderr": "", "stderr_lines": [], "stdout": " 17:55:17 up 3 days, 7:26, 1 user, load average: 0.00, 0.03, 0.00", "stdout_lines": [" 17:55:17 up 3 days, 7:26, 1 user, load average: 0.00, 0.03, 0.00"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019680", "end": "2025-12-17 17:55:18.245728", "msg": "", "rc": 0, "start": "2025-12-17 17:55:18.226048", "stderr": "", "stderr_lines": [], "stdout": " 17:55:18 up 12 min, 1 user, load average: 1.43, 1.17, 0.74", "stdout_lines": [" 17:55:18 up 12 min, 1 user, load average: 1.43, 1.17, 0.74"]} + +TASK [Get disk usage] ********************************************************** +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004117", "end": "2025-12-17 17:55:18.407244", "msg": "", "rc": 0, "start": "2025-12-17 17:55:18.403127", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004237", "end": "2025-12-17 17:55:18.458146", "msg": "", "rc": 0, "start": "2025-12-17 17:55:18.453909", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005926", "end": "2025-12-17 17:55:18.521462", "msg": "", "rc": 0, "start": "2025-12-17 17:55:18.515536", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005228", "end": "2025-12-17 17:55:18.519046", "msg": "", "rc": 0, "start": "2025-12-17 17:55:18.513818", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005054", "end": "2025-12-17 17:55:18.558396", "msg": "", "rc": 0, "start": "2025-12-17 17:55:18.553342", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005446", "end": "2025-12-17 17:54:52.612255", "msg": "", "rc": 0, "start": "2025-12-17 17:54:52.606809", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005624", "end": "2025-12-17 17:54:46.083131", "msg": "", "rc": 0, "start": "2025-12-17 17:54:46.077507", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.013197", "end": "2025-12-17 17:55:19.421006", "msg": "", "rc": 0, "start": "2025-12-17 17:55:19.407809", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011497", "end": "2025-12-17 17:55:19.460458", "msg": "", "rc": 0, "start": "2025-12-17 17:55:19.448961", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005814", "end": "2025-12-17 17:55:19.873750", "msg": "", "rc": 0, "start": "2025-12-17 17:55:19.867936", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005745", "end": "2025-12-17 17:54:49.382738", "msg": "", "rc": 0, "start": "2025-12-17 17:54:49.376993", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005341", "end": "2025-12-17 14:55:20.076782", "msg": "", "rc": 0, "start": "2025-12-17 14:55:20.071441", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005206", "end": "2025-12-17 17:54:56.099074", "msg": "", "rc": 0, "start": "2025-12-17 17:54:56.093868", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.026946", "end": "2025-12-17 17:55:20.150519", "msg": "", "rc": 0, "start": "2025-12-17 17:55:20.123573", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005328", "end": "2025-12-17 17:55:20.398852", "msg": "", "rc": 0, "start": "2025-12-17 17:55:20.393524", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.008995", "end": "2025-12-17 17:55:21.114210", "msg": "", "rc": 0, "start": "2025-12-17 17:55:21.105215", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004860", "end": "2025-12-17 17:55:21.160843", "msg": "", "rc": 0, "start": "2025-12-17 17:55:21.155983", "stderr": "", "stderr_lines": [], "stdout": "77.7%", "stdout_lines": ["77.7%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004232", "end": "2025-12-17 17:55:21.178578", "msg": "", "rc": 0, "start": "2025-12-17 17:55:21.174346", "stderr": "", "stderr_lines": [], "stdout": "22.5%", "stdout_lines": ["22.5%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004874", "end": "2025-12-17 17:55:21.241700", "msg": "", "rc": 0, "start": "2025-12-17 17:55:21.236826", "stderr": "", "stderr_lines": [], "stdout": "49.3%", "stdout_lines": ["49.3%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004565", "end": "2025-12-17 17:55:21.267290", "msg": "", "rc": 0, "start": "2025-12-17 17:55:21.262725", "stderr": "", "stderr_lines": [], "stdout": "9.1%", "stdout_lines": ["9.1%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005603", "end": "2025-12-17 17:55:21.273428", "msg": "", "rc": 0, "start": "2025-12-17 17:55:21.267825", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003786", "end": "2025-12-17 17:54:55.231611", "msg": "", "rc": 0, "start": "2025-12-17 17:54:55.227825", "stderr": "", "stderr_lines": [], "stdout": "70.9%", "stdout_lines": ["70.9%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004445", "end": "2025-12-17 17:54:48.760878", "msg": "", "rc": 0, "start": "2025-12-17 17:54:48.756433", "stderr": "", "stderr_lines": [], "stdout": "69.6%", "stdout_lines": ["69.6%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010867", "end": "2025-12-17 17:55:22.052840", "msg": "", "rc": 0, "start": "2025-12-17 17:55:22.041973", "stderr": "", "stderr_lines": [], "stdout": "6.9%", "stdout_lines": ["6.9%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.012227", "end": "2025-12-17 17:55:22.052330", "msg": "", "rc": 0, "start": "2025-12-17 17:55:22.040103", "stderr": "", "stderr_lines": [], "stdout": "12.8%", "stdout_lines": ["12.8%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005849", "end": "2025-12-17 17:55:22.438378", "msg": "", "rc": 0, "start": "2025-12-17 17:55:22.432529", "stderr": "", "stderr_lines": [], "stdout": "35.4%", "stdout_lines": ["35.4%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005043", "end": "2025-12-17 14:55:22.649520", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 14:55:22.644477", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004186", "end": "2025-12-17 17:54:52.055949", "msg": "", "rc": 0, "start": "2025-12-17 17:54:52.051763", "stderr": "", "stderr_lines": [], "stdout": "27.2%", "stdout_lines": ["27.2%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003754", "end": "2025-12-17 17:54:58.648002", "msg": "", "rc": 0, "start": "2025-12-17 17:54:58.644248", "stderr": "", "stderr_lines": [], "stdout": "58.6%", "stdout_lines": ["58.6%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025661", "end": "2025-12-17 17:55:22.757689", "msg": "", "rc": 0, "start": "2025-12-17 17:55:22.732028", "stderr": "", "stderr_lines": [], "stdout": "19.6%", "stdout_lines": ["19.6%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005327", "end": "2025-12-17 17:55:22.952573", "msg": "", "rc": 0, "start": "2025-12-17 17:55:22.947246", "stderr": "", "stderr_lines": [], "stdout": "14.1%", "stdout_lines": ["14.1%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.019810", "end": "2025-12-17 17:55:23.930362", "msg": "", "rc": 0, "start": "2025-12-17 17:55:23.910552", "stderr": "", "stderr_lines": [], "stdout": "11.8%", "stdout_lines": ["11.8%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005066", "end": "2025-12-17 17:55:23.880014", "msg": "", "rc": 0, "start": "2025-12-17 17:55:23.874948", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004944", "end": "2025-12-17 17:55:23.894482", "msg": "", "rc": 0, "start": "2025-12-17 17:55:23.889538", "stderr": "", "stderr_lines": [], "stdout": "45.0°C", "stdout_lines": ["45.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005596", "end": "2025-12-17 17:55:23.940430", "msg": "", "rc": 0, "start": "2025-12-17 17:55:23.934834", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006076", "end": "2025-12-17 17:55:24.019455", "msg": "", "rc": 0, "start": "2025-12-17 17:55:24.013379", "stderr": "", "stderr_lines": [], "stdout": "52.5°C", "stdout_lines": ["52.5°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003364", "end": "2025-12-17 17:55:24.029162", "msg": "", "rc": 0, "start": "2025-12-17 17:55:24.025798", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002649", "end": "2025-12-17 17:54:57.944155", "msg": "", "rc": 0, "start": "2025-12-17 17:54:57.941506", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003309", "end": "2025-12-17 17:54:51.450927", "msg": "", "rc": 0, "start": "2025-12-17 17:54:51.447618", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011538", "end": "2025-12-17 17:55:24.779170", "msg": "", "rc": 0, "start": "2025-12-17 17:55:24.767632", "stderr": "", "stderr_lines": [], "stdout": "32.1°C", "stdout_lines": ["32.1°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013814", "end": "2025-12-17 17:55:24.835160", "msg": "", "rc": 0, "start": "2025-12-17 17:55:24.821346", "stderr": "", "stderr_lines": [], "stdout": "36.5°C", "stdout_lines": ["36.5°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003197", "end": "2025-12-17 17:55:25.204626", "msg": "", "rc": 0, "start": "2025-12-17 17:55:25.201429", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005254", "end": "2025-12-17 17:54:54.767440", "msg": "", "rc": 0, "start": "2025-12-17 17:54:54.762186", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004166", "end": "2025-12-17 14:55:25.437432", "msg": "", "rc": 0, "start": "2025-12-17 14:55:25.433266", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002675", "end": "2025-12-17 17:55:01.433914", "msg": "", "rc": 0, "start": "2025-12-17 17:55:01.431239", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028192", "end": "2025-12-17 17:55:25.456832", "msg": "", "rc": 0, "start": "2025-12-17 17:55:25.428640", "stderr": "", "stderr_lines": [], "stdout": "36.8°C", "stdout_lines": ["36.8°C"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002893", "end": "2025-12-17 17:55:25.684585", "msg": "", "rc": 0, "start": "2025-12-17 17:55:25.681692", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003650", "end": "2025-12-17 17:55:26.704382", "msg": "", "rc": 0, "start": "2025-12-17 17:55:26.700732", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004148", "end": "2025-12-17 17:55:26.629368", "msg": "", "rc": 0, "start": "2025-12-17 17:55:26.625220", "stderr": "", "stderr_lines": [], "stdout": "0.11", "stdout_lines": ["0.11"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004062", "end": "2025-12-17 17:55:26.671199", "msg": "", "rc": 0, "start": "2025-12-17 17:55:26.667137", "stderr": "", "stderr_lines": [], "stdout": "0.49", "stdout_lines": ["0.49"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004695", "end": "2025-12-17 17:55:26.672625", "msg": "", "rc": 0, "start": "2025-12-17 17:55:26.667930", "stderr": "", "stderr_lines": [], "stdout": "1.37", "stdout_lines": ["1.37"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004986", "end": "2025-12-17 17:55:26.720404", "msg": "", "rc": 0, "start": "2025-12-17 17:55:26.715418", "stderr": "", "stderr_lines": [], "stdout": "0.07", "stdout_lines": ["0.07"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005582", "end": "2025-12-17 17:55:26.707531", "msg": "", "rc": 0, "start": "2025-12-17 17:55:26.701949", "stderr": "", "stderr_lines": [], "stdout": "0.73", "stdout_lines": ["0.73"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004501", "end": "2025-12-17 17:55:00.652613", "msg": "", "rc": 0, "start": "2025-12-17 17:55:00.648112", "stderr": "", "stderr_lines": [], "stdout": "0.16", "stdout_lines": ["0.16"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005647", "end": "2025-12-17 17:54:54.143922", "msg": "", "rc": 0, "start": "2025-12-17 17:54:54.138275", "stderr": "", "stderr_lines": [], "stdout": "0.07", "stdout_lines": ["0.07"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010111", "end": "2025-12-17 17:55:27.450284", "msg": "", "rc": 0, "start": "2025-12-17 17:55:27.440173", "stderr": "", "stderr_lines": [], "stdout": "0.26", "stdout_lines": ["0.26"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011320", "end": "2025-12-17 17:55:27.458939", "msg": "", "rc": 0, "start": "2025-12-17 17:55:27.447619", "stderr": "", "stderr_lines": [], "stdout": "0.19", "stdout_lines": ["0.19"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005624", "end": "2025-12-17 17:55:27.866897", "msg": "", "rc": 0, "start": "2025-12-17 17:55:27.861273", "stderr": "", "stderr_lines": [], "stdout": "0.06", "stdout_lines": ["0.06"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006018", "end": "2025-12-17 14:55:28.053895", "msg": "", "rc": 0, "start": "2025-12-17 14:55:28.047877", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004116", "end": "2025-12-17 17:55:04.047491", "msg": "", "rc": 0, "start": "2025-12-17 17:55:04.043375", "stderr": "", "stderr_lines": [], "stdout": "0.17", "stdout_lines": ["0.17"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005618", "end": "2025-12-17 17:54:57.532897", "msg": "", "rc": 0, "start": "2025-12-17 17:54:57.527279", "stderr": "", "stderr_lines": [], "stdout": "0.28", "stdout_lines": ["0.28"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024158", "end": "2025-12-17 17:55:28.122898", "msg": "", "rc": 0, "start": "2025-12-17 17:55:28.098740", "stderr": "", "stderr_lines": [], "stdout": "0.25", "stdout_lines": ["0.25"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005339", "end": "2025-12-17 17:55:28.397841", "msg": "", "rc": 0, "start": "2025-12-17 17:55:28.392502", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.014470", "end": "2025-12-17 17:55:29.395100", "msg": "", "rc": 0, "start": "2025-12-17 17:55:29.380630", "stderr": "", "stderr_lines": [], "stdout": "1.57", "stdout_lines": ["1.57"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:55:15 up 3 days, 7:27, 1 user, load average: 0.39, 0.25, 0.22\nDisk Usage: 22%\nMemory Usage: 22.5%\nCPU Load: 0.49\nCPU Temp: 45.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:55:15 up 22 days, 4:46, 1 user, load average: 0.13, 0.12, 0.10\nDisk Usage: 23%\nMemory Usage: 77.7%\nCPU Load: 0.11\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:55:15 up 22 days, 5:06, 1 user, load average: 1.27, 0.84, 0.66\nDisk Usage: 14%\nMemory Usage: 49.3%\nCPU Load: 1.37\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:55:15 up 22 days, 6:19, 1 user, load average: 0.68, 0.59, 0.61\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.73\nCPU Temp: 52.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:55:15 up 22 days, 7:05, 1 user, load average: 0.09, 0.10, 0.05\nDisk Usage: 9%\nMemory Usage: 9.1%\nCPU Load: 0.07\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:55:17 up 15 days, 7:21, 1 user, load average: 0.12, 0.11, 0.06\nDisk Usage: 21%\nMemory Usage: 19.6%\nCPU Load: 0.25\nCPU Temp: 36.8°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:55:16 up 194 days, 9:28, 1 user, load average: 0.22, 0.18, 0.18\nDisk Usage: 6%\nMemory Usage: 12.8%\nCPU Load: 0.19\nCPU Temp: 36.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:55:16 up 194 days, 9:28, 1 user, load average: 0.31, 0.15, 0.10\nDisk Usage: 3%\nMemory Usage: 6.9%\nCPU Load: 0.26\nCPU Temp: 32.1°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:54:49 up 11 days, 5:44, 0 user, load average: 0.10, 0.10, 0.11\nDisk Usage: 48%\nMemory Usage: 70.9%\nCPU Load: 0.16\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:54:43 up 18 days, 1:56, 0 user, load average: 0.09, 0.05, 0.01\nDisk Usage: 25%\nMemory Usage: 69.6%\nCPU Load: 0.07\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:55:16 up 3 days, 7:26, 1 user, load average: 0.07, 0.05, 0.00\nDisk Usage: 1%\nMemory Usage: 35.4%\nCPU Load: 0.06\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:54:46 up 20 days, 20:49, 0 user, load average: 0.33, 0.42, 0.41\nDisk Usage: 28%\nMemory Usage: 27.2%\nCPU Load: 0.28\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:54:53 up 17 days, 7:10, 0 user, load average: 0.12, 0.13, 0.10\nDisk Usage: 76%\nMemory Usage: 58.6%\nCPU Load: 0.17\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 2:55PM up 22 days, 4:45, 1 user, load averages: 0.17, 0.13, 0.15\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:55:17 up 3 days, 7:26, 1 user, load average: 0.00, 0.03, 0.00\nDisk Usage: 79%\nMemory Usage: 14.1%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:55:18 up 12 min, 1 user, load average: 1.43, 1.17, 0.74\nDisk Usage: 1%\nMemory Usage: 11.8%\nCPU Load: 1.57\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T22:55:31.287373+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_230023_5dbda7_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_230023_5dbda7_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..27a0cda --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_230023_5dbda7_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `ab17c390bab143819807093ffef95c34` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T23:00:00.001359+00:00 | +| **Fin** | 2025-12-17T23:00:23.725000+00:00 | +| **Durée** | 23.7s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [dev.prod.home] +ok: [hp.truenas.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003448", "end": "2025-12-17 18:00:11.499305", "msg": "", "rc": 0, "start": "2025-12-17 18:00:11.495857", "stderr": "", "stderr_lines": [], "stdout": " 18:00:11 up 22 days, 7:10, 1 user, load average: 0.12, 0.07, 0.05", "stdout_lines": [" 18:00:11 up 22 days, 7:10, 1 user, load average: 0.12, 0.07, 0.05"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004000", "end": "2025-12-17 18:00:11.516481", "msg": "", "rc": 0, "start": "2025-12-17 18:00:11.512481", "stderr": "", "stderr_lines": [], "stdout": " 18:00:11 up 22 days, 6:24, 1 user, load average: 0.48, 0.59, 0.61", "stdout_lines": [" 18:00:11 up 22 days, 6:24, 1 user, load average: 0.48, 0.59, 0.61"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002836", "end": "2025-12-17 18:00:11.525388", "msg": "", "rc": 0, "start": "2025-12-17 18:00:11.522552", "stderr": "", "stderr_lines": [], "stdout": " 18:00:11 up 3 days, 7:32, 1 user, load average: 0.16, 0.19, 0.19", "stdout_lines": [" 18:00:11 up 3 days, 7:32, 1 user, load average: 0.16, 0.19, 0.19"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008344", "end": "2025-12-17 18:00:12.193293", "msg": "", "rc": 0, "start": "2025-12-17 18:00:12.184949", "stderr": "", "stderr_lines": [], "stdout": " 18:00:12 up 194 days, 9:33, 1 user, load average: 0.04, 0.11, 0.09", "stdout_lines": [" 18:00:12 up 194 days, 9:33, 1 user, load average: 0.04, 0.11, 0.09"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009321", "end": "2025-12-17 18:00:12.210033", "msg": "", "rc": 0, "start": "2025-12-17 18:00:12.200712", "stderr": "", "stderr_lines": [], "stdout": " 18:00:12 up 194 days, 9:33, 1 user, load average: 0.21, 0.17, 0.18", "stdout_lines": [" 18:00:12 up 194 days, 9:33, 1 user, load average: 0.21, 0.17, 0.18"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004586", "end": "2025-12-17 18:00:12.488476", "msg": "", "rc": 0, "start": "2025-12-17 18:00:11.483890", "stderr": "", "stderr_lines": [], "stdout": " 18:00:11 up 22 days, 4:51, 1 user, load average: 0.13, 0.10, 0.09", "stdout_lines": [" 18:00:11 up 22 days, 4:51, 1 user, load average: 0.13, 0.10, 0.09"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004861", "end": "2025-12-17 18:00:12.512139", "msg": "", "rc": 0, "start": "2025-12-17 18:00:11.507278", "stderr": "", "stderr_lines": [], "stdout": " 18:00:11 up 22 days, 5:11, 1 user, load average: 1.33, 1.16, 0.84", "stdout_lines": [" 18:00:11 up 22 days, 5:11, 1 user, load average: 1.33, 1.16, 0.84"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003327", "end": "2025-12-17 17:59:46.078612", "msg": "", "rc": 0, "start": "2025-12-17 17:59:46.075285", "stderr": "", "stderr_lines": [], "stdout": " 17:59:46 up 11 days, 5:49, 0 user, load average: 0.16, 0.13, 0.10", "stdout_lines": [" 17:59:46 up 11 days, 5:49, 0 user, load average: 0.16, 0.13, 0.10"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004791", "end": "2025-12-17 18:00:12.953998", "msg": "", "rc": 0, "start": "2025-12-17 18:00:12.949207", "stderr": "", "stderr_lines": [], "stdout": " 18:00:12 up 3 days, 7:31, 1 user, load average: 0.21, 0.11, 0.03", "stdout_lines": [" 18:00:12 up 3 days, 7:31, 1 user, load average: 0.21, 0.11, 0.03"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019275", "end": "2025-12-17 18:00:12.867229", "msg": "", "rc": 0, "start": "2025-12-17 18:00:12.847954", "stderr": "", "stderr_lines": [], "stdout": " 18:00:12 up 15 days, 7:26, 1 user, load average: 0.19, 0.12, 0.07", "stdout_lines": [" 18:00:12 up 15 days, 7:26, 1 user, load average: 0.19, 0.12, 0.07"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003303", "end": "2025-12-17 17:59:42.480656", "msg": "", "rc": 0, "start": "2025-12-17 17:59:42.477353", "stderr": "", "stderr_lines": [], "stdout": " 17:59:42 up 20 days, 20:54, 0 user, load average: 0.45, 0.45, 0.42", "stdout_lines": [" 17:59:42 up 20 days, 20:54, 0 user, load average: 0.45, 0.45, 0.42"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002668", "end": "2025-12-17 17:59:49.135512", "msg": "", "rc": 0, "start": "2025-12-17 17:59:49.132844", "stderr": "", "stderr_lines": [], "stdout": " 17:59:49 up 17 days, 7:15, 0 user, load average: 0.95, 0.59, 0.30", "stdout_lines": [" 17:59:49 up 17 days, 7:15, 0 user, load average: 0.95, 0.59, 0.30"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004302", "end": "2025-12-17 15:00:13.367889", "msg": "", "rc": 0, "start": "2025-12-17 15:00:13.363587", "stderr": "", "stderr_lines": [], "stdout": " 3:00PM up 22 days, 4:50, 1 user, load averages: 0.26, 0.20, 0.17", "stdout_lines": [" 3:00PM up 22 days, 4:50, 1 user, load averages: 0.26, 0.20, 0.17"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.005576", "end": "2025-12-17 18:00:13.933249", "msg": "", "rc": 0, "start": "2025-12-17 18:00:13.927673", "stderr": "", "stderr_lines": [], "stdout": " 18:00:13 up 17 min, 1 user, load average: 1.25, 1.18, 0.88", "stdout_lines": [" 18:00:13 up 17 min, 1 user, load average: 1.25, 1.18, 0.88"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003774", "end": "2025-12-17 18:00:13.405385", "msg": "", "rc": 0, "start": "2025-12-17 18:00:13.401611", "stderr": "", "stderr_lines": [], "stdout": " 18:00:13 up 3 days, 7:31, 1 user, load average: 0.15, 0.03, 0.01", "stdout_lines": [" 18:00:13 up 3 days, 7:31, 1 user, load average: 0.15, 0.03, 0.01"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.005784", "end": "2025-12-17 17:59:40.580283", "msg": "", "rc": 0, "start": "2025-12-17 17:59:39.574499", "stderr": "", "stderr_lines": [], "stdout": " 17:59:39 up 18 days, 2:01, 0 user, load average: 0.12, 0.04, 0.01", "stdout_lines": [" 17:59:39 up 18 days, 2:01, 0 user, load average: 0.12, 0.04, 0.01"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004519", "end": "2025-12-17 18:00:14.259610", "msg": "", "rc": 0, "start": "2025-12-17 18:00:14.255091", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004177", "end": "2025-12-17 18:00:14.267747", "msg": "", "rc": 0, "start": "2025-12-17 18:00:14.263570", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004678", "end": "2025-12-17 18:00:14.286818", "msg": "", "rc": 0, "start": "2025-12-17 18:00:14.282140", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004813", "end": "2025-12-17 18:00:14.300893", "msg": "", "rc": 0, "start": "2025-12-17 18:00:14.296080", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.008197", "end": "2025-12-17 18:00:14.330950", "msg": "", "rc": 0, "start": "2025-12-17 18:00:14.322753", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005317", "end": "2025-12-17 17:59:48.141430", "msg": "", "rc": 0, "start": "2025-12-17 17:59:48.136113", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006140", "end": "2025-12-17 17:59:41.658298", "msg": "", "rc": 0, "start": "2025-12-17 17:59:41.652158", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010437", "end": "2025-12-17 18:00:15.061373", "msg": "", "rc": 0, "start": "2025-12-17 18:00:15.050936", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011608", "end": "2025-12-17 18:00:15.061610", "msg": "", "rc": 0, "start": "2025-12-17 18:00:15.050002", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006618", "end": "2025-12-17 18:00:15.289827", "msg": "", "rc": 0, "start": "2025-12-17 18:00:15.283209", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005630", "end": "2025-12-17 17:59:44.875131", "msg": "", "rc": 0, "start": "2025-12-17 17:59:44.869501", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005256", "end": "2025-12-17 15:00:15.504172", "msg": "", "rc": 0, "start": "2025-12-17 15:00:15.498916", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005366", "end": "2025-12-17 17:59:51.533235", "msg": "", "rc": 0, "start": "2025-12-17 17:59:51.527869", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005335", "end": "2025-12-17 18:00:15.708675", "msg": "", "rc": 0, "start": "2025-12-17 18:00:15.703340", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.007510", "end": "2025-12-17 18:00:16.423938", "msg": "", "rc": 0, "start": "2025-12-17 18:00:16.416428", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.024992", "end": "2025-12-17 18:00:15.734235", "msg": "", "rc": 0, "start": "2025-12-17 18:00:15.709243", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004367", "end": "2025-12-17 18:00:16.255205", "msg": "", "rc": 0, "start": "2025-12-17 18:00:16.250838", "stderr": "", "stderr_lines": [], "stdout": "77.7%", "stdout_lines": ["77.7%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004370", "end": "2025-12-17 18:00:16.260929", "msg": "", "rc": 0, "start": "2025-12-17 18:00:16.256559", "stderr": "", "stderr_lines": [], "stdout": "22.5%", "stdout_lines": ["22.5%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004956", "end": "2025-12-17 18:00:16.272442", "msg": "", "rc": 0, "start": "2025-12-17 18:00:16.267486", "stderr": "", "stderr_lines": [], "stdout": "49.2%", "stdout_lines": ["49.2%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005088", "end": "2025-12-17 18:00:16.306032", "msg": "", "rc": 0, "start": "2025-12-17 18:00:16.300944", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005724", "end": "2025-12-17 18:00:16.333965", "msg": "", "rc": 0, "start": "2025-12-17 18:00:16.328241", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003554", "end": "2025-12-17 17:59:50.104011", "msg": "", "rc": 0, "start": "2025-12-17 17:59:50.100457", "stderr": "", "stderr_lines": [], "stdout": "70.8%", "stdout_lines": ["70.8%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004305", "end": "2025-12-17 17:59:43.646151", "msg": "", "rc": 0, "start": "2025-12-17 17:59:43.641846", "stderr": "", "stderr_lines": [], "stdout": "69.6%", "stdout_lines": ["69.6%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010940", "end": "2025-12-17 18:00:16.953575", "msg": "", "rc": 0, "start": "2025-12-17 18:00:16.942635", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011980", "end": "2025-12-17 18:00:17.001287", "msg": "", "rc": 0, "start": "2025-12-17 18:00:16.989307", "stderr": "", "stderr_lines": [], "stdout": "12.8%", "stdout_lines": ["12.8%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005883", "end": "2025-12-17 18:00:17.227956", "msg": "", "rc": 0, "start": "2025-12-17 18:00:17.222073", "stderr": "", "stderr_lines": [], "stdout": "35.4%", "stdout_lines": ["35.4%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005299", "end": "2025-12-17 17:59:46.827259", "msg": "", "rc": 0, "start": "2025-12-17 17:59:46.821960", "stderr": "", "stderr_lines": [], "stdout": "27.2%", "stdout_lines": ["27.2%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003487", "end": "2025-12-17 17:59:53.445071", "msg": "", "rc": 0, "start": "2025-12-17 17:59:53.441584", "stderr": "", "stderr_lines": [], "stdout": "59.6%", "stdout_lines": ["59.6%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005298", "end": "2025-12-17 15:00:17.476100", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 15:00:17.470802", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005791", "end": "2025-12-17 18:00:17.653056", "msg": "", "rc": 0, "start": "2025-12-17 18:00:17.647265", "stderr": "", "stderr_lines": [], "stdout": "14.0%", "stdout_lines": ["14.0%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025500", "end": "2025-12-17 18:00:17.643790", "msg": "", "rc": 0, "start": "2025-12-17 18:00:17.618290", "stderr": "", "stderr_lines": [], "stdout": "19.4%", "stdout_lines": ["19.4%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.007420", "end": "2025-12-17 18:00:18.492423", "msg": "", "rc": 0, "start": "2025-12-17 18:00:18.485003", "stderr": "", "stderr_lines": [], "stdout": "11.8%", "stdout_lines": ["11.8%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005714", "end": "2025-12-17 18:00:18.188573", "msg": "", "rc": 0, "start": "2025-12-17 18:00:18.182859", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004886", "end": "2025-12-17 18:00:18.207930", "msg": "", "rc": 0, "start": "2025-12-17 18:00:18.203044", "stderr": "", "stderr_lines": [], "stdout": "47.0°C", "stdout_lines": ["47.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005595", "end": "2025-12-17 18:00:18.220777", "msg": "", "rc": 0, "start": "2025-12-17 18:00:18.215182", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003045", "end": "2025-12-17 18:00:18.245078", "msg": "", "rc": 0, "start": "2025-12-17 18:00:18.242033", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006744", "end": "2025-12-17 18:00:18.262323", "msg": "", "rc": 0, "start": "2025-12-17 18:00:18.255579", "stderr": "", "stderr_lines": [], "stdout": "52.5°C", "stdout_lines": ["52.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002586", "end": "2025-12-17 17:59:52.060051", "msg": "", "rc": 0, "start": "2025-12-17 17:59:52.057465", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003040", "end": "2025-12-17 17:59:45.556719", "msg": "", "rc": 0, "start": "2025-12-17 17:59:45.553679", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011662", "end": "2025-12-17 18:00:18.926022", "msg": "", "rc": 0, "start": "2025-12-17 18:00:18.914360", "stderr": "", "stderr_lines": [], "stdout": "32.6°C", "stdout_lines": ["32.6°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012904", "end": "2025-12-17 18:00:18.940879", "msg": "", "rc": 0, "start": "2025-12-17 18:00:18.927975", "stderr": "", "stderr_lines": [], "stdout": "36.5°C", "stdout_lines": ["36.5°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003132", "end": "2025-12-17 18:00:19.166267", "msg": "", "rc": 0, "start": "2025-12-17 18:00:19.163135", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003128", "end": "2025-12-17 17:59:48.720776", "msg": "", "rc": 0, "start": "2025-12-17 17:59:48.717648", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003752", "end": "2025-12-17 15:00:19.380337", "msg": "", "rc": 0, "start": "2025-12-17 15:00:19.376585", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002621", "end": "2025-12-17 17:59:55.388218", "msg": "", "rc": 0, "start": "2025-12-17 17:59:55.385597", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002877", "end": "2025-12-17 18:00:19.573347", "msg": "", "rc": 0, "start": "2025-12-17 18:00:19.570470", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004083", "end": "2025-12-17 18:00:20.414284", "msg": "", "rc": 0, "start": "2025-12-17 18:00:20.410201", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.034271", "end": "2025-12-17 18:00:19.785574", "msg": "", "rc": 0, "start": "2025-12-17 18:00:19.751303", "stderr": "", "stderr_lines": [], "stdout": "38.4°C", "stdout_lines": ["38.4°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004303", "end": "2025-12-17 18:00:20.342209", "msg": "", "rc": 0, "start": "2025-12-17 18:00:20.337906", "stderr": "", "stderr_lines": [], "stdout": "0.11", "stdout_lines": ["0.11"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004584", "end": "2025-12-17 18:00:20.360956", "msg": "", "rc": 0, "start": "2025-12-17 18:00:20.356372", "stderr": "", "stderr_lines": [], "stdout": "1.20", "stdout_lines": ["1.20"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004050", "end": "2025-12-17 18:00:20.373998", "msg": "", "rc": 0, "start": "2025-12-17 18:00:20.369948", "stderr": "", "stderr_lines": [], "stdout": "0.22", "stdout_lines": ["0.22"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005177", "end": "2025-12-17 18:00:20.396759", "msg": "", "rc": 0, "start": "2025-12-17 18:00:20.391582", "stderr": "", "stderr_lines": [], "stdout": "0.19", "stdout_lines": ["0.19"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005645", "end": "2025-12-17 18:00:20.413959", "msg": "", "rc": 0, "start": "2025-12-17 18:00:20.408314", "stderr": "", "stderr_lines": [], "stdout": "0.49", "stdout_lines": ["0.49"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004521", "end": "2025-12-17 17:59:54.208353", "msg": "", "rc": 0, "start": "2025-12-17 17:59:54.203832", "stderr": "", "stderr_lines": [], "stdout": "0.13", "stdout_lines": ["0.13"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005206", "end": "2025-12-17 17:59:47.690286", "msg": "", "rc": 0, "start": "2025-12-17 17:59:47.685080", "stderr": "", "stderr_lines": [], "stdout": "0.10", "stdout_lines": ["0.10"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010093", "end": "2025-12-17 18:00:21.144217", "msg": "", "rc": 0, "start": "2025-12-17 18:00:21.134124", "stderr": "", "stderr_lines": [], "stdout": "0.20", "stdout_lines": ["0.20"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011195", "end": "2025-12-17 18:00:21.150863", "msg": "", "rc": 0, "start": "2025-12-17 18:00:21.139668", "stderr": "", "stderr_lines": [], "stdout": "0.26", "stdout_lines": ["0.26"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005961", "end": "2025-12-17 18:00:21.338031", "msg": "", "rc": 0, "start": "2025-12-17 18:00:21.332070", "stderr": "", "stderr_lines": [], "stdout": "0.19", "stdout_lines": ["0.19"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004893", "end": "2025-12-17 17:59:50.855813", "msg": "", "rc": 0, "start": "2025-12-17 17:59:50.850920", "stderr": "", "stderr_lines": [], "stdout": "0.45", "stdout_lines": ["0.45"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005670", "end": "2025-12-17 15:00:21.607466", "msg": "", "rc": 0, "start": "2025-12-17 15:00:21.601796", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004299", "end": "2025-12-17 17:59:57.613612", "msg": "", "rc": 0, "start": "2025-12-17 17:59:57.609313", "stderr": "", "stderr_lines": [], "stdout": "0.81", "stdout_lines": ["0.81"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006717", "end": "2025-12-17 18:00:22.614824", "msg": "", "rc": 0, "start": "2025-12-17 18:00:22.608107", "stderr": "", "stderr_lines": [], "stdout": "1.45", "stdout_lines": ["1.45"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005331", "end": "2025-12-17 18:00:21.761371", "msg": "", "rc": 0, "start": "2025-12-17 18:00:21.756040", "stderr": "", "stderr_lines": [], "stdout": "0.13", "stdout_lines": ["0.13"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024265", "end": "2025-12-17 18:00:21.892329", "msg": "", "rc": 0, "start": "2025-12-17 18:00:21.868064", "stderr": "", "stderr_lines": [], "stdout": "0.31", "stdout_lines": ["0.31"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:00:11 up 3 days, 7:32, 1 user, load average: 0.16, 0.19, 0.19\nDisk Usage: 22%\nMemory Usage: 22.5%\nCPU Load: 0.22\nCPU Temp: 47.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:00:11 up 22 days, 4:51, 1 user, load average: 0.13, 0.10, 0.09\nDisk Usage: 23%\nMemory Usage: 77.7%\nCPU Load: 0.11\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:00:11 up 22 days, 5:11, 1 user, load average: 1.33, 1.16, 0.84\nDisk Usage: 14%\nMemory Usage: 49.2%\nCPU Load: 1.20\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:00:11 up 22 days, 6:24, 1 user, load average: 0.48, 0.59, 0.61\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.49\nCPU Temp: 52.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:00:11 up 22 days, 7:10, 1 user, load average: 0.12, 0.07, 0.05\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.19\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:00:12 up 15 days, 7:26, 1 user, load average: 0.19, 0.12, 0.07\nDisk Usage: 21%\nMemory Usage: 19.4%\nCPU Load: 0.31\nCPU Temp: 38.4°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:00:12 up 194 days, 9:33, 1 user, load average: 0.21, 0.17, 0.18\nDisk Usage: 6%\nMemory Usage: 12.8%\nCPU Load: 0.26\nCPU Temp: 36.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:00:12 up 194 days, 9:33, 1 user, load average: 0.04, 0.11, 0.09\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.20\nCPU Temp: 32.6°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:59:46 up 11 days, 5:49, 0 user, load average: 0.16, 0.13, 0.10\nDisk Usage: 48%\nMemory Usage: 70.8%\nCPU Load: 0.13\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:59:39 up 18 days, 2:01, 0 user, load average: 0.12, 0.04, 0.01\nDisk Usage: 25%\nMemory Usage: 69.6%\nCPU Load: 0.10\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:00:12 up 3 days, 7:31, 1 user, load average: 0.21, 0.11, 0.03\nDisk Usage: 1%\nMemory Usage: 35.4%\nCPU Load: 0.19\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:59:42 up 20 days, 20:54, 0 user, load average: 0.45, 0.45, 0.42\nDisk Usage: 28%\nMemory Usage: 27.2%\nCPU Load: 0.45\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 17:59:49 up 17 days, 7:15, 0 user, load average: 0.95, 0.59, 0.30\nDisk Usage: 76%\nMemory Usage: 59.6%\nCPU Load: 0.81\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 3:00PM up 22 days, 4:50, 1 user, load averages: 0.26, 0.20, 0.17\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:00:13 up 3 days, 7:31, 1 user, load average: 0.15, 0.03, 0.01\nDisk Usage: 79%\nMemory Usage: 14.0%\nCPU Load: 0.13\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:00:13 up 17 min, 1 user, load average: 1.25, 1.18, 0.88\nDisk Usage: 1%\nMemory Usage: 11.8%\nCPU Load: 1.45\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T23:00:23.761655+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_230521_f49a00_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_230521_f49a00_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..ad92c9a --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_230521_f49a00_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `875befd914454764bc6c90b3d3c2ee44` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T23:05:00.001758+00:00 | +| **Fin** | 2025-12-17T23:05:21.501788+00:00 | +| **Durée** | 21.5s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003992", "end": "2025-12-17 18:05:10.825600", "msg": "", "rc": 0, "start": "2025-12-17 18:05:10.821608", "stderr": "", "stderr_lines": [], "stdout": " 18:05:10 up 22 days, 7:15, 1 user, load average: 0.15, 0.10, 0.06", "stdout_lines": [" 18:05:10 up 22 days, 7:15, 1 user, load average: 0.15, 0.10, 0.06"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003623", "end": "2025-12-17 18:05:10.827757", "msg": "", "rc": 0, "start": "2025-12-17 18:05:10.824134", "stderr": "", "stderr_lines": [], "stdout": " 18:05:10 up 22 days, 5:16, 1 user, load average: 1.28, 1.34, 1.01", "stdout_lines": [" 18:05:10 up 22 days, 5:16, 1 user, load average: 1.28, 1.34, 1.01"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003776", "end": "2025-12-17 18:05:10.847425", "msg": "", "rc": 0, "start": "2025-12-17 18:05:10.843649", "stderr": "", "stderr_lines": [], "stdout": " 18:05:10 up 22 days, 6:29, 1 user, load average: 0.42, 0.56, 0.61", "stdout_lines": [" 18:05:10 up 22 days, 6:29, 1 user, load average: 0.42, 0.56, 0.61"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002989", "end": "2025-12-17 18:05:10.861371", "msg": "", "rc": 0, "start": "2025-12-17 18:05:10.858382", "stderr": "", "stderr_lines": [], "stdout": " 18:05:10 up 3 days, 7:37, 1 user, load average: 0.34, 0.30, 0.24", "stdout_lines": [" 18:05:10 up 3 days, 7:37, 1 user, load average: 0.34, 0.30, 0.24"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003103", "end": "2025-12-17 18:04:44.682608", "msg": "", "rc": 0, "start": "2025-12-17 18:04:44.679505", "stderr": "", "stderr_lines": [], "stdout": " 18:04:44 up 11 days, 5:54, 0 user, load average: 0.10, 0.27, 0.19", "stdout_lines": [" 18:04:44 up 11 days, 5:54, 0 user, load average: 0.10, 0.27, 0.19"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008595", "end": "2025-12-17 18:05:11.499786", "msg": "", "rc": 0, "start": "2025-12-17 18:05:11.491191", "stderr": "", "stderr_lines": [], "stdout": " 18:05:11 up 194 days, 9:38, 1 user, load average: 0.13, 0.12, 0.09", "stdout_lines": [" 18:05:11 up 194 days, 9:38, 1 user, load average: 0.13, 0.12, 0.09"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009253", "end": "2025-12-17 18:05:11.537389", "msg": "", "rc": 0, "start": "2025-12-17 18:05:11.528136", "stderr": "", "stderr_lines": [], "stdout": " 18:05:11 up 194 days, 9:38, 1 user, load average: 0.09, 0.15, 0.17", "stdout_lines": [" 18:05:11 up 194 days, 9:38, 1 user, load average: 0.09, 0.15, 0.17"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004190", "end": "2025-12-17 18:05:11.815069", "msg": "", "rc": 0, "start": "2025-12-17 18:05:10.810879", "stderr": "", "stderr_lines": [], "stdout": " 18:05:10 up 22 days, 4:56, 1 user, load average: 0.17, 0.10, 0.09", "stdout_lines": [" 18:05:10 up 22 days, 4:56, 1 user, load average: 0.17, 0.10, 0.09"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003823", "end": "2025-12-17 18:04:38.637913", "msg": "", "rc": 0, "start": "2025-12-17 18:04:38.634090", "stderr": "", "stderr_lines": [], "stdout": " 18:04:38 up 18 days, 2:06, 0 user, load average: 0.05, 0.03, 0.00", "stdout_lines": [" 18:04:38 up 18 days, 2:06, 0 user, load average: 0.05, 0.03, 0.00"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004773", "end": "2025-12-17 18:05:12.008948", "msg": "", "rc": 0, "start": "2025-12-17 18:05:12.004175", "stderr": "", "stderr_lines": [], "stdout": " 18:05:12 up 3 days, 7:36, 1 user, load average: 0.17, 0.10, 0.04", "stdout_lines": [" 18:05:12 up 3 days, 7:36, 1 user, load average: 0.17, 0.10, 0.04"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003288", "end": "2025-12-17 18:04:41.543078", "msg": "", "rc": 0, "start": "2025-12-17 18:04:41.539790", "stderr": "", "stderr_lines": [], "stdout": " 18:04:41 up 20 days, 20:58, 0 user, load average: 0.53, 0.49, 0.45", "stdout_lines": [" 18:04:41 up 20 days, 20:58, 0 user, load average: 0.53, 0.49, 0.45"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003147", "end": "2025-12-17 18:04:48.235880", "msg": "", "rc": 0, "start": "2025-12-17 18:04:48.232733", "stderr": "", "stderr_lines": [], "stdout": " 18:04:48 up 17 days, 7:20, 0 user, load average: 0.52, 0.50, 0.33", "stdout_lines": [" 18:04:48 up 17 days, 7:20, 0 user, load average: 0.52, 0.50, 0.33"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004156", "end": "2025-12-17 15:05:12.311288", "msg": "", "rc": 0, "start": "2025-12-17 15:05:12.307132", "stderr": "", "stderr_lines": [], "stdout": " 3:05PM up 22 days, 4:54, 1 user, load averages: 0.42, 0.25, 0.19", "stdout_lines": [" 3:05PM up 22 days, 4:54, 1 user, load averages: 0.42, 0.25, 0.19"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019542", "end": "2025-12-17 18:05:12.206230", "msg": "", "rc": 0, "start": "2025-12-17 18:05:12.186688", "stderr": "", "stderr_lines": [], "stdout": " 18:05:12 up 15 days, 7:31, 1 user, load average: 0.09, 0.09, 0.08", "stdout_lines": [" 18:05:12 up 15 days, 7:31, 1 user, load average: 0.09, 0.09, 0.08"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003718", "end": "2025-12-17 18:05:12.428115", "msg": "", "rc": 0, "start": "2025-12-17 18:05:12.424397", "stderr": "", "stderr_lines": [], "stdout": " 18:05:12 up 3 days, 7:36, 1 user, load average: 0.00, 0.03, 0.00", "stdout_lines": [" 18:05:12 up 3 days, 7:36, 1 user, load average: 0.00, 0.03, 0.00"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.005221", "end": "2025-12-17 18:05:12.569827", "msg": "", "rc": 0, "start": "2025-12-17 18:05:12.564606", "stderr": "", "stderr_lines": [], "stdout": " 18:05:12 up 23 min, 1 user, load average: 1.22, 1.17, 0.97", "stdout_lines": [" 18:05:12 up 23 min, 1 user, load average: 1.22, 1.17, 0.97"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004307", "end": "2025-12-17 18:05:12.864315", "msg": "", "rc": 0, "start": "2025-12-17 18:05:12.860008", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004028", "end": "2025-12-17 18:05:12.876279", "msg": "", "rc": 0, "start": "2025-12-17 18:05:12.872251", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004493", "end": "2025-12-17 18:05:12.894296", "msg": "", "rc": 0, "start": "2025-12-17 18:05:12.889803", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004712", "end": "2025-12-17 18:05:12.921142", "msg": "", "rc": 0, "start": "2025-12-17 18:05:12.916430", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005504", "end": "2025-12-17 18:05:12.931183", "msg": "", "rc": 0, "start": "2025-12-17 18:05:12.925679", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005360", "end": "2025-12-17 18:04:46.745077", "msg": "", "rc": 0, "start": "2025-12-17 18:04:46.739717", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005575", "end": "2025-12-17 18:04:40.222803", "msg": "", "rc": 0, "start": "2025-12-17 18:04:40.217228", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010542", "end": "2025-12-17 18:05:13.582699", "msg": "", "rc": 0, "start": "2025-12-17 18:05:13.572157", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011572", "end": "2025-12-17 18:05:13.622906", "msg": "", "rc": 0, "start": "2025-12-17 18:05:13.611334", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005738", "end": "2025-12-17 18:05:13.854107", "msg": "", "rc": 0, "start": "2025-12-17 18:05:13.848369", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005864", "end": "2025-12-17 18:04:43.381000", "msg": "", "rc": 0, "start": "2025-12-17 18:04:43.375136", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004914", "end": "2025-12-17 18:04:50.053062", "msg": "", "rc": 0, "start": "2025-12-17 18:04:50.048148", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005388", "end": "2025-12-17 15:05:14.076569", "msg": "", "rc": 0, "start": "2025-12-17 15:05:14.071181", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.007237", "end": "2025-12-17 18:05:14.443350", "msg": "", "rc": 0, "start": "2025-12-17 18:05:14.436113", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005495", "end": "2025-12-17 18:05:14.285281", "msg": "", "rc": 0, "start": "2025-12-17 18:05:14.279786", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025376", "end": "2025-12-17 18:05:14.239471", "msg": "", "rc": 0, "start": "2025-12-17 18:05:14.214095", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004460", "end": "2025-12-17 18:05:14.773144", "msg": "", "rc": 0, "start": "2025-12-17 18:05:14.768684", "stderr": "", "stderr_lines": [], "stdout": "77.7%", "stdout_lines": ["77.7%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004114", "end": "2025-12-17 18:05:14.776814", "msg": "", "rc": 0, "start": "2025-12-17 18:05:14.772700", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004716", "end": "2025-12-17 18:05:14.786109", "msg": "", "rc": 0, "start": "2025-12-17 18:05:14.781393", "stderr": "", "stderr_lines": [], "stdout": "49.3%", "stdout_lines": ["49.3%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004787", "end": "2025-12-17 18:05:14.819212", "msg": "", "rc": 0, "start": "2025-12-17 18:05:14.814425", "stderr": "", "stderr_lines": [], "stdout": "9.1%", "stdout_lines": ["9.1%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.007647", "end": "2025-12-17 18:05:14.840114", "msg": "", "rc": 0, "start": "2025-12-17 18:05:14.832467", "stderr": "", "stderr_lines": [], "stdout": "59.9%", "stdout_lines": ["59.9%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004632", "end": "2025-12-17 18:04:48.626726", "msg": "", "rc": 0, "start": "2025-12-17 18:04:48.622094", "stderr": "", "stderr_lines": [], "stdout": "70.8%", "stdout_lines": ["70.8%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005950", "end": "2025-12-17 18:04:42.154370", "msg": "", "rc": 0, "start": "2025-12-17 18:04:42.148420", "stderr": "", "stderr_lines": [], "stdout": "69.1%", "stdout_lines": ["69.1%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010876", "end": "2025-12-17 18:05:15.463472", "msg": "", "rc": 0, "start": "2025-12-17 18:05:15.452596", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011861", "end": "2025-12-17 18:05:15.519238", "msg": "", "rc": 0, "start": "2025-12-17 18:05:15.507377", "stderr": "", "stderr_lines": [], "stdout": "13.1%", "stdout_lines": ["13.1%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005932", "end": "2025-12-17 18:05:15.743507", "msg": "", "rc": 0, "start": "2025-12-17 18:05:15.737575", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004526", "end": "2025-12-17 18:04:45.358522", "msg": "", "rc": 0, "start": "2025-12-17 18:04:45.353996", "stderr": "", "stderr_lines": [], "stdout": "26.6%", "stdout_lines": ["26.6%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003781", "end": "2025-12-17 18:04:51.942054", "msg": "", "rc": 0, "start": "2025-12-17 18:04:51.938273", "stderr": "", "stderr_lines": [], "stdout": "60.3%", "stdout_lines": ["60.3%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005150", "end": "2025-12-17 15:05:15.988982", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 15:05:15.983832", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005486", "end": "2025-12-17 18:05:16.157966", "msg": "", "rc": 0, "start": "2025-12-17 18:05:16.152480", "stderr": "", "stderr_lines": [], "stdout": "13.9%", "stdout_lines": ["13.9%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.007431", "end": "2025-12-17 18:05:16.479188", "msg": "", "rc": 0, "start": "2025-12-17 18:05:16.471757", "stderr": "", "stderr_lines": [], "stdout": "11.8%", "stdout_lines": ["11.8%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025843", "end": "2025-12-17 18:05:16.163541", "msg": "", "rc": 0, "start": "2025-12-17 18:05:16.137698", "stderr": "", "stderr_lines": [], "stdout": "19.7%", "stdout_lines": ["19.7%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005432", "end": "2025-12-17 18:05:16.685705", "msg": "", "rc": 0, "start": "2025-12-17 18:05:16.680273", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004765", "end": "2025-12-17 18:05:16.704154", "msg": "", "rc": 0, "start": "2025-12-17 18:05:16.699389", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005897", "end": "2025-12-17 18:05:16.724879", "msg": "", "rc": 0, "start": "2025-12-17 18:05:16.718982", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003361", "end": "2025-12-17 18:05:16.738021", "msg": "", "rc": 0, "start": "2025-12-17 18:05:16.734660", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006677", "end": "2025-12-17 18:05:16.758317", "msg": "", "rc": 0, "start": "2025-12-17 18:05:16.751640", "stderr": "", "stderr_lines": [], "stdout": "52.5°C", "stdout_lines": ["52.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002440", "end": "2025-12-17 18:04:50.560305", "msg": "", "rc": 0, "start": "2025-12-17 18:04:50.557865", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003132", "end": "2025-12-17 18:04:44.079266", "msg": "", "rc": 0, "start": "2025-12-17 18:04:44.076134", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011751", "end": "2025-12-17 18:05:17.384353", "msg": "", "rc": 0, "start": "2025-12-17 18:05:17.372602", "stderr": "", "stderr_lines": [], "stdout": "32.6°C", "stdout_lines": ["32.6°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013238", "end": "2025-12-17 18:05:17.402229", "msg": "", "rc": 0, "start": "2025-12-17 18:05:17.388991", "stderr": "", "stderr_lines": [], "stdout": "36.0°C", "stdout_lines": ["36.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003103", "end": "2025-12-17 18:05:17.670028", "msg": "", "rc": 0, "start": "2025-12-17 18:05:17.666925", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003759", "end": "2025-12-17 15:05:17.846161", "msg": "", "rc": 0, "start": "2025-12-17 15:05:17.842402", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003052", "end": "2025-12-17 18:04:47.267293", "msg": "", "rc": 0, "start": "2025-12-17 18:04:47.264241", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003008", "end": "2025-12-17 18:04:53.864324", "msg": "", "rc": 0, "start": "2025-12-17 18:04:53.861316", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003088", "end": "2025-12-17 18:05:18.078860", "msg": "", "rc": 0, "start": "2025-12-17 18:05:18.075772", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028658", "end": "2025-12-17 18:05:18.066547", "msg": "", "rc": 0, "start": "2025-12-17 18:05:18.037889", "stderr": "", "stderr_lines": [], "stdout": "35.4°C", "stdout_lines": ["35.4°C"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004150", "end": "2025-12-17 18:05:18.481606", "msg": "", "rc": 0, "start": "2025-12-17 18:05:18.477456", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004197", "end": "2025-12-17 18:05:18.586990", "msg": "", "rc": 0, "start": "2025-12-17 18:05:18.582793", "stderr": "", "stderr_lines": [], "stdout": "0.23", "stdout_lines": ["0.23"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004018", "end": "2025-12-17 18:05:18.606777", "msg": "", "rc": 0, "start": "2025-12-17 18:05:18.602759", "stderr": "", "stderr_lines": [], "stdout": "0.36", "stdout_lines": ["0.36"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005028", "end": "2025-12-17 18:05:18.639192", "msg": "", "rc": 0, "start": "2025-12-17 18:05:18.634164", "stderr": "", "stderr_lines": [], "stdout": "1.47", "stdout_lines": ["1.47"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005591", "end": "2025-12-17 18:05:18.645629", "msg": "", "rc": 0, "start": "2025-12-17 18:05:18.640038", "stderr": "", "stderr_lines": [], "stdout": "0.13", "stdout_lines": ["0.13"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005553", "end": "2025-12-17 18:05:18.662195", "msg": "", "rc": 0, "start": "2025-12-17 18:05:18.656642", "stderr": "", "stderr_lines": [], "stdout": "0.66", "stdout_lines": ["0.66"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004292", "end": "2025-12-17 18:04:52.490267", "msg": "", "rc": 0, "start": "2025-12-17 18:04:52.485975", "stderr": "", "stderr_lines": [], "stdout": "0.09", "stdout_lines": ["0.09"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005164", "end": "2025-12-17 18:04:45.967235", "msg": "", "rc": 0, "start": "2025-12-17 18:04:45.962071", "stderr": "", "stderr_lines": [], "stdout": "0.04", "stdout_lines": ["0.04"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010220", "end": "2025-12-17 18:05:19.344931", "msg": "", "rc": 0, "start": "2025-12-17 18:05:19.334711", "stderr": "", "stderr_lines": [], "stdout": "0.12", "stdout_lines": ["0.12"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011162", "end": "2025-12-17 18:05:19.371747", "msg": "", "rc": 0, "start": "2025-12-17 18:05:19.360585", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005596", "end": "2025-12-17 18:05:19.597563", "msg": "", "rc": 0, "start": "2025-12-17 18:05:19.591967", "stderr": "", "stderr_lines": [], "stdout": "0.23", "stdout_lines": ["0.23"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005293", "end": "2025-12-17 18:04:49.132078", "msg": "", "rc": 0, "start": "2025-12-17 18:04:49.126785", "stderr": "", "stderr_lines": [], "stdout": "0.60", "stdout_lines": ["0.60"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005997", "end": "2025-12-17 15:05:19.827325", "msg": "", "rc": 0, "start": "2025-12-17 15:05:19.821328", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005059", "end": "2025-12-17 18:04:55.824670", "msg": "", "rc": 0, "start": "2025-12-17 18:04:55.819611", "stderr": "", "stderr_lines": [], "stdout": "0.44", "stdout_lines": ["0.44"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005220", "end": "2025-12-17 18:05:20.042893", "msg": "", "rc": 0, "start": "2025-12-17 18:05:20.037673", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.007295", "end": "2025-12-17 18:05:20.401807", "msg": "", "rc": 0, "start": "2025-12-17 18:05:20.394512", "stderr": "", "stderr_lines": [], "stdout": "1.36", "stdout_lines": ["1.36"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.025113", "end": "2025-12-17 18:05:20.177623", "msg": "", "rc": 0, "start": "2025-12-17 18:05:20.152510", "stderr": "", "stderr_lines": [], "stdout": "0.17", "stdout_lines": ["0.17"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:05:10 up 3 days, 7:37, 1 user, load average: 0.34, 0.30, 0.24\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.36\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:05:10 up 22 days, 4:56, 1 user, load average: 0.17, 0.10, 0.09\nDisk Usage: 23%\nMemory Usage: 77.7%\nCPU Load: 0.23\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:05:10 up 22 days, 5:16, 1 user, load average: 1.28, 1.34, 1.01\nDisk Usage: 14%\nMemory Usage: 49.3%\nCPU Load: 1.47\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:05:10 up 22 days, 6:29, 1 user, load average: 0.42, 0.56, 0.61\nDisk Usage: 14%\nMemory Usage: 59.9%\nCPU Load: 0.66\nCPU Temp: 52.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:05:10 up 22 days, 7:15, 1 user, load average: 0.15, 0.10, 0.06\nDisk Usage: 9%\nMemory Usage: 9.1%\nCPU Load: 0.13\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:05:12 up 15 days, 7:31, 1 user, load average: 0.09, 0.09, 0.08\nDisk Usage: 21%\nMemory Usage: 19.7%\nCPU Load: 0.17\nCPU Temp: 35.4°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:05:11 up 194 days, 9:38, 1 user, load average: 0.09, 0.15, 0.17\nDisk Usage: 6%\nMemory Usage: 13.1%\nCPU Load: 0.08\nCPU Temp: 36.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:05:11 up 194 days, 9:38, 1 user, load average: 0.13, 0.12, 0.09\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.12\nCPU Temp: 32.6°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:04:44 up 11 days, 5:54, 0 user, load average: 0.10, 0.27, 0.19\nDisk Usage: 48%\nMemory Usage: 70.8%\nCPU Load: 0.09\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:04:38 up 18 days, 2:06, 0 user, load average: 0.05, 0.03, 0.00\nDisk Usage: 25%\nMemory Usage: 69.1%\nCPU Load: 0.04\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:05:12 up 3 days, 7:36, 1 user, load average: 0.17, 0.10, 0.04\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.23\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:04:41 up 20 days, 20:58, 0 user, load average: 0.53, 0.49, 0.45\nDisk Usage: 28%\nMemory Usage: 26.6%\nCPU Load: 0.60\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:04:48 up 17 days, 7:20, 0 user, load average: 0.52, 0.50, 0.33\nDisk Usage: 76%\nMemory Usage: 60.3%\nCPU Load: 0.44\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 3:05PM up 22 days, 4:54, 1 user, load averages: 0.42, 0.25, 0.19\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:05:12 up 3 days, 7:36, 1 user, load average: 0.00, 0.03, 0.00\nDisk Usage: 79%\nMemory Usage: 13.9%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:05:12 up 23 min, 1 user, load average: 1.22, 1.17, 0.97\nDisk Usage: 1%\nMemory Usage: 11.8%\nCPU Load: 1.36\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T23:05:21.540036+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_231023_8278a8_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_231023_8278a8_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..a4a53a3 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_231023_8278a8_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `bd782738325d4841a675db2536f91e68` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T23:10:00.002736+00:00 | +| **Fin** | 2025-12-17T23:10:23.560849+00:00 | +| **Durée** | 23.6s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003576", "end": "2025-12-17 18:10:11.976740", "msg": "", "rc": 0, "start": "2025-12-17 18:10:11.973164", "stderr": "", "stderr_lines": [], "stdout": " 18:10:11 up 22 days, 5:01, 1 user, load average: 0.06, 0.09, 0.09", "stdout_lines": [" 18:10:11 up 22 days, 5:01, 1 user, load average: 0.06, 0.09, 0.09"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003263", "end": "2025-12-17 18:10:12.003590", "msg": "", "rc": 0, "start": "2025-12-17 18:10:12.000327", "stderr": "", "stderr_lines": [], "stdout": " 18:10:12 up 22 days, 5:21, 1 user, load average: 0.74, 1.07, 0.98", "stdout_lines": [" 18:10:12 up 22 days, 5:21, 1 user, load average: 0.74, 1.07, 0.98"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004158", "end": "2025-12-17 18:10:12.006622", "msg": "", "rc": 0, "start": "2025-12-17 18:10:12.002464", "stderr": "", "stderr_lines": [], "stdout": " 18:10:12 up 22 days, 6:34, 1 user, load average: 0.80, 0.60, 0.60", "stdout_lines": [" 18:10:12 up 22 days, 6:34, 1 user, load average: 0.80, 0.60, 0.60"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003033", "end": "2025-12-17 18:10:12.017281", "msg": "", "rc": 0, "start": "2025-12-17 18:10:12.014248", "stderr": "", "stderr_lines": [], "stdout": " 18:10:12 up 3 days, 7:42, 1 user, load average: 0.12, 0.24, 0.23", "stdout_lines": [" 18:10:12 up 3 days, 7:42, 1 user, load average: 0.12, 0.24, 0.23"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002951", "end": "2025-12-17 18:09:45.846829", "msg": "", "rc": 0, "start": "2025-12-17 18:09:45.843878", "stderr": "", "stderr_lines": [], "stdout": " 18:09:45 up 11 days, 5:59, 0 user, load average: 0.71, 0.41, 0.26", "stdout_lines": [" 18:09:45 up 11 days, 5:59, 0 user, load average: 0.71, 0.41, 0.26"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008640", "end": "2025-12-17 18:10:12.667586", "msg": "", "rc": 0, "start": "2025-12-17 18:10:12.658946", "stderr": "", "stderr_lines": [], "stdout": " 18:10:12 up 194 days, 9:43, 1 user, load average: 0.13, 0.14, 0.10", "stdout_lines": [" 18:10:12 up 194 days, 9:43, 1 user, load average: 0.13, 0.14, 0.10"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009352", "end": "2025-12-17 18:10:12.722038", "msg": "", "rc": 0, "start": "2025-12-17 18:10:12.712686", "stderr": "", "stderr_lines": [], "stdout": " 18:10:12 up 194 days, 9:43, 1 user, load average: 0.19, 0.18, 0.18", "stdout_lines": [" 18:10:12 up 194 days, 9:43, 1 user, load average: 0.19, 0.18, 0.18"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.005925", "end": "2025-12-17 18:10:12.990414", "msg": "", "rc": 0, "start": "2025-12-17 18:10:11.984489", "stderr": "", "stderr_lines": [], "stdout": " 18:10:11 up 22 days, 7:20, 1 user, load average: 0.13, 0.15, 0.09", "stdout_lines": [" 18:10:11 up 22 days, 7:20, 1 user, load average: 0.13, 0.15, 0.09"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003508", "end": "2025-12-17 18:09:39.777942", "msg": "", "rc": 0, "start": "2025-12-17 18:09:39.774434", "stderr": "", "stderr_lines": [], "stdout": " 18:09:39 up 18 days, 2:11, 0 user, load average: 0.16, 0.04, 0.01", "stdout_lines": [" 18:09:39 up 18 days, 2:11, 0 user, load average: 0.16, 0.04, 0.01"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004747", "end": "2025-12-17 18:10:13.171764", "msg": "", "rc": 0, "start": "2025-12-17 18:10:13.167017", "stderr": "", "stderr_lines": [], "stdout": " 18:10:13 up 3 days, 7:41, 1 user, load average: 0.00, 0.04, 0.01", "stdout_lines": [" 18:10:13 up 3 days, 7:41, 1 user, load average: 0.00, 0.04, 0.01"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003383", "end": "2025-12-17 18:09:42.679657", "msg": "", "rc": 0, "start": "2025-12-17 18:09:42.676274", "stderr": "", "stderr_lines": [], "stdout": " 18:09:42 up 20 days, 21:04, 0 user, load average: 0.39, 0.46, 0.45", "stdout_lines": [" 18:09:42 up 20 days, 21:04, 0 user, load average: 0.39, 0.46, 0.45"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004067", "end": "2025-12-17 15:10:13.437513", "msg": "", "rc": 0, "start": "2025-12-17 15:10:13.433446", "stderr": "", "stderr_lines": [], "stdout": " 3:10PM up 22 days, 5 hrs, 1 user, load averages: 0.43, 0.32, 0.22", "stdout_lines": [" 3:10PM up 22 days, 5 hrs, 1 user, load averages: 0.43, 0.32, 0.22"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003054", "end": "2025-12-17 18:09:49.414269", "msg": "", "rc": 0, "start": "2025-12-17 18:09:49.411215", "stderr": "", "stderr_lines": [], "stdout": " 18:09:49 up 17 days, 7:25, 0 user, load average: 0.86, 0.63, 0.41", "stdout_lines": [" 18:09:49 up 17 days, 7:25, 0 user, load average: 0.86, 0.63, 0.41"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019419", "end": "2025-12-17 18:10:13.362766", "msg": "", "rc": 0, "start": "2025-12-17 18:10:13.343347", "stderr": "", "stderr_lines": [], "stdout": " 18:10:13 up 15 days, 7:36, 1 user, load average: 0.16, 0.08, 0.08", "stdout_lines": [" 18:10:13 up 15 days, 7:36, 1 user, load average: 0.16, 0.08, 0.08"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003681", "end": "2025-12-17 18:10:13.580218", "msg": "", "rc": 0, "start": "2025-12-17 18:10:13.576537", "stderr": "", "stderr_lines": [], "stdout": " 18:10:13 up 3 days, 7:41, 1 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 18:10:13 up 3 days, 7:41, 1 user, load average: 0.00, 0.00, 0.00"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.007652", "end": "2025-12-17 18:10:14.379081", "msg": "", "rc": 0, "start": "2025-12-17 18:10:14.371429", "stderr": "", "stderr_lines": [], "stdout": " 18:10:14 up 28 min, 1 user, load average: 1.12, 1.12, 1.01", "stdout_lines": [" 18:10:14 up 28 min, 1 user, load average: 1.12, 1.12, 1.01"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004407", "end": "2025-12-17 18:10:13.996289", "msg": "", "rc": 0, "start": "2025-12-17 18:10:13.991882", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004102", "end": "2025-12-17 18:10:14.020198", "msg": "", "rc": 0, "start": "2025-12-17 18:10:14.016096", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004704", "end": "2025-12-17 18:10:14.041874", "msg": "", "rc": 0, "start": "2025-12-17 18:10:14.037170", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004344", "end": "2025-12-17 18:10:14.043505", "msg": "", "rc": 0, "start": "2025-12-17 18:10:14.039161", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005433", "end": "2025-12-17 18:10:14.061987", "msg": "", "rc": 0, "start": "2025-12-17 18:10:14.056554", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005050", "end": "2025-12-17 18:09:47.850875", "msg": "", "rc": 0, "start": "2025-12-17 18:09:47.845825", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005689", "end": "2025-12-17 18:09:41.345697", "msg": "", "rc": 0, "start": "2025-12-17 18:09:41.340008", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010559", "end": "2025-12-17 18:10:14.732806", "msg": "", "rc": 0, "start": "2025-12-17 18:10:14.722247", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011539", "end": "2025-12-17 18:10:14.761685", "msg": "", "rc": 0, "start": "2025-12-17 18:10:14.750146", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005668", "end": "2025-12-17 18:10:14.965059", "msg": "", "rc": 0, "start": "2025-12-17 18:10:14.959391", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005012", "end": "2025-12-17 18:09:44.515552", "msg": "", "rc": 0, "start": "2025-12-17 18:09:44.510540", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005498", "end": "2025-12-17 15:10:15.206055", "msg": "", "rc": 0, "start": "2025-12-17 15:10:15.200557", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005323", "end": "2025-12-17 18:09:51.243293", "msg": "", "rc": 0, "start": "2025-12-17 18:09:51.237970", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005436", "end": "2025-12-17 18:10:15.383707", "msg": "", "rc": 0, "start": "2025-12-17 18:10:15.378271", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.017606", "end": "2025-12-17 18:10:16.298188", "msg": "", "rc": 0, "start": "2025-12-17 18:10:16.280582", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025671", "end": "2025-12-17 18:10:15.380045", "msg": "", "rc": 0, "start": "2025-12-17 18:10:15.354374", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004330", "end": "2025-12-17 18:10:15.904992", "msg": "", "rc": 0, "start": "2025-12-17 18:10:15.900662", "stderr": "", "stderr_lines": [], "stdout": "77.6%", "stdout_lines": ["77.6%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004121", "end": "2025-12-17 18:10:15.920768", "msg": "", "rc": 0, "start": "2025-12-17 18:10:15.916647", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004785", "end": "2025-12-17 18:10:15.929953", "msg": "", "rc": 0, "start": "2025-12-17 18:10:15.925168", "stderr": "", "stderr_lines": [], "stdout": "49.3%", "stdout_lines": ["49.3%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004948", "end": "2025-12-17 18:10:15.960834", "msg": "", "rc": 0, "start": "2025-12-17 18:10:15.955886", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006439", "end": "2025-12-17 18:10:15.985420", "msg": "", "rc": 0, "start": "2025-12-17 18:10:15.978981", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003709", "end": "2025-12-17 18:09:49.765832", "msg": "", "rc": 0, "start": "2025-12-17 18:09:49.762123", "stderr": "", "stderr_lines": [], "stdout": "70.5%", "stdout_lines": ["70.5%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005080", "end": "2025-12-17 18:09:43.294287", "msg": "", "rc": 0, "start": "2025-12-17 18:09:43.289207", "stderr": "", "stderr_lines": [], "stdout": "69.1%", "stdout_lines": ["69.1%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010888", "end": "2025-12-17 18:10:16.583341", "msg": "", "rc": 0, "start": "2025-12-17 18:10:16.572453", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011910", "end": "2025-12-17 18:10:16.616732", "msg": "", "rc": 0, "start": "2025-12-17 18:10:16.604822", "stderr": "", "stderr_lines": [], "stdout": "12.6%", "stdout_lines": ["12.6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005874", "end": "2025-12-17 18:10:16.869066", "msg": "", "rc": 0, "start": "2025-12-17 18:10:16.863192", "stderr": "", "stderr_lines": [], "stdout": "35.6%", "stdout_lines": ["35.6%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004995", "end": "2025-12-17 15:10:17.061458", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 15:10:17.056463", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003493", "end": "2025-12-17 18:09:53.076835", "msg": "", "rc": 0, "start": "2025-12-17 18:09:53.073342", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006271", "end": "2025-12-17 18:09:46.488286", "msg": "", "rc": 0, "start": "2025-12-17 18:09:46.482015", "stderr": "", "stderr_lines": [], "stdout": "26.0%", "stdout_lines": ["26.0%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005388", "end": "2025-12-17 18:10:17.285060", "msg": "", "rc": 0, "start": "2025-12-17 18:10:17.279672", "stderr": "", "stderr_lines": [], "stdout": "13.9%", "stdout_lines": ["13.9%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.009209", "end": "2025-12-17 18:10:18.299663", "msg": "", "rc": 0, "start": "2025-12-17 18:10:18.290454", "stderr": "", "stderr_lines": [], "stdout": "11.8%", "stdout_lines": ["11.8%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.026450", "end": "2025-12-17 18:10:17.291883", "msg": "", "rc": 0, "start": "2025-12-17 18:10:17.265433", "stderr": "", "stderr_lines": [], "stdout": "20.2%", "stdout_lines": ["20.2%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005297", "end": "2025-12-17 18:10:17.822813", "msg": "", "rc": 0, "start": "2025-12-17 18:10:17.817516", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004919", "end": "2025-12-17 18:10:17.829043", "msg": "", "rc": 0, "start": "2025-12-17 18:10:17.824124", "stderr": "", "stderr_lines": [], "stdout": "48.0°C", "stdout_lines": ["48.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002881", "end": "2025-12-17 18:10:17.855993", "msg": "", "rc": 0, "start": "2025-12-17 18:10:17.853112", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005614", "end": "2025-12-17 18:10:17.853132", "msg": "", "rc": 0, "start": "2025-12-17 18:10:17.847518", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006833", "end": "2025-12-17 18:10:17.895066", "msg": "", "rc": 0, "start": "2025-12-17 18:10:17.888233", "stderr": "", "stderr_lines": [], "stdout": "52.5°C", "stdout_lines": ["52.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002590", "end": "2025-12-17 18:09:51.674092", "msg": "", "rc": 0, "start": "2025-12-17 18:09:51.671502", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003596", "end": "2025-12-17 18:09:45.202741", "msg": "", "rc": 0, "start": "2025-12-17 18:09:45.199145", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011652", "end": "2025-12-17 18:10:18.549268", "msg": "", "rc": 0, "start": "2025-12-17 18:10:18.537616", "stderr": "", "stderr_lines": [], "stdout": "33.1°C", "stdout_lines": ["33.1°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012981", "end": "2025-12-17 18:10:18.611688", "msg": "", "rc": 0, "start": "2025-12-17 18:10:18.598707", "stderr": "", "stderr_lines": [], "stdout": "37.5°C", "stdout_lines": ["37.5°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003345", "end": "2025-12-17 18:10:18.785598", "msg": "", "rc": 0, "start": "2025-12-17 18:10:18.782253", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002982", "end": "2025-12-17 18:09:48.417206", "msg": "", "rc": 0, "start": "2025-12-17 18:09:48.414224", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002689", "end": "2025-12-17 18:09:55.042426", "msg": "", "rc": 0, "start": "2025-12-17 18:09:55.039737", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003995", "end": "2025-12-17 15:10:19.088526", "msg": "", "rc": 0, "start": "2025-12-17 15:10:19.084531", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002912", "end": "2025-12-17 18:10:19.222133", "msg": "", "rc": 0, "start": "2025-12-17 18:10:19.219221", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003981", "end": "2025-12-17 18:10:20.334434", "msg": "", "rc": 0, "start": "2025-12-17 18:10:20.330453", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.030051", "end": "2025-12-17 18:10:19.407067", "msg": "", "rc": 0, "start": "2025-12-17 18:10:19.377016", "stderr": "", "stderr_lines": [], "stdout": "38.4°C", "stdout_lines": ["38.4°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004192", "end": "2025-12-17 18:10:19.962518", "msg": "", "rc": 0, "start": "2025-12-17 18:10:19.958326", "stderr": "", "stderr_lines": [], "stdout": "0.13", "stdout_lines": ["0.13"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004004", "end": "2025-12-17 18:10:19.971677", "msg": "", "rc": 0, "start": "2025-12-17 18:10:19.967673", "stderr": "", "stderr_lines": [], "stdout": "0.26", "stdout_lines": ["0.26"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004985", "end": "2025-12-17 18:10:19.975068", "msg": "", "rc": 0, "start": "2025-12-17 18:10:19.970083", "stderr": "", "stderr_lines": [], "stdout": "0.70", "stdout_lines": ["0.70"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005246", "end": "2025-12-17 18:10:19.998252", "msg": "", "rc": 0, "start": "2025-12-17 18:10:19.993006", "stderr": "", "stderr_lines": [], "stdout": "0.12", "stdout_lines": ["0.12"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005639", "end": "2025-12-17 18:10:20.027973", "msg": "", "rc": 0, "start": "2025-12-17 18:10:20.022334", "stderr": "", "stderr_lines": [], "stdout": "0.89", "stdout_lines": ["0.89"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004378", "end": "2025-12-17 18:09:53.825738", "msg": "", "rc": 0, "start": "2025-12-17 18:09:53.821360", "stderr": "", "stderr_lines": [], "stdout": "0.68", "stdout_lines": ["0.68"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005040", "end": "2025-12-17 18:09:47.316966", "msg": "", "rc": 0, "start": "2025-12-17 18:09:47.311926", "stderr": "", "stderr_lines": [], "stdout": "0.21", "stdout_lines": ["0.21"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010088", "end": "2025-12-17 18:10:20.745191", "msg": "", "rc": 0, "start": "2025-12-17 18:10:20.735103", "stderr": "", "stderr_lines": [], "stdout": "0.20", "stdout_lines": ["0.20"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011166", "end": "2025-12-17 18:10:20.767667", "msg": "", "rc": 0, "start": "2025-12-17 18:10:20.756501", "stderr": "", "stderr_lines": [], "stdout": "0.17", "stdout_lines": ["0.17"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005709", "end": "2025-12-17 18:10:20.942225", "msg": "", "rc": 0, "start": "2025-12-17 18:10:20.936516", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004787", "end": "2025-12-17 18:09:50.480245", "msg": "", "rc": 0, "start": "2025-12-17 18:09:50.475458", "stderr": "", "stderr_lines": [], "stdout": "0.41", "stdout_lines": ["0.41"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005793", "end": "2025-12-17 15:10:21.237187", "msg": "", "rc": 0, "start": "2025-12-17 15:10:21.231394", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005347", "end": "2025-12-17 18:09:57.249648", "msg": "", "rc": 0, "start": "2025-12-17 18:09:57.244301", "stderr": "", "stderr_lines": [], "stdout": "0.81", "stdout_lines": ["0.81"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005365", "end": "2025-12-17 18:10:21.364552", "msg": "", "rc": 0, "start": "2025-12-17 18:10:21.359187", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.008211", "end": "2025-12-17 18:10:22.463651", "msg": "", "rc": 0, "start": "2025-12-17 18:10:22.455440", "stderr": "", "stderr_lines": [], "stdout": "1.25", "stdout_lines": ["1.25"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024177", "end": "2025-12-17 18:10:21.553535", "msg": "", "rc": 0, "start": "2025-12-17 18:10:21.529358", "stderr": "", "stderr_lines": [], "stdout": "0.29", "stdout_lines": ["0.29"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:10:12 up 3 days, 7:42, 1 user, load average: 0.12, 0.24, 0.23\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.26\nCPU Temp: 48.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:10:11 up 22 days, 5:01, 1 user, load average: 0.06, 0.09, 0.09\nDisk Usage: 23%\nMemory Usage: 77.6%\nCPU Load: 0.13\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:10:12 up 22 days, 5:21, 1 user, load average: 0.74, 1.07, 0.98\nDisk Usage: 14%\nMemory Usage: 49.3%\nCPU Load: 0.70\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:10:12 up 22 days, 6:34, 1 user, load average: 0.80, 0.60, 0.60\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.89\nCPU Temp: 52.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:10:11 up 22 days, 7:20, 1 user, load average: 0.13, 0.15, 0.09\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.12\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:10:13 up 15 days, 7:36, 1 user, load average: 0.16, 0.08, 0.08\nDisk Usage: 21%\nMemory Usage: 20.2%\nCPU Load: 0.29\nCPU Temp: 38.4°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:10:12 up 194 days, 9:43, 1 user, load average: 0.19, 0.18, 0.18\nDisk Usage: 6%\nMemory Usage: 12.6%\nCPU Load: 0.17\nCPU Temp: 37.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:10:12 up 194 days, 9:43, 1 user, load average: 0.13, 0.14, 0.10\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.20\nCPU Temp: 33.1°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:09:45 up 11 days, 5:59, 0 user, load average: 0.71, 0.41, 0.26\nDisk Usage: 48%\nMemory Usage: 70.5%\nCPU Load: 0.68\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:09:39 up 18 days, 2:11, 0 user, load average: 0.16, 0.04, 0.01\nDisk Usage: 25%\nMemory Usage: 69.1%\nCPU Load: 0.21\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:10:13 up 3 days, 7:41, 1 user, load average: 0.00, 0.04, 0.01\nDisk Usage: 1%\nMemory Usage: 35.6%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:09:42 up 20 days, 21:04, 0 user, load average: 0.39, 0.46, 0.45\nDisk Usage: 28%\nMemory Usage: 26.0%\nCPU Load: 0.41\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:09:49 up 17 days, 7:25, 0 user, load average: 0.86, 0.63, 0.41\nDisk Usage: 76%\nMemory Usage: 59.7%\nCPU Load: 0.81\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 3:10PM up 22 days, 5 hrs, 1 user, load averages: 0.43, 0.32, 0.22\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:10:13 up 3 days, 7:41, 1 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 79%\nMemory Usage: 13.9%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:10:14 up 28 min, 1 user, load average: 1.12, 1.12, 1.01\nDisk Usage: 1%\nMemory Usage: 11.8%\nCPU Load: 1.25\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T23:10:23.598871+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_231521_68231f_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_231521_68231f_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..4ad09a3 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_231521_68231f_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `7df00a6606db417499dae18d2517949e` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T23:15:00.001833+00:00 | +| **Fin** | 2025-12-17T23:15:21.868461+00:00 | +| **Durée** | 21.9s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003438", "end": "2025-12-17 18:15:11.289021", "msg": "", "rc": 0, "start": "2025-12-17 18:15:11.285583", "stderr": "", "stderr_lines": [], "stdout": " 18:15:11 up 22 days, 5:06, 1 user, load average: 0.15, 0.07, 0.08", "stdout_lines": [" 18:15:11 up 22 days, 5:06, 1 user, load average: 0.15, 0.07, 0.08"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003331", "end": "2025-12-17 18:15:11.294827", "msg": "", "rc": 0, "start": "2025-12-17 18:15:11.291496", "stderr": "", "stderr_lines": [], "stdout": " 18:15:11 up 22 days, 5:26, 1 user, load average: 1.72, 1.39, 1.14", "stdout_lines": [" 18:15:11 up 22 days, 5:26, 1 user, load average: 1.72, 1.39, 1.14"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003913", "end": "2025-12-17 18:15:11.300184", "msg": "", "rc": 0, "start": "2025-12-17 18:15:11.296271", "stderr": "", "stderr_lines": [], "stdout": " 18:15:11 up 22 days, 7:25, 1 user, load average: 0.26, 0.17, 0.11", "stdout_lines": [" 18:15:11 up 22 days, 7:25, 1 user, load average: 0.26, 0.17, 0.11"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004135", "end": "2025-12-17 18:15:11.319793", "msg": "", "rc": 0, "start": "2025-12-17 18:15:11.315658", "stderr": "", "stderr_lines": [], "stdout": " 18:15:11 up 22 days, 6:39, 1 user, load average: 0.82, 0.69, 0.64", "stdout_lines": [" 18:15:11 up 22 days, 6:39, 1 user, load average: 0.82, 0.69, 0.64"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003048", "end": "2025-12-17 18:15:11.330285", "msg": "", "rc": 0, "start": "2025-12-17 18:15:11.327237", "stderr": "", "stderr_lines": [], "stdout": " 18:15:11 up 3 days, 7:47, 1 user, load average: 0.23, 0.15, 0.18", "stdout_lines": [" 18:15:11 up 3 days, 7:47, 1 user, load average: 0.23, 0.15, 0.18"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003150", "end": "2025-12-17 18:14:45.149745", "msg": "", "rc": 0, "start": "2025-12-17 18:14:45.146595", "stderr": "", "stderr_lines": [], "stdout": " 18:14:45 up 11 days, 6:04, 0 user, load average: 0.08, 0.24, 0.23", "stdout_lines": [" 18:14:45 up 11 days, 6:04, 0 user, load average: 0.08, 0.24, 0.23"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003446", "end": "2025-12-17 18:14:38.615000", "msg": "", "rc": 0, "start": "2025-12-17 18:14:38.611554", "stderr": "", "stderr_lines": [], "stdout": " 18:14:38 up 18 days, 2:16, 0 user, load average: 0.09, 0.06, 0.01", "stdout_lines": [" 18:14:38 up 18 days, 2:16, 0 user, load average: 0.09, 0.06, 0.01"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008475", "end": "2025-12-17 18:15:11.968030", "msg": "", "rc": 0, "start": "2025-12-17 18:15:11.959555", "stderr": "", "stderr_lines": [], "stdout": " 18:15:11 up 194 days, 9:48, 1 user, load average: 0.20, 0.16, 0.10", "stdout_lines": [" 18:15:11 up 194 days, 9:48, 1 user, load average: 0.20, 0.16, 0.10"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009262", "end": "2025-12-17 18:15:12.016720", "msg": "", "rc": 0, "start": "2025-12-17 18:15:12.007458", "stderr": "", "stderr_lines": [], "stdout": " 18:15:12 up 194 days, 9:48, 1 user, load average: 0.14, 0.18, 0.18", "stdout_lines": [" 18:15:12 up 194 days, 9:48, 1 user, load average: 0.14, 0.18, 0.18"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004764", "end": "2025-12-17 18:15:12.257698", "msg": "", "rc": 0, "start": "2025-12-17 18:15:12.252934", "stderr": "", "stderr_lines": [], "stdout": " 18:15:12 up 3 days, 7:46, 1 user, load average: 0.24, 0.08, 0.01", "stdout_lines": [" 18:15:12 up 3 days, 7:46, 1 user, load average: 0.24, 0.08, 0.01"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003305", "end": "2025-12-17 18:14:41.778513", "msg": "", "rc": 0, "start": "2025-12-17 18:14:41.775208", "stderr": "", "stderr_lines": [], "stdout": " 18:14:41 up 20 days, 21:08, 0 user, load average: 0.46, 0.42, 0.44", "stdout_lines": [" 18:14:41 up 20 days, 21:08, 0 user, load average: 0.46, 0.42, 0.44"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003878", "end": "2025-12-17 18:14:48.443700", "msg": "", "rc": 0, "start": "2025-12-17 18:14:48.439822", "stderr": "", "stderr_lines": [], "stdout": " 18:14:48 up 17 days, 7:30, 0 user, load average: 0.55, 0.55, 0.44", "stdout_lines": [" 18:14:48 up 17 days, 7:30, 0 user, load average: 0.55, 0.55, 0.44"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004617", "end": "2025-12-17 15:15:12.468869", "msg": "", "rc": 0, "start": "2025-12-17 15:15:12.464252", "stderr": "", "stderr_lines": [], "stdout": " 3:15PM up 22 days, 5:04, 1 user, load averages: 0.41, 0.31, 0.23", "stdout_lines": [" 3:15PM up 22 days, 5:04, 1 user, load averages: 0.41, 0.31, 0.23"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003726", "end": "2025-12-17 18:15:12.677863", "msg": "", "rc": 0, "start": "2025-12-17 18:15:12.674137", "stderr": "", "stderr_lines": [], "stdout": " 18:15:12 up 3 days, 7:46, 1 user, load average: 0.03, 0.03, 0.00", "stdout_lines": [" 18:15:12 up 3 days, 7:46, 1 user, load average: 0.03, 0.03, 0.00"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.006809", "end": "2025-12-17 18:15:13.647340", "msg": "", "rc": 0, "start": "2025-12-17 18:15:13.640531", "stderr": "", "stderr_lines": [], "stdout": " 18:15:13 up 33 min, 1 user, load average: 1.33, 1.20, 1.07", "stdout_lines": [" 18:15:13 up 33 min, 1 user, load average: 1.33, 1.20, 1.07"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019867", "end": "2025-12-17 18:15:12.675571", "msg": "", "rc": 0, "start": "2025-12-17 18:15:12.655704", "stderr": "", "stderr_lines": [], "stdout": " 18:15:12 up 15 days, 7:41, 1 user, load average: 0.13, 0.09, 0.09", "stdout_lines": [" 18:15:12 up 15 days, 7:41, 1 user, load average: 0.13, 0.09, 0.09"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004289", "end": "2025-12-17 18:15:13.191815", "msg": "", "rc": 0, "start": "2025-12-17 18:15:13.187526", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004023", "end": "2025-12-17 18:15:13.218968", "msg": "", "rc": 0, "start": "2025-12-17 18:15:13.214945", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005162", "end": "2025-12-17 18:15:13.240218", "msg": "", "rc": 0, "start": "2025-12-17 18:15:13.235056", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004904", "end": "2025-12-17 18:15:13.245051", "msg": "", "rc": 0, "start": "2025-12-17 18:15:13.240147", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005622", "end": "2025-12-17 18:15:13.255521", "msg": "", "rc": 0, "start": "2025-12-17 18:15:13.249899", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005415", "end": "2025-12-17 18:14:47.060214", "msg": "", "rc": 0, "start": "2025-12-17 18:14:47.054799", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005602", "end": "2025-12-17 18:14:40.532417", "msg": "", "rc": 0, "start": "2025-12-17 18:14:40.526815", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010715", "end": "2025-12-17 18:15:13.942167", "msg": "", "rc": 0, "start": "2025-12-17 18:15:13.931452", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011478", "end": "2025-12-17 18:15:13.951623", "msg": "", "rc": 0, "start": "2025-12-17 18:15:13.940145", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006154", "end": "2025-12-17 18:15:14.184952", "msg": "", "rc": 0, "start": "2025-12-17 18:15:14.178798", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005556", "end": "2025-12-17 18:14:43.714086", "msg": "", "rc": 0, "start": "2025-12-17 18:14:43.708530", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005413", "end": "2025-12-17 15:15:14.399213", "msg": "", "rc": 0, "start": "2025-12-17 15:15:14.393800", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005444", "end": "2025-12-17 18:14:50.426829", "msg": "", "rc": 0, "start": "2025-12-17 18:14:50.421385", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005304", "end": "2025-12-17 18:15:14.607278", "msg": "", "rc": 0, "start": "2025-12-17 18:15:14.601974", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.018405", "end": "2025-12-17 18:15:15.637432", "msg": "", "rc": 0, "start": "2025-12-17 18:15:15.619027", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025388", "end": "2025-12-17 18:15:14.571608", "msg": "", "rc": 0, "start": "2025-12-17 18:15:14.546220", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004398", "end": "2025-12-17 18:15:15.089143", "msg": "", "rc": 0, "start": "2025-12-17 18:15:15.084745", "stderr": "", "stderr_lines": [], "stdout": "77.7%", "stdout_lines": ["77.7%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004135", "end": "2025-12-17 18:15:15.105947", "msg": "", "rc": 0, "start": "2025-12-17 18:15:15.101812", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005000", "end": "2025-12-17 18:15:15.115940", "msg": "", "rc": 0, "start": "2025-12-17 18:15:15.110940", "stderr": "", "stderr_lines": [], "stdout": "49.3%", "stdout_lines": ["49.3%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004880", "end": "2025-12-17 18:15:15.144044", "msg": "", "rc": 0, "start": "2025-12-17 18:15:15.139164", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.008555", "end": "2025-12-17 18:15:15.156424", "msg": "", "rc": 0, "start": "2025-12-17 18:15:15.147869", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003938", "end": "2025-12-17 18:14:48.977102", "msg": "", "rc": 0, "start": "2025-12-17 18:14:48.973164", "stderr": "", "stderr_lines": [], "stdout": "70.6%", "stdout_lines": ["70.6%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004425", "end": "2025-12-17 18:14:42.470774", "msg": "", "rc": 0, "start": "2025-12-17 18:14:42.466349", "stderr": "", "stderr_lines": [], "stdout": "69.1%", "stdout_lines": ["69.1%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010987", "end": "2025-12-17 18:15:15.789708", "msg": "", "rc": 0, "start": "2025-12-17 18:15:15.778721", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011999", "end": "2025-12-17 18:15:15.807055", "msg": "", "rc": 0, "start": "2025-12-17 18:15:15.795056", "stderr": "", "stderr_lines": [], "stdout": "12.9%", "stdout_lines": ["12.9%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006000", "end": "2025-12-17 18:15:16.100486", "msg": "", "rc": 0, "start": "2025-12-17 18:15:16.094486", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004371", "end": "2025-12-17 18:14:45.633051", "msg": "", "rc": 0, "start": "2025-12-17 18:14:45.628680", "stderr": "", "stderr_lines": [], "stdout": "27.6%", "stdout_lines": ["27.6%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005095", "end": "2025-12-17 15:15:16.256006", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 15:15:16.250911", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003848", "end": "2025-12-17 18:14:52.254688", "msg": "", "rc": 0, "start": "2025-12-17 18:14:52.250840", "stderr": "", "stderr_lines": [], "stdout": "58.5%", "stdout_lines": ["58.5%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.007816", "end": "2025-12-17 18:15:17.580609", "msg": "", "rc": 0, "start": "2025-12-17 18:15:17.572793", "stderr": "", "stderr_lines": [], "stdout": "12.1%", "stdout_lines": ["12.1%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006483", "end": "2025-12-17 18:15:16.530795", "msg": "", "rc": 0, "start": "2025-12-17 18:15:16.524312", "stderr": "", "stderr_lines": [], "stdout": "14.1%", "stdout_lines": ["14.1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025775", "end": "2025-12-17 18:15:16.478985", "msg": "", "rc": 0, "start": "2025-12-17 18:15:16.453210", "stderr": "", "stderr_lines": [], "stdout": "19.9%", "stdout_lines": ["19.9%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005491", "end": "2025-12-17 18:15:16.999992", "msg": "", "rc": 0, "start": "2025-12-17 18:15:16.994501", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005097", "end": "2025-12-17 18:15:17.015971", "msg": "", "rc": 0, "start": "2025-12-17 18:15:17.010874", "stderr": "", "stderr_lines": [], "stdout": "47.0°C", "stdout_lines": ["47.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005772", "end": "2025-12-17 18:15:17.042521", "msg": "", "rc": 0, "start": "2025-12-17 18:15:17.036749", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003172", "end": "2025-12-17 18:15:17.049968", "msg": "", "rc": 0, "start": "2025-12-17 18:15:17.046796", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006435", "end": "2025-12-17 18:15:17.065368", "msg": "", "rc": 0, "start": "2025-12-17 18:15:17.058933", "stderr": "", "stderr_lines": [], "stdout": "52.5°C", "stdout_lines": ["52.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002719", "end": "2025-12-17 18:14:50.854326", "msg": "", "rc": 0, "start": "2025-12-17 18:14:50.851607", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002920", "end": "2025-12-17 18:14:44.356833", "msg": "", "rc": 0, "start": "2025-12-17 18:14:44.353913", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012600", "end": "2025-12-17 18:15:17.702381", "msg": "", "rc": 0, "start": "2025-12-17 18:15:17.689781", "stderr": "", "stderr_lines": [], "stdout": "33.1°C", "stdout_lines": ["33.1°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.015781", "end": "2025-12-17 18:15:17.751552", "msg": "", "rc": 0, "start": "2025-12-17 18:15:17.735771", "stderr": "", "stderr_lines": [], "stdout": "37.5°C", "stdout_lines": ["37.5°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003187", "end": "2025-12-17 18:15:17.966871", "msg": "", "rc": 0, "start": "2025-12-17 18:15:17.963684", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002772", "end": "2025-12-17 18:14:54.197488", "msg": "", "rc": 0, "start": "2025-12-17 18:14:54.194716", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003252", "end": "2025-12-17 18:14:47.608236", "msg": "", "rc": 0, "start": "2025-12-17 18:14:47.604984", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004077", "end": "2025-12-17 15:15:18.239785", "msg": "", "rc": 0, "start": "2025-12-17 15:15:18.235708", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003081", "end": "2025-12-17 18:15:18.375519", "msg": "", "rc": 0, "start": "2025-12-17 18:15:18.372438", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003788", "end": "2025-12-17 18:15:18.545726", "msg": "", "rc": 0, "start": "2025-12-17 18:15:18.541938", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.030528", "end": "2025-12-17 18:15:18.541095", "msg": "", "rc": 0, "start": "2025-12-17 18:15:18.510567", "stderr": "", "stderr_lines": [], "stdout": "37.9°C", "stdout_lines": ["37.9°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004425", "end": "2025-12-17 18:15:19.097852", "msg": "", "rc": 0, "start": "2025-12-17 18:15:19.093427", "stderr": "", "stderr_lines": [], "stdout": "0.14", "stdout_lines": ["0.14"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004045", "end": "2025-12-17 18:15:19.131917", "msg": "", "rc": 0, "start": "2025-12-17 18:15:19.127872", "stderr": "", "stderr_lines": [], "stdout": "0.19", "stdout_lines": ["0.19"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005108", "end": "2025-12-17 18:15:19.131292", "msg": "", "rc": 0, "start": "2025-12-17 18:15:19.126184", "stderr": "", "stderr_lines": [], "stdout": "1.84", "stdout_lines": ["1.84"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005011", "end": "2025-12-17 18:15:19.155741", "msg": "", "rc": 0, "start": "2025-12-17 18:15:19.150730", "stderr": "", "stderr_lines": [], "stdout": "0.22", "stdout_lines": ["0.22"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005735", "end": "2025-12-17 18:15:19.184056", "msg": "", "rc": 0, "start": "2025-12-17 18:15:19.178321", "stderr": "", "stderr_lines": [], "stdout": "0.77", "stdout_lines": ["0.77"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004501", "end": "2025-12-17 18:14:52.976021", "msg": "", "rc": 0, "start": "2025-12-17 18:14:52.971520", "stderr": "", "stderr_lines": [], "stdout": "0.07", "stdout_lines": ["0.07"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004961", "end": "2025-12-17 18:14:46.486859", "msg": "", "rc": 0, "start": "2025-12-17 18:14:46.481898", "stderr": "", "stderr_lines": [], "stdout": "0.16", "stdout_lines": ["0.16"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010146", "end": "2025-12-17 18:15:19.838980", "msg": "", "rc": 0, "start": "2025-12-17 18:15:19.828834", "stderr": "", "stderr_lines": [], "stdout": "0.18", "stdout_lines": ["0.18"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011300", "end": "2025-12-17 18:15:19.924104", "msg": "", "rc": 0, "start": "2025-12-17 18:15:19.912804", "stderr": "", "stderr_lines": [], "stdout": "0.13", "stdout_lines": ["0.13"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005906", "end": "2025-12-17 18:15:20.093956", "msg": "", "rc": 0, "start": "2025-12-17 18:15:20.088050", "stderr": "", "stderr_lines": [], "stdout": "0.20", "stdout_lines": ["0.20"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005164", "end": "2025-12-17 18:14:49.683089", "msg": "", "rc": 0, "start": "2025-12-17 18:14:49.677925", "stderr": "", "stderr_lines": [], "stdout": "0.55", "stdout_lines": ["0.55"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004532", "end": "2025-12-17 18:14:56.286504", "msg": "", "rc": 0, "start": "2025-12-17 18:14:56.281972", "stderr": "", "stderr_lines": [], "stdout": "0.86", "stdout_lines": ["0.86"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005945", "end": "2025-12-17 15:15:20.378149", "msg": "", "rc": 0, "start": "2025-12-17 15:15:20.372204", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005285", "end": "2025-12-17 18:15:20.519184", "msg": "", "rc": 0, "start": "2025-12-17 18:15:20.513899", "stderr": "", "stderr_lines": [], "stdout": "0.03", "stdout_lines": ["0.03"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.007457", "end": "2025-12-17 18:15:20.719308", "msg": "", "rc": 0, "start": "2025-12-17 18:15:20.711851", "stderr": "", "stderr_lines": [], "stdout": "1.55", "stdout_lines": ["1.55"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.026960", "end": "2025-12-17 18:15:20.773889", "msg": "", "rc": 0, "start": "2025-12-17 18:15:20.746929", "stderr": "", "stderr_lines": [], "stdout": "0.20", "stdout_lines": ["0.20"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:15:11 up 3 days, 7:47, 1 user, load average: 0.23, 0.15, 0.18\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.19\nCPU Temp: 47.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:15:11 up 22 days, 5:06, 1 user, load average: 0.15, 0.07, 0.08\nDisk Usage: 23%\nMemory Usage: 77.7%\nCPU Load: 0.14\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:15:11 up 22 days, 5:26, 1 user, load average: 1.72, 1.39, 1.14\nDisk Usage: 14%\nMemory Usage: 49.3%\nCPU Load: 1.84\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:15:11 up 22 days, 6:39, 1 user, load average: 0.82, 0.69, 0.64\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.77\nCPU Temp: 52.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:15:11 up 22 days, 7:25, 1 user, load average: 0.26, 0.17, 0.11\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.22\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:15:12 up 15 days, 7:41, 1 user, load average: 0.13, 0.09, 0.09\nDisk Usage: 21%\nMemory Usage: 19.9%\nCPU Load: 0.20\nCPU Temp: 37.9°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:15:12 up 194 days, 9:48, 1 user, load average: 0.14, 0.18, 0.18\nDisk Usage: 6%\nMemory Usage: 12.9%\nCPU Load: 0.13\nCPU Temp: 37.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:15:11 up 194 days, 9:48, 1 user, load average: 0.20, 0.16, 0.10\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.18\nCPU Temp: 33.1°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:14:45 up 11 days, 6:04, 0 user, load average: 0.08, 0.24, 0.23\nDisk Usage: 48%\nMemory Usage: 70.6%\nCPU Load: 0.07\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:14:38 up 18 days, 2:16, 0 user, load average: 0.09, 0.06, 0.01\nDisk Usage: 25%\nMemory Usage: 69.1%\nCPU Load: 0.16\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:15:12 up 3 days, 7:46, 1 user, load average: 0.24, 0.08, 0.01\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.20\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:14:41 up 20 days, 21:08, 0 user, load average: 0.46, 0.42, 0.44\nDisk Usage: 28%\nMemory Usage: 27.6%\nCPU Load: 0.55\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:14:48 up 17 days, 7:30, 0 user, load average: 0.55, 0.55, 0.44\nDisk Usage: 76%\nMemory Usage: 58.5%\nCPU Load: 0.86\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 3:15PM up 22 days, 5:04, 1 user, load averages: 0.41, 0.31, 0.23\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:15:12 up 3 days, 7:46, 1 user, load average: 0.03, 0.03, 0.00\nDisk Usage: 79%\nMemory Usage: 14.1%\nCPU Load: 0.03\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:15:13 up 33 min, 1 user, load average: 1.33, 1.20, 1.07\nDisk Usage: 1%\nMemory Usage: 12.1%\nCPU Load: 1.55\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T23:15:21.907438+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_232023_5d2f51_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_232023_5d2f51_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..2482797 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_232023_5d2f51_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `38aac624e25942eca2dabb9a73a37c63` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T23:20:00.003006+00:00 | +| **Fin** | 2025-12-17T23:20:23.037476+00:00 | +| **Durée** | 23.0s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [dev.prod.home] +ok: [hp.truenas.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003179", "end": "2025-12-17 18:20:11.714636", "msg": "", "rc": 0, "start": "2025-12-17 18:20:11.711457", "stderr": "", "stderr_lines": [], "stdout": " 18:20:11 up 22 days, 5:11, 1 user, load average: 0.06, 0.06, 0.07", "stdout_lines": [" 18:20:11 up 22 days, 5:11, 1 user, load average: 0.06, 0.06, 0.07"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003404", "end": "2025-12-17 18:20:11.737218", "msg": "", "rc": 0, "start": "2025-12-17 18:20:11.733814", "stderr": "", "stderr_lines": [], "stdout": " 18:20:11 up 22 days, 7:30, 1 user, load average: 0.09, 0.09, 0.08", "stdout_lines": [" 18:20:11 up 22 days, 7:30, 1 user, load average: 0.09, 0.09, 0.08"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003577", "end": "2025-12-17 18:20:11.736780", "msg": "", "rc": 0, "start": "2025-12-17 18:20:11.733203", "stderr": "", "stderr_lines": [], "stdout": " 18:20:11 up 22 days, 5:31, 1 user, load average: 0.92, 1.17, 1.12", "stdout_lines": [" 18:20:11 up 22 days, 5:31, 1 user, load average: 0.92, 1.17, 1.12"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003762", "end": "2025-12-17 18:20:11.746845", "msg": "", "rc": 0, "start": "2025-12-17 18:20:11.743083", "stderr": "", "stderr_lines": [], "stdout": " 18:20:11 up 22 days, 6:44, 1 user, load average: 0.61, 0.64, 0.63", "stdout_lines": [" 18:20:11 up 22 days, 6:44, 1 user, load average: 0.61, 0.64, 0.63"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002841", "end": "2025-12-17 18:20:11.752546", "msg": "", "rc": 0, "start": "2025-12-17 18:20:11.749705", "stderr": "", "stderr_lines": [], "stdout": " 18:20:11 up 3 days, 7:52, 1 user, load average: 0.26, 0.19, 0.19", "stdout_lines": [" 18:20:11 up 3 days, 7:52, 1 user, load average: 0.26, 0.19, 0.19"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002913", "end": "2025-12-17 18:19:45.553835", "msg": "", "rc": 0, "start": "2025-12-17 18:19:45.550922", "stderr": "", "stderr_lines": [], "stdout": " 18:19:45 up 11 days, 6:09, 0 user, load average: 0.07, 0.11, 0.17", "stdout_lines": [" 18:19:45 up 11 days, 6:09, 0 user, load average: 0.07, 0.11, 0.17"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003393", "end": "2025-12-17 18:19:39.040744", "msg": "", "rc": 0, "start": "2025-12-17 18:19:39.037351", "stderr": "", "stderr_lines": [], "stdout": " 18:19:39 up 18 days, 2:21, 0 user, load average: 0.02, 0.04, 0.00", "stdout_lines": [" 18:19:39 up 18 days, 2:21, 0 user, load average: 0.02, 0.04, 0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008398", "end": "2025-12-17 18:20:12.407248", "msg": "", "rc": 0, "start": "2025-12-17 18:20:12.398850", "stderr": "", "stderr_lines": [], "stdout": " 18:20:12 up 194 days, 9:53, 1 user, load average: 0.19, 0.14, 0.10", "stdout_lines": [" 18:20:12 up 194 days, 9:53, 1 user, load average: 0.19, 0.14, 0.10"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009224", "end": "2025-12-17 18:20:12.437066", "msg": "", "rc": 0, "start": "2025-12-17 18:20:12.427842", "stderr": "", "stderr_lines": [], "stdout": " 18:20:12 up 194 days, 9:53, 1 user, load average: 0.19, 0.20, 0.18", "stdout_lines": [" 18:20:12 up 194 days, 9:53, 1 user, load average: 0.19, 0.20, 0.18"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004758", "end": "2025-12-17 18:20:12.669101", "msg": "", "rc": 0, "start": "2025-12-17 18:20:12.664343", "stderr": "", "stderr_lines": [], "stdout": " 18:20:12 up 3 days, 7:51, 1 user, load average: 0.01, 0.05, 0.00", "stdout_lines": [" 18:20:12 up 3 days, 7:51, 1 user, load average: 0.01, 0.05, 0.00"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003263", "end": "2025-12-17 18:19:42.203286", "msg": "", "rc": 0, "start": "2025-12-17 18:19:42.200023", "stderr": "", "stderr_lines": [], "stdout": " 18:19:42 up 20 days, 21:14, 0 user, load average: 0.45, 0.39, 0.42", "stdout_lines": [" 18:19:42 up 20 days, 21:14, 0 user, load average: 0.45, 0.39, 0.42"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004176", "end": "2025-12-17 15:20:12.874561", "msg": "", "rc": 0, "start": "2025-12-17 15:20:12.870385", "stderr": "", "stderr_lines": [], "stdout": " 3:20PM up 22 days, 5:10, 1 user, load averages: 0.22, 0.29, 0.25", "stdout_lines": [" 3:20PM up 22 days, 5:10, 1 user, load averages: 0.22, 0.29, 0.25"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002820", "end": "2025-12-17 18:19:48.865821", "msg": "", "rc": 0, "start": "2025-12-17 18:19:48.863001", "stderr": "", "stderr_lines": [], "stdout": " 18:19:48 up 17 days, 7:35, 0 user, load average: 0.27, 0.50, 0.46", "stdout_lines": [" 18:19:48 up 17 days, 7:35, 0 user, load average: 0.27, 0.50, 0.46"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003636", "end": "2025-12-17 18:20:13.088857", "msg": "", "rc": 0, "start": "2025-12-17 18:20:13.085221", "stderr": "", "stderr_lines": [], "stdout": " 18:20:13 up 3 days, 7:51, 1 user, load average: 0.07, 0.04, 0.01", "stdout_lines": [" 18:20:13 up 3 days, 7:51, 1 user, load average: 0.07, 0.04, 0.01"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.007415", "end": "2025-12-17 18:20:13.642657", "msg": "", "rc": 0, "start": "2025-12-17 18:20:13.635242", "stderr": "", "stderr_lines": [], "stdout": " 18:20:13 up 38 min, 1 user, load average: 1.12, 1.15, 1.09", "stdout_lines": [" 18:20:13 up 38 min, 1 user, load average: 1.12, 1.15, 1.09"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019429", "end": "2025-12-17 18:20:13.095507", "msg": "", "rc": 0, "start": "2025-12-17 18:20:13.076078", "stderr": "", "stderr_lines": [], "stdout": " 18:20:13 up 15 days, 7:46, 1 user, load average: 0.14, 0.10, 0.09", "stdout_lines": [" 18:20:13 up 15 days, 7:46, 1 user, load average: 0.14, 0.10, 0.09"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004530", "end": "2025-12-17 18:20:13.607374", "msg": "", "rc": 0, "start": "2025-12-17 18:20:13.602844", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004252", "end": "2025-12-17 18:20:13.631813", "msg": "", "rc": 0, "start": "2025-12-17 18:20:13.627561", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005271", "end": "2025-12-17 18:20:13.656815", "msg": "", "rc": 0, "start": "2025-12-17 18:20:13.651544", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005581", "end": "2025-12-17 18:20:13.680735", "msg": "", "rc": 0, "start": "2025-12-17 18:20:13.675154", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005007", "end": "2025-12-17 18:20:13.684653", "msg": "", "rc": 0, "start": "2025-12-17 18:20:13.679646", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005137", "end": "2025-12-17 18:19:47.468855", "msg": "", "rc": 0, "start": "2025-12-17 18:19:47.463718", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005262", "end": "2025-12-17 18:19:40.962901", "msg": "", "rc": 0, "start": "2025-12-17 18:19:40.957639", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010363", "end": "2025-12-17 18:20:14.359049", "msg": "", "rc": 0, "start": "2025-12-17 18:20:14.348686", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011669", "end": "2025-12-17 18:20:14.369408", "msg": "", "rc": 0, "start": "2025-12-17 18:20:14.357739", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005711", "end": "2025-12-17 18:20:14.583005", "msg": "", "rc": 0, "start": "2025-12-17 18:20:14.577294", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005078", "end": "2025-12-17 18:19:44.128936", "msg": "", "rc": 0, "start": "2025-12-17 18:19:44.123858", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005570", "end": "2025-12-17 15:20:14.815173", "msg": "", "rc": 0, "start": "2025-12-17 15:20:14.809603", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004873", "end": "2025-12-17 18:19:50.814544", "msg": "", "rc": 0, "start": "2025-12-17 18:19:50.809671", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005296", "end": "2025-12-17 18:20:15.009728", "msg": "", "rc": 0, "start": "2025-12-17 18:20:15.004432", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025362", "end": "2025-12-17 18:20:14.989564", "msg": "", "rc": 0, "start": "2025-12-17 18:20:14.964202", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.017308", "end": "2025-12-17 18:20:15.728053", "msg": "", "rc": 0, "start": "2025-12-17 18:20:15.710745", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004308", "end": "2025-12-17 18:20:15.516727", "msg": "", "rc": 0, "start": "2025-12-17 18:20:15.512419", "stderr": "", "stderr_lines": [], "stdout": "77.6%", "stdout_lines": ["77.6%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004278", "end": "2025-12-17 18:20:15.529651", "msg": "", "rc": 0, "start": "2025-12-17 18:20:15.525373", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005005", "end": "2025-12-17 18:20:15.534295", "msg": "", "rc": 0, "start": "2025-12-17 18:20:15.529290", "stderr": "", "stderr_lines": [], "stdout": "49.3%", "stdout_lines": ["49.3%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004878", "end": "2025-12-17 18:20:15.570257", "msg": "", "rc": 0, "start": "2025-12-17 18:20:15.565379", "stderr": "", "stderr_lines": [], "stdout": "9.1%", "stdout_lines": ["9.1%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005741", "end": "2025-12-17 18:20:15.579973", "msg": "", "rc": 0, "start": "2025-12-17 18:20:15.574232", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003621", "end": "2025-12-17 18:19:49.361589", "msg": "", "rc": 0, "start": "2025-12-17 18:19:49.357968", "stderr": "", "stderr_lines": [], "stdout": "70.6%", "stdout_lines": ["70.6%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004478", "end": "2025-12-17 18:19:42.832715", "msg": "", "rc": 0, "start": "2025-12-17 18:19:42.828237", "stderr": "", "stderr_lines": [], "stdout": "69.1%", "stdout_lines": ["69.1%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010882", "end": "2025-12-17 18:20:16.193665", "msg": "", "rc": 0, "start": "2025-12-17 18:20:16.182783", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.014121", "end": "2025-12-17 18:20:16.252244", "msg": "", "rc": 0, "start": "2025-12-17 18:20:16.238123", "stderr": "", "stderr_lines": [], "stdout": "13.0%", "stdout_lines": ["13.0%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005977", "end": "2025-12-17 18:20:16.485512", "msg": "", "rc": 0, "start": "2025-12-17 18:20:16.479535", "stderr": "", "stderr_lines": [], "stdout": "35.6%", "stdout_lines": ["35.6%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004553", "end": "2025-12-17 18:19:45.996380", "msg": "", "rc": 0, "start": "2025-12-17 18:19:45.991827", "stderr": "", "stderr_lines": [], "stdout": "27.4%", "stdout_lines": ["27.4%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003706", "end": "2025-12-17 18:19:52.651881", "msg": "", "rc": 0, "start": "2025-12-17 18:19:52.648175", "stderr": "", "stderr_lines": [], "stdout": "57.7%", "stdout_lines": ["57.7%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005003", "end": "2025-12-17 15:20:16.702266", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 15:20:16.697263", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005983", "end": "2025-12-17 18:20:16.904187", "msg": "", "rc": 0, "start": "2025-12-17 18:20:16.898204", "stderr": "", "stderr_lines": [], "stdout": "14.0%", "stdout_lines": ["14.0%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.007706", "end": "2025-12-17 18:20:17.636710", "msg": "", "rc": 0, "start": "2025-12-17 18:20:17.629004", "stderr": "", "stderr_lines": [], "stdout": "11.9%", "stdout_lines": ["11.9%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025840", "end": "2025-12-17 18:20:16.906563", "msg": "", "rc": 0, "start": "2025-12-17 18:20:16.880723", "stderr": "", "stderr_lines": [], "stdout": "19.8%", "stdout_lines": ["19.8%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005467", "end": "2025-12-17 18:20:17.445532", "msg": "", "rc": 0, "start": "2025-12-17 18:20:17.440065", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004965", "end": "2025-12-17 18:20:17.475630", "msg": "", "rc": 0, "start": "2025-12-17 18:20:17.470665", "stderr": "", "stderr_lines": [], "stdout": "47.0°C", "stdout_lines": ["47.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005636", "end": "2025-12-17 18:20:17.488891", "msg": "", "rc": 0, "start": "2025-12-17 18:20:17.483255", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003119", "end": "2025-12-17 18:20:17.501496", "msg": "", "rc": 0, "start": "2025-12-17 18:20:17.498377", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.008194", "end": "2025-12-17 18:20:17.517329", "msg": "", "rc": 0, "start": "2025-12-17 18:20:17.509135", "stderr": "", "stderr_lines": [], "stdout": "52.5°C", "stdout_lines": ["52.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002727", "end": "2025-12-17 18:19:51.345976", "msg": "", "rc": 0, "start": "2025-12-17 18:19:51.343249", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003320", "end": "2025-12-17 18:19:44.792532", "msg": "", "rc": 0, "start": "2025-12-17 18:19:44.789212", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011835", "end": "2025-12-17 18:20:18.153827", "msg": "", "rc": 0, "start": "2025-12-17 18:20:18.141992", "stderr": "", "stderr_lines": [], "stdout": "31.6°C", "stdout_lines": ["31.6°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.018170", "end": "2025-12-17 18:20:18.209306", "msg": "", "rc": 0, "start": "2025-12-17 18:20:18.191136", "stderr": "", "stderr_lines": [], "stdout": "36.5°C", "stdout_lines": ["36.5°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003287", "end": "2025-12-17 18:20:18.477145", "msg": "", "rc": 0, "start": "2025-12-17 18:20:18.473858", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003547", "end": "2025-12-17 18:19:47.967714", "msg": "", "rc": 0, "start": "2025-12-17 18:19:47.964167", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002594", "end": "2025-12-17 18:19:54.625263", "msg": "", "rc": 0, "start": "2025-12-17 18:19:54.622669", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003806", "end": "2025-12-17 15:20:18.676282", "msg": "", "rc": 0, "start": "2025-12-17 15:20:18.672476", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003952", "end": "2025-12-17 18:20:19.634126", "msg": "", "rc": 0, "start": "2025-12-17 18:20:19.630174", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003166", "end": "2025-12-17 18:20:18.903743", "msg": "", "rc": 0, "start": "2025-12-17 18:20:18.900577", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.032237", "end": "2025-12-17 18:20:18.989544", "msg": "", "rc": 0, "start": "2025-12-17 18:20:18.957307", "stderr": "", "stderr_lines": [], "stdout": "39.1°C", "stdout_lines": ["39.1°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004053", "end": "2025-12-17 18:20:19.544449", "msg": "", "rc": 0, "start": "2025-12-17 18:20:19.540396", "stderr": "", "stderr_lines": [], "stdout": "0.13", "stdout_lines": ["0.13"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004629", "end": "2025-12-17 18:20:19.577071", "msg": "", "rc": 0, "start": "2025-12-17 18:20:19.572442", "stderr": "", "stderr_lines": [], "stdout": "0.46", "stdout_lines": ["0.46"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005461", "end": "2025-12-17 18:20:19.593167", "msg": "", "rc": 0, "start": "2025-12-17 18:20:19.587706", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004525", "end": "2025-12-17 18:20:19.611051", "msg": "", "rc": 0, "start": "2025-12-17 18:20:19.606526", "stderr": "", "stderr_lines": [], "stdout": "1.01", "stdout_lines": ["1.01"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006442", "end": "2025-12-17 18:20:19.613932", "msg": "", "rc": 0, "start": "2025-12-17 18:20:19.607490", "stderr": "", "stderr_lines": [], "stdout": "0.67", "stdout_lines": ["0.67"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004319", "end": "2025-12-17 18:19:53.404313", "msg": "", "rc": 0, "start": "2025-12-17 18:19:53.399994", "stderr": "", "stderr_lines": [], "stdout": "0.06", "stdout_lines": ["0.06"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005292", "end": "2025-12-17 18:19:46.909265", "msg": "", "rc": 0, "start": "2025-12-17 18:19:46.903973", "stderr": "", "stderr_lines": [], "stdout": "0.02", "stdout_lines": ["0.02"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010138", "end": "2025-12-17 18:20:20.333922", "msg": "", "rc": 0, "start": "2025-12-17 18:20:20.323784", "stderr": "", "stderr_lines": [], "stdout": "0.18", "stdout_lines": ["0.18"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011203", "end": "2025-12-17 18:20:20.378653", "msg": "", "rc": 0, "start": "2025-12-17 18:20:20.367450", "stderr": "", "stderr_lines": [], "stdout": "0.25", "stdout_lines": ["0.25"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005604", "end": "2025-12-17 18:20:20.527060", "msg": "", "rc": 0, "start": "2025-12-17 18:20:20.521456", "stderr": "", "stderr_lines": [], "stdout": "0.01", "stdout_lines": ["0.01"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005407", "end": "2025-12-17 18:19:50.099441", "msg": "", "rc": 0, "start": "2025-12-17 18:19:50.094034", "stderr": "", "stderr_lines": [], "stdout": "0.46", "stdout_lines": ["0.46"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004351", "end": "2025-12-17 18:19:56.793947", "msg": "", "rc": 0, "start": "2025-12-17 18:19:56.789596", "stderr": "", "stderr_lines": [], "stdout": "0.22", "stdout_lines": ["0.22"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005806", "end": "2025-12-17 15:20:20.831004", "msg": "", "rc": 0, "start": "2025-12-17 15:20:20.825198", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005214", "end": "2025-12-17 18:20:20.938748", "msg": "", "rc": 0, "start": "2025-12-17 18:20:20.933534", "stderr": "", "stderr_lines": [], "stdout": "0.07", "stdout_lines": ["0.07"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006900", "end": "2025-12-17 18:20:21.862983", "msg": "", "rc": 0, "start": "2025-12-17 18:20:21.856083", "stderr": "", "stderr_lines": [], "stdout": "1.26", "stdout_lines": ["1.26"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.027228", "end": "2025-12-17 18:20:21.216640", "msg": "", "rc": 0, "start": "2025-12-17 18:20:21.189412", "stderr": "", "stderr_lines": [], "stdout": "0.21", "stdout_lines": ["0.21"]} + +TASK [Display health status] *************************************************** +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:20:11 up 22 days, 5:11, 1 user, load average: 0.06, 0.06, 0.07\nDisk Usage: 23%\nMemory Usage: 77.6%\nCPU Load: 0.13\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:20:11 up 3 days, 7:52, 1 user, load average: 0.26, 0.19, 0.19\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.46\nCPU Temp: 47.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:20:11 up 22 days, 5:31, 1 user, load average: 0.92, 1.17, 1.12\nDisk Usage: 14%\nMemory Usage: 49.3%\nCPU Load: 1.01\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:20:11 up 22 days, 6:44, 1 user, load average: 0.61, 0.64, 0.63\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.67\nCPU Temp: 52.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:20:11 up 22 days, 7:30, 1 user, load average: 0.09, 0.09, 0.08\nDisk Usage: 9%\nMemory Usage: 9.1%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:20:13 up 15 days, 7:46, 1 user, load average: 0.14, 0.10, 0.09\nDisk Usage: 21%\nMemory Usage: 19.8%\nCPU Load: 0.21\nCPU Temp: 39.1°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:20:12 up 194 days, 9:53, 1 user, load average: 0.19, 0.20, 0.18\nDisk Usage: 6%\nMemory Usage: 13.0%\nCPU Load: 0.25\nCPU Temp: 36.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:20:12 up 194 days, 9:53, 1 user, load average: 0.19, 0.14, 0.10\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.18\nCPU Temp: 31.6°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:19:45 up 11 days, 6:09, 0 user, load average: 0.07, 0.11, 0.17\nDisk Usage: 48%\nMemory Usage: 70.6%\nCPU Load: 0.06\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:19:39 up 18 days, 2:21, 0 user, load average: 0.02, 0.04, 0.00\nDisk Usage: 25%\nMemory Usage: 69.1%\nCPU Load: 0.02\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:20:12 up 3 days, 7:51, 1 user, load average: 0.01, 0.05, 0.00\nDisk Usage: 1%\nMemory Usage: 35.6%\nCPU Load: 0.01\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:19:42 up 20 days, 21:14, 0 user, load average: 0.45, 0.39, 0.42\nDisk Usage: 28%\nMemory Usage: 27.4%\nCPU Load: 0.46\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:19:48 up 17 days, 7:35, 0 user, load average: 0.27, 0.50, 0.46\nDisk Usage: 76%\nMemory Usage: 57.7%\nCPU Load: 0.22\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 3:20PM up 22 days, 5:10, 1 user, load averages: 0.22, 0.29, 0.25\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:20:13 up 3 days, 7:51, 1 user, load average: 0.07, 0.04, 0.01\nDisk Usage: 79%\nMemory Usage: 14.0%\nCPU Load: 0.07\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:20:13 up 38 min, 1 user, load average: 1.12, 1.15, 1.09\nDisk Usage: 1%\nMemory Usage: 11.9%\nCPU Load: 1.26\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T23:20:23.076817+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_232522_5dad01_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_232522_5dad01_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..30bbb59 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_232522_5dad01_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `fe5bd7cd994e425eb689943ce7518f2c` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T23:25:00.004481+00:00 | +| **Fin** | 2025-12-17T23:25:22.201123+00:00 | +| **Durée** | 22.2s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003354", "end": "2025-12-17 18:25:11.413108", "msg": "", "rc": 0, "start": "2025-12-17 18:25:11.409754", "stderr": "", "stderr_lines": [], "stdout": " 18:25:11 up 22 days, 5:16, 1 user, load average: 0.20, 0.10, 0.09", "stdout_lines": [" 18:25:11 up 22 days, 5:16, 1 user, load average: 0.20, 0.10, 0.09"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003936", "end": "2025-12-17 18:25:11.434399", "msg": "", "rc": 0, "start": "2025-12-17 18:25:11.430463", "stderr": "", "stderr_lines": [], "stdout": " 18:25:11 up 22 days, 7:35, 1 user, load average: 0.02, 0.05, 0.07", "stdout_lines": [" 18:25:11 up 22 days, 7:35, 1 user, load average: 0.02, 0.05, 0.07"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004006", "end": "2025-12-17 18:25:11.449110", "msg": "", "rc": 0, "start": "2025-12-17 18:25:11.445104", "stderr": "", "stderr_lines": [], "stdout": " 18:25:11 up 22 days, 6:49, 1 user, load average: 0.59, 0.68, 0.65", "stdout_lines": [" 18:25:11 up 22 days, 6:49, 1 user, load average: 0.59, 0.68, 0.65"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002926", "end": "2025-12-17 18:25:11.455739", "msg": "", "rc": 0, "start": "2025-12-17 18:25:11.452813", "stderr": "", "stderr_lines": [], "stdout": " 18:25:11 up 3 days, 7:57, 1 user, load average: 0.15, 0.17, 0.18", "stdout_lines": [" 18:25:11 up 3 days, 7:57, 1 user, load average: 0.15, 0.17, 0.18"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002841", "end": "2025-12-17 18:24:45.271059", "msg": "", "rc": 0, "start": "2025-12-17 18:24:45.268218", "stderr": "", "stderr_lines": [], "stdout": " 18:24:45 up 11 days, 6:14, 0 user, load average: 0.13, 0.08, 0.13", "stdout_lines": [" 18:24:45 up 11 days, 6:14, 0 user, load average: 0.13, 0.08, 0.13"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008404", "end": "2025-12-17 18:25:12.133084", "msg": "", "rc": 0, "start": "2025-12-17 18:25:12.124680", "stderr": "", "stderr_lines": [], "stdout": " 18:25:12 up 194 days, 9:58, 1 user, load average: 0.25, 0.17, 0.11", "stdout_lines": [" 18:25:12 up 194 days, 9:58, 1 user, load average: 0.25, 0.17, 0.11"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009359", "end": "2025-12-17 18:25:12.239472", "msg": "", "rc": 0, "start": "2025-12-17 18:25:12.230113", "stderr": "", "stderr_lines": [], "stdout": " 18:25:12 up 194 days, 9:58, 1 user, load average: 0.45, 0.31, 0.22", "stdout_lines": [" 18:25:12 up 194 days, 9:58, 1 user, load average: 0.45, 0.31, 0.22"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.003496", "end": "2025-12-17 18:25:12.425675", "msg": "", "rc": 0, "start": "2025-12-17 18:25:11.422179", "stderr": "", "stderr_lines": [], "stdout": " 18:25:11 up 22 days, 5:36, 1 user, load average: 0.98, 0.98, 1.04", "stdout_lines": [" 18:25:11 up 22 days, 5:36, 1 user, load average: 0.98, 0.98, 1.04"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003303", "end": "2025-12-17 18:24:39.193193", "msg": "", "rc": 0, "start": "2025-12-17 18:24:39.189890", "stderr": "", "stderr_lines": [], "stdout": " 18:24:39 up 18 days, 2:26, 0 user, load average: 0.06, 0.05, 0.00", "stdout_lines": [" 18:24:39 up 18 days, 2:26, 0 user, load average: 0.06, 0.05, 0.00"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004991", "end": "2025-12-17 18:25:12.606955", "msg": "", "rc": 0, "start": "2025-12-17 18:25:12.601964", "stderr": "", "stderr_lines": [], "stdout": " 18:25:12 up 3 days, 7:56, 1 user, load average: 0.10, 0.06, 0.01", "stdout_lines": [" 18:25:12 up 3 days, 7:56, 1 user, load average: 0.10, 0.06, 0.01"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003205", "end": "2025-12-17 18:24:42.171046", "msg": "", "rc": 0, "start": "2025-12-17 18:24:42.167841", "stderr": "", "stderr_lines": [], "stdout": " 18:24:42 up 20 days, 21:19, 0 user, load average: 0.68, 0.47, 0.43", "stdout_lines": [" 18:24:42 up 20 days, 21:19, 0 user, load average: 0.68, 0.47, 0.43"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004175", "end": "2025-12-17 15:25:12.858124", "msg": "", "rc": 0, "start": "2025-12-17 15:25:12.853949", "stderr": "", "stderr_lines": [], "stdout": " 3:25PM up 22 days, 5:15, 1 user, load averages: 0.05, 0.19, 0.22", "stdout_lines": [" 3:25PM up 22 days, 5:15, 1 user, load averages: 0.05, 0.19, 0.22"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002754", "end": "2025-12-17 18:24:48.825079", "msg": "", "rc": 0, "start": "2025-12-17 18:24:48.822325", "stderr": "", "stderr_lines": [], "stdout": " 18:24:48 up 17 days, 7:40, 0 user, load average: 0.41, 0.56, 0.50", "stdout_lines": [" 18:24:48 up 17 days, 7:40, 0 user, load average: 0.41, 0.56, 0.50"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019564", "end": "2025-12-17 18:25:12.813600", "msg": "", "rc": 0, "start": "2025-12-17 18:25:12.794036", "stderr": "", "stderr_lines": [], "stdout": " 18:25:12 up 15 days, 7:51, 1 user, load average: 0.21, 0.11, 0.10", "stdout_lines": [" 18:25:12 up 15 days, 7:51, 1 user, load average: 0.21, 0.11, 0.10"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003750", "end": "2025-12-17 18:25:13.032702", "msg": "", "rc": 0, "start": "2025-12-17 18:25:13.028952", "stderr": "", "stderr_lines": [], "stdout": " 18:25:13 up 3 days, 7:56, 1 user, load average: 0.63, 0.26, 0.09", "stdout_lines": [" 18:25:13 up 3 days, 7:56, 1 user, load average: 0.63, 0.26, 0.09"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.007916", "end": "2025-12-17 18:25:13.200737", "msg": "", "rc": 0, "start": "2025-12-17 18:25:13.192821", "stderr": "", "stderr_lines": [], "stdout": " 18:25:13 up 43 min, 1 user, load average: 1.39, 1.17, 1.11", "stdout_lines": [" 18:25:13 up 43 min, 1 user, load average: 1.39, 1.17, 1.11"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004048", "end": "2025-12-17 18:25:13.463848", "msg": "", "rc": 0, "start": "2025-12-17 18:25:13.459800", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004082", "end": "2025-12-17 18:25:13.488418", "msg": "", "rc": 0, "start": "2025-12-17 18:25:13.484336", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004617", "end": "2025-12-17 18:25:13.490897", "msg": "", "rc": 0, "start": "2025-12-17 18:25:13.486280", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005174", "end": "2025-12-17 18:25:13.514633", "msg": "", "rc": 0, "start": "2025-12-17 18:25:13.509459", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005665", "end": "2025-12-17 18:25:13.523085", "msg": "", "rc": 0, "start": "2025-12-17 18:25:13.517420", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004856", "end": "2025-12-17 18:24:47.323321", "msg": "", "rc": 0, "start": "2025-12-17 18:24:47.318465", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005641", "end": "2025-12-17 18:24:40.804463", "msg": "", "rc": 0, "start": "2025-12-17 18:24:40.798822", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011340", "end": "2025-12-17 18:25:14.198503", "msg": "", "rc": 0, "start": "2025-12-17 18:25:14.187163", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010487", "end": "2025-12-17 18:25:14.210267", "msg": "", "rc": 0, "start": "2025-12-17 18:25:14.199780", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005855", "end": "2025-12-17 18:25:14.448665", "msg": "", "rc": 0, "start": "2025-12-17 18:25:14.442810", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006229", "end": "2025-12-17 18:24:43.971072", "msg": "", "rc": 0, "start": "2025-12-17 18:24:43.964843", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006156", "end": "2025-12-17 15:25:14.654682", "msg": "", "rc": 0, "start": "2025-12-17 15:25:14.648526", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005200", "end": "2025-12-17 18:24:50.685455", "msg": "", "rc": 0, "start": "2025-12-17 18:24:50.680255", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005287", "end": "2025-12-17 18:25:14.851393", "msg": "", "rc": 0, "start": "2025-12-17 18:25:14.846106", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.020202", "end": "2025-12-17 18:25:15.089357", "msg": "", "rc": 0, "start": "2025-12-17 18:25:15.069155", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025181", "end": "2025-12-17 18:25:14.841423", "msg": "", "rc": 0, "start": "2025-12-17 18:25:14.816242", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004300", "end": "2025-12-17 18:25:15.349721", "msg": "", "rc": 0, "start": "2025-12-17 18:25:15.345421", "stderr": "", "stderr_lines": [], "stdout": "77.7%", "stdout_lines": ["77.7%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004206", "end": "2025-12-17 18:25:15.375409", "msg": "", "rc": 0, "start": "2025-12-17 18:25:15.371203", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004809", "end": "2025-12-17 18:25:15.391486", "msg": "", "rc": 0, "start": "2025-12-17 18:25:15.386677", "stderr": "", "stderr_lines": [], "stdout": "49.4%", "stdout_lines": ["49.4%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004636", "end": "2025-12-17 18:25:15.401708", "msg": "", "rc": 0, "start": "2025-12-17 18:25:15.397072", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005806", "end": "2025-12-17 18:25:15.414551", "msg": "", "rc": 0, "start": "2025-12-17 18:25:15.408745", "stderr": "", "stderr_lines": [], "stdout": "59.8%", "stdout_lines": ["59.8%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003569", "end": "2025-12-17 18:24:49.227190", "msg": "", "rc": 0, "start": "2025-12-17 18:24:49.223621", "stderr": "", "stderr_lines": [], "stdout": "70.7%", "stdout_lines": ["70.7%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004553", "end": "2025-12-17 18:24:42.689972", "msg": "", "rc": 0, "start": "2025-12-17 18:24:42.685419", "stderr": "", "stderr_lines": [], "stdout": "69.1%", "stdout_lines": ["69.1%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010928", "end": "2025-12-17 18:25:16.054069", "msg": "", "rc": 0, "start": "2025-12-17 18:25:16.043141", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011963", "end": "2025-12-17 18:25:16.090991", "msg": "", "rc": 0, "start": "2025-12-17 18:25:16.079028", "stderr": "", "stderr_lines": [], "stdout": "12.8%", "stdout_lines": ["12.8%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006121", "end": "2025-12-17 18:25:16.347580", "msg": "", "rc": 0, "start": "2025-12-17 18:25:16.341459", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004350", "end": "2025-12-17 18:24:45.855657", "msg": "", "rc": 0, "start": "2025-12-17 18:24:45.851307", "stderr": "", "stderr_lines": [], "stdout": "27.2%", "stdout_lines": ["27.2%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003674", "end": "2025-12-17 18:24:52.499066", "msg": "", "rc": 0, "start": "2025-12-17 18:24:52.495392", "stderr": "", "stderr_lines": [], "stdout": "56.9%", "stdout_lines": ["56.9%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005165", "end": "2025-12-17 15:25:16.539482", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 15:25:16.534317", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005472", "end": "2025-12-17 18:25:16.775258", "msg": "", "rc": 0, "start": "2025-12-17 18:25:16.769786", "stderr": "", "stderr_lines": [], "stdout": "14.0%", "stdout_lines": ["14.0%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.009291", "end": "2025-12-17 18:25:17.041847", "msg": "", "rc": 0, "start": "2025-12-17 18:25:17.032556", "stderr": "", "stderr_lines": [], "stdout": "11.9%", "stdout_lines": ["11.9%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.026240", "end": "2025-12-17 18:25:16.736337", "msg": "", "rc": 0, "start": "2025-12-17 18:25:16.710097", "stderr": "", "stderr_lines": [], "stdout": "19.7%", "stdout_lines": ["19.7%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005396", "end": "2025-12-17 18:25:17.245461", "msg": "", "rc": 0, "start": "2025-12-17 18:25:17.240065", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004867", "end": "2025-12-17 18:25:17.269687", "msg": "", "rc": 0, "start": "2025-12-17 18:25:17.264820", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005926", "end": "2025-12-17 18:25:17.274028", "msg": "", "rc": 0, "start": "2025-12-17 18:25:17.268102", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003437", "end": "2025-12-17 18:25:17.301878", "msg": "", "rc": 0, "start": "2025-12-17 18:25:17.298441", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006393", "end": "2025-12-17 18:25:17.309866", "msg": "", "rc": 0, "start": "2025-12-17 18:25:17.303473", "stderr": "", "stderr_lines": [], "stdout": "52.5°C", "stdout_lines": ["52.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003079", "end": "2025-12-17 18:24:51.141358", "msg": "", "rc": 0, "start": "2025-12-17 18:24:51.138279", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003314", "end": "2025-12-17 18:24:44.587742", "msg": "", "rc": 0, "start": "2025-12-17 18:24:44.584428", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011861", "end": "2025-12-17 18:25:17.938761", "msg": "", "rc": 0, "start": "2025-12-17 18:25:17.926900", "stderr": "", "stderr_lines": [], "stdout": "33.1°C", "stdout_lines": ["33.1°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012868", "end": "2025-12-17 18:25:18.060389", "msg": "", "rc": 0, "start": "2025-12-17 18:25:18.047521", "stderr": "", "stderr_lines": [], "stdout": "37.0°C", "stdout_lines": ["37.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003301", "end": "2025-12-17 18:25:18.273349", "msg": "", "rc": 0, "start": "2025-12-17 18:25:18.270048", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003110", "end": "2025-12-17 18:24:47.764012", "msg": "", "rc": 0, "start": "2025-12-17 18:24:47.760902", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003205", "end": "2025-12-17 18:24:54.407336", "msg": "", "rc": 0, "start": "2025-12-17 18:24:54.404131", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003829", "end": "2025-12-17 15:25:18.508748", "msg": "", "rc": 0, "start": "2025-12-17 15:25:18.504919", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003003", "end": "2025-12-17 18:25:18.688721", "msg": "", "rc": 0, "start": "2025-12-17 18:25:18.685718", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004680", "end": "2025-12-17 18:25:19.039671", "msg": "", "rc": 0, "start": "2025-12-17 18:25:19.034991", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.032252", "end": "2025-12-17 18:25:18.690507", "msg": "", "rc": 0, "start": "2025-12-17 18:25:18.658255", "stderr": "", "stderr_lines": [], "stdout": "37.3°C", "stdout_lines": ["37.3°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004121", "end": "2025-12-17 18:25:19.226310", "msg": "", "rc": 0, "start": "2025-12-17 18:25:19.222189", "stderr": "", "stderr_lines": [], "stdout": "0.18", "stdout_lines": ["0.18"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.003995", "end": "2025-12-17 18:25:19.255350", "msg": "", "rc": 0, "start": "2025-12-17 18:25:19.251355", "stderr": "", "stderr_lines": [], "stdout": "0.20", "stdout_lines": ["0.20"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005155", "end": "2025-12-17 18:25:19.279430", "msg": "", "rc": 0, "start": "2025-12-17 18:25:19.274275", "stderr": "", "stderr_lines": [], "stdout": "0.02", "stdout_lines": ["0.02"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004320", "end": "2025-12-17 18:25:19.279833", "msg": "", "rc": 0, "start": "2025-12-17 18:25:19.275513", "stderr": "", "stderr_lines": [], "stdout": "1.14", "stdout_lines": ["1.14"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005452", "end": "2025-12-17 18:25:19.294714", "msg": "", "rc": 0, "start": "2025-12-17 18:25:19.289262", "stderr": "", "stderr_lines": [], "stdout": "0.82", "stdout_lines": ["0.82"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004215", "end": "2025-12-17 18:24:53.067715", "msg": "", "rc": 0, "start": "2025-12-17 18:24:53.063500", "stderr": "", "stderr_lines": [], "stdout": "0.12", "stdout_lines": ["0.12"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005112", "end": "2025-12-17 18:24:46.580439", "msg": "", "rc": 0, "start": "2025-12-17 18:24:46.575327", "stderr": "", "stderr_lines": [], "stdout": "0.06", "stdout_lines": ["0.06"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011232", "end": "2025-12-17 18:25:19.968159", "msg": "", "rc": 0, "start": "2025-12-17 18:25:19.956927", "stderr": "", "stderr_lines": [], "stdout": "0.41", "stdout_lines": ["0.41"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010087", "end": "2025-12-17 18:25:19.999958", "msg": "", "rc": 0, "start": "2025-12-17 18:25:19.989871", "stderr": "", "stderr_lines": [], "stdout": "0.22", "stdout_lines": ["0.22"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005493", "end": "2025-12-17 18:25:20.190237", "msg": "", "rc": 0, "start": "2025-12-17 18:25:20.184744", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005024", "end": "2025-12-17 18:24:49.738129", "msg": "", "rc": 0, "start": "2025-12-17 18:24:49.733105", "stderr": "", "stderr_lines": [], "stdout": "0.57", "stdout_lines": ["0.57"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005746", "end": "2025-12-17 15:25:20.432406", "msg": "", "rc": 0, "start": "2025-12-17 15:25:20.426660", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004196", "end": "2025-12-17 18:24:56.421315", "msg": "", "rc": 0, "start": "2025-12-17 18:24:56.417119", "stderr": "", "stderr_lines": [], "stdout": "0.50", "stdout_lines": ["0.50"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005140", "end": "2025-12-17 18:25:20.597084", "msg": "", "rc": 0, "start": "2025-12-17 18:25:20.591944", "stderr": "", "stderr_lines": [], "stdout": "0.82", "stdout_lines": ["0.82"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.007255", "end": "2025-12-17 18:25:21.045128", "msg": "", "rc": 0, "start": "2025-12-17 18:25:21.037873", "stderr": "", "stderr_lines": [], "stdout": "1.48", "stdout_lines": ["1.48"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.028337", "end": "2025-12-17 18:25:20.835717", "msg": "", "rc": 0, "start": "2025-12-17 18:25:20.807380", "stderr": "", "stderr_lines": [], "stdout": "0.27", "stdout_lines": ["0.27"]} + +TASK [Display health status] *************************************************** +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:25:11 up 22 days, 5:16, 1 user, load average: 0.20, 0.10, 0.09\nDisk Usage: 23%\nMemory Usage: 77.7%\nCPU Load: 0.18\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:25:11 up 3 days, 7:57, 1 user, load average: 0.15, 0.17, 0.18\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.20\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:25:11 up 22 days, 5:36, 1 user, load average: 0.98, 0.98, 1.04\nDisk Usage: 14%\nMemory Usage: 49.4%\nCPU Load: 1.14\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:25:11 up 22 days, 6:49, 1 user, load average: 0.59, 0.68, 0.65\nDisk Usage: 14%\nMemory Usage: 59.8%\nCPU Load: 0.82\nCPU Temp: 52.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:25:11 up 22 days, 7:35, 1 user, load average: 0.02, 0.05, 0.07\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.02\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:25:12 up 15 days, 7:51, 1 user, load average: 0.21, 0.11, 0.10\nDisk Usage: 21%\nMemory Usage: 19.7%\nCPU Load: 0.27\nCPU Temp: 37.3°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:25:12 up 194 days, 9:58, 1 user, load average: 0.45, 0.31, 0.22\nDisk Usage: 6%\nMemory Usage: 12.8%\nCPU Load: 0.41\nCPU Temp: 37.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:25:12 up 194 days, 9:58, 1 user, load average: 0.25, 0.17, 0.11\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.22\nCPU Temp: 33.1°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:24:45 up 11 days, 6:14, 0 user, load average: 0.13, 0.08, 0.13\nDisk Usage: 48%\nMemory Usage: 70.7%\nCPU Load: 0.12\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:24:39 up 18 days, 2:26, 0 user, load average: 0.06, 0.05, 0.00\nDisk Usage: 25%\nMemory Usage: 69.1%\nCPU Load: 0.06\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:25:12 up 3 days, 7:56, 1 user, load average: 0.10, 0.06, 0.01\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:24:42 up 20 days, 21:19, 0 user, load average: 0.68, 0.47, 0.43\nDisk Usage: 28%\nMemory Usage: 27.2%\nCPU Load: 0.57\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:24:48 up 17 days, 7:40, 0 user, load average: 0.41, 0.56, 0.50\nDisk Usage: 76%\nMemory Usage: 56.9%\nCPU Load: 0.50\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 3:25PM up 22 days, 5:15, 1 user, load averages: 0.05, 0.19, 0.22\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:25:13 up 3 days, 7:56, 1 user, load average: 0.63, 0.26, 0.09\nDisk Usage: 79%\nMemory Usage: 14.0%\nCPU Load: 0.82\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:25:13 up 43 min, 1 user, load average: 1.39, 1.17, 1.11\nDisk Usage: 1%\nMemory Usage: 11.9%\nCPU Load: 1.48\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T23:25:22.241242+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_233023_eb43cc_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_233023_eb43cc_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..497327a --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_233023_eb43cc_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `f3670e28722c4d67a2e7ea1e0254209b` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T23:30:00.000942+00:00 | +| **Fin** | 2025-12-17T23:30:23.362224+00:00 | +| **Durée** | 23.4s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003331", "end": "2025-12-17 18:30:11.866448", "msg": "", "rc": 0, "start": "2025-12-17 18:30:11.863117", "stderr": "", "stderr_lines": [], "stdout": " 18:30:11 up 22 days, 5:21, 1 user, load average: 0.20, 0.17, 0.11", "stdout_lines": [" 18:30:11 up 22 days, 5:21, 1 user, load average: 0.20, 0.17, 0.11"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003489", "end": "2025-12-17 18:30:11.871208", "msg": "", "rc": 0, "start": "2025-12-17 18:30:11.867719", "stderr": "", "stderr_lines": [], "stdout": " 18:30:11 up 22 days, 5:41, 1 user, load average: 0.91, 0.90, 0.98", "stdout_lines": [" 18:30:11 up 22 days, 5:41, 1 user, load average: 0.91, 0.90, 0.98"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003552", "end": "2025-12-17 18:30:11.877227", "msg": "", "rc": 0, "start": "2025-12-17 18:30:11.873675", "stderr": "", "stderr_lines": [], "stdout": " 18:30:11 up 22 days, 7:40, 1 user, load average: 0.09, 0.06, 0.07", "stdout_lines": [" 18:30:11 up 22 days, 7:40, 1 user, load average: 0.09, 0.06, 0.07"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004083", "end": "2025-12-17 18:30:11.896959", "msg": "", "rc": 0, "start": "2025-12-17 18:30:11.892876", "stderr": "", "stderr_lines": [], "stdout": " 18:30:11 up 22 days, 6:54, 1 user, load average: 1.13, 0.85, 0.73", "stdout_lines": [" 18:30:11 up 22 days, 6:54, 1 user, load average: 1.13, 0.85, 0.73"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002815", "end": "2025-12-17 18:30:11.905022", "msg": "", "rc": 0, "start": "2025-12-17 18:30:11.902207", "stderr": "", "stderr_lines": [], "stdout": " 18:30:11 up 3 days, 8:02, 1 user, load average: 0.17, 0.23, 0.19", "stdout_lines": [" 18:30:11 up 3 days, 8:02, 1 user, load average: 0.17, 0.23, 0.19"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002966", "end": "2025-12-17 18:29:45.707497", "msg": "", "rc": 0, "start": "2025-12-17 18:29:45.704531", "stderr": "", "stderr_lines": [], "stdout": " 18:29:45 up 11 days, 6:19, 0 user, load average: 0.00, 0.03, 0.08", "stdout_lines": [" 18:29:45 up 11 days, 6:19, 0 user, load average: 0.00, 0.03, 0.08"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003563", "end": "2025-12-17 18:29:39.170173", "msg": "", "rc": 0, "start": "2025-12-17 18:29:39.166610", "stderr": "", "stderr_lines": [], "stdout": " 18:29:39 up 18 days, 2:31, 0 user, load average: 0.00, 0.01, 0.00", "stdout_lines": [" 18:29:39 up 18 days, 2:31, 0 user, load average: 0.00, 0.01, 0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008473", "end": "2025-12-17 18:30:12.563260", "msg": "", "rc": 0, "start": "2025-12-17 18:30:12.554787", "stderr": "", "stderr_lines": [], "stdout": " 18:30:12 up 194 days, 10:03, 1 user, load average: 0.30, 0.18, 0.11", "stdout_lines": [" 18:30:12 up 194 days, 10:03, 1 user, load average: 0.30, 0.18, 0.11"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009265", "end": "2025-12-17 18:30:12.585621", "msg": "", "rc": 0, "start": "2025-12-17 18:30:12.576356", "stderr": "", "stderr_lines": [], "stdout": " 18:30:12 up 194 days, 10:03, 1 user, load average: 0.38, 0.30, 0.23", "stdout_lines": [" 18:30:12 up 194 days, 10:03, 1 user, load average: 0.38, 0.30, 0.23"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004749", "end": "2025-12-17 18:30:12.842147", "msg": "", "rc": 0, "start": "2025-12-17 18:30:12.837398", "stderr": "", "stderr_lines": [], "stdout": " 18:30:12 up 3 days, 8:01, 1 user, load average: 0.28, 0.14, 0.04", "stdout_lines": [" 18:30:12 up 3 days, 8:01, 1 user, load average: 0.28, 0.14, 0.04"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003256", "end": "2025-12-17 18:29:42.332198", "msg": "", "rc": 0, "start": "2025-12-17 18:29:42.328942", "stderr": "", "stderr_lines": [], "stdout": " 18:29:42 up 20 days, 21:24, 0 user, load average: 0.39, 0.48, 0.45", "stdout_lines": [" 18:29:42 up 20 days, 21:24, 0 user, load average: 0.39, 0.48, 0.45"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004166", "end": "2025-12-17 15:30:13.034001", "msg": "", "rc": 0, "start": "2025-12-17 15:30:13.029835", "stderr": "", "stderr_lines": [], "stdout": " 3:30PM up 22 days, 5:20, 1 user, load averages: 0.39, 0.30, 0.25", "stdout_lines": [" 3:30PM up 22 days, 5:20, 1 user, load averages: 0.39, 0.30, 0.25"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003192", "end": "2025-12-17 18:29:49.015622", "msg": "", "rc": 0, "start": "2025-12-17 18:29:49.012430", "stderr": "", "stderr_lines": [], "stdout": " 18:29:49 up 17 days, 7:45, 0 user, load average: 0.72, 0.56, 0.49", "stdout_lines": [" 18:29:49 up 17 days, 7:45, 0 user, load average: 0.72, 0.56, 0.49"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008645", "end": "2025-12-17 18:30:14.112317", "msg": "", "rc": 0, "start": "2025-12-17 18:30:14.103672", "stderr": "", "stderr_lines": [], "stdout": " 18:30:14 up 48 min, 1 user, load average: 1.28, 1.15, 1.11", "stdout_lines": [" 18:30:14 up 48 min, 1 user, load average: 1.28, 1.15, 1.11"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003718", "end": "2025-12-17 18:30:13.259181", "msg": "", "rc": 0, "start": "2025-12-17 18:30:13.255463", "stderr": "", "stderr_lines": [], "stdout": " 18:30:13 up 3 days, 8:01, 1 user, load average: 0.01, 0.17, 0.09", "stdout_lines": [" 18:30:13 up 3 days, 8:01, 1 user, load average: 0.01, 0.17, 0.09"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019292", "end": "2025-12-17 18:30:13.233908", "msg": "", "rc": 0, "start": "2025-12-17 18:30:13.214616", "stderr": "", "stderr_lines": [], "stdout": " 18:30:13 up 15 days, 7:56, 1 user, load average: 0.33, 0.16, 0.11", "stdout_lines": [" 18:30:13 up 15 days, 7:56, 1 user, load average: 0.33, 0.16, 0.11"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004110", "end": "2025-12-17 18:30:13.757063", "msg": "", "rc": 0, "start": "2025-12-17 18:30:13.752953", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004527", "end": "2025-12-17 18:30:13.763885", "msg": "", "rc": 0, "start": "2025-12-17 18:30:13.759358", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004010", "end": "2025-12-17 18:30:13.769505", "msg": "", "rc": 0, "start": "2025-12-17 18:30:13.765495", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004707", "end": "2025-12-17 18:30:13.800449", "msg": "", "rc": 0, "start": "2025-12-17 18:30:13.795742", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005521", "end": "2025-12-17 18:30:13.817801", "msg": "", "rc": 0, "start": "2025-12-17 18:30:13.812280", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004728", "end": "2025-12-17 18:29:47.578984", "msg": "", "rc": 0, "start": "2025-12-17 18:29:47.574256", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005612", "end": "2025-12-17 18:29:41.083361", "msg": "", "rc": 0, "start": "2025-12-17 18:29:41.077749", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010467", "end": "2025-12-17 18:30:14.485144", "msg": "", "rc": 0, "start": "2025-12-17 18:30:14.474677", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011592", "end": "2025-12-17 18:30:14.515340", "msg": "", "rc": 0, "start": "2025-12-17 18:30:14.503748", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006916", "end": "2025-12-17 18:30:14.698638", "msg": "", "rc": 0, "start": "2025-12-17 18:30:14.691722", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005270", "end": "2025-12-17 18:29:44.240576", "msg": "", "rc": 0, "start": "2025-12-17 18:29:44.235306", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005325", "end": "2025-12-17 15:30:14.953949", "msg": "", "rc": 0, "start": "2025-12-17 15:30:14.948624", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004697", "end": "2025-12-17 18:29:50.925421", "msg": "", "rc": 0, "start": "2025-12-17 18:29:50.920724", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005760", "end": "2025-12-17 18:30:15.114855", "msg": "", "rc": 0, "start": "2025-12-17 18:30:15.109095", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.020224", "end": "2025-12-17 18:30:16.108423", "msg": "", "rc": 0, "start": "2025-12-17 18:30:16.088199", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.024944", "end": "2025-12-17 18:30:15.145526", "msg": "", "rc": 0, "start": "2025-12-17 18:30:15.120582", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004423", "end": "2025-12-17 18:30:15.669308", "msg": "", "rc": 0, "start": "2025-12-17 18:30:15.664885", "stderr": "", "stderr_lines": [], "stdout": "77.7%", "stdout_lines": ["77.7%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004257", "end": "2025-12-17 18:30:15.680252", "msg": "", "rc": 0, "start": "2025-12-17 18:30:15.675995", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005279", "end": "2025-12-17 18:30:15.715356", "msg": "", "rc": 0, "start": "2025-12-17 18:30:15.710077", "stderr": "", "stderr_lines": [], "stdout": "9.1%", "stdout_lines": ["9.1%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005829", "end": "2025-12-17 18:30:15.733904", "msg": "", "rc": 0, "start": "2025-12-17 18:30:15.728075", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004944", "end": "2025-12-17 18:30:15.728115", "msg": "", "rc": 0, "start": "2025-12-17 18:30:15.723171", "stderr": "", "stderr_lines": [], "stdout": "49.3%", "stdout_lines": ["49.3%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003974", "end": "2025-12-17 18:29:49.515788", "msg": "", "rc": 0, "start": "2025-12-17 18:29:49.511814", "stderr": "", "stderr_lines": [], "stdout": "70.4%", "stdout_lines": ["70.4%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004176", "end": "2025-12-17 18:29:42.992168", "msg": "", "rc": 0, "start": "2025-12-17 18:29:42.987992", "stderr": "", "stderr_lines": [], "stdout": "69.0%", "stdout_lines": ["69.0%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010811", "end": "2025-12-17 18:30:16.363239", "msg": "", "rc": 0, "start": "2025-12-17 18:30:16.352428", "stderr": "", "stderr_lines": [], "stdout": "7.0%", "stdout_lines": ["7.0%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011879", "end": "2025-12-17 18:30:16.388304", "msg": "", "rc": 0, "start": "2025-12-17 18:30:16.376425", "stderr": "", "stderr_lines": [], "stdout": "13.0%", "stdout_lines": ["13.0%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005721", "end": "2025-12-17 18:30:16.630408", "msg": "", "rc": 0, "start": "2025-12-17 18:30:16.624687", "stderr": "", "stderr_lines": [], "stdout": "35.7%", "stdout_lines": ["35.7%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004335", "end": "2025-12-17 18:29:46.158187", "msg": "", "rc": 0, "start": "2025-12-17 18:29:46.153852", "stderr": "", "stderr_lines": [], "stdout": "27.3%", "stdout_lines": ["27.3%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005157", "end": "2025-12-17 15:30:16.838103", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 15:30:16.832946", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003777", "end": "2025-12-17 18:29:52.799930", "msg": "", "rc": 0, "start": "2025-12-17 18:29:52.796153", "stderr": "", "stderr_lines": [], "stdout": "59.7%", "stdout_lines": ["59.7%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005330", "end": "2025-12-17 18:30:17.050533", "msg": "", "rc": 0, "start": "2025-12-17 18:30:17.045203", "stderr": "", "stderr_lines": [], "stdout": "14.0%", "stdout_lines": ["14.0%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.008990", "end": "2025-12-17 18:30:18.145741", "msg": "", "rc": 0, "start": "2025-12-17 18:30:18.136751", "stderr": "", "stderr_lines": [], "stdout": "11.8%", "stdout_lines": ["11.8%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025929", "end": "2025-12-17 18:30:17.045492", "msg": "", "rc": 0, "start": "2025-12-17 18:30:17.019563", "stderr": "", "stderr_lines": [], "stdout": "20.9%", "stdout_lines": ["20.9%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006080", "end": "2025-12-17 18:30:17.566990", "msg": "", "rc": 0, "start": "2025-12-17 18:30:17.560910", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005016", "end": "2025-12-17 18:30:17.574032", "msg": "", "rc": 0, "start": "2025-12-17 18:30:17.569016", "stderr": "", "stderr_lines": [], "stdout": "48.0°C", "stdout_lines": ["48.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005646", "end": "2025-12-17 18:30:17.585850", "msg": "", "rc": 0, "start": "2025-12-17 18:30:17.580204", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003374", "end": "2025-12-17 18:30:17.600658", "msg": "", "rc": 0, "start": "2025-12-17 18:30:17.597284", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006262", "end": "2025-12-17 18:30:17.630937", "msg": "", "rc": 0, "start": "2025-12-17 18:30:17.624675", "stderr": "", "stderr_lines": [], "stdout": "53.0°C", "stdout_lines": ["53.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002805", "end": "2025-12-17 18:29:51.465794", "msg": "", "rc": 0, "start": "2025-12-17 18:29:51.462989", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003157", "end": "2025-12-17 18:29:44.900076", "msg": "", "rc": 0, "start": "2025-12-17 18:29:44.896919", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011594", "end": "2025-12-17 18:30:18.326846", "msg": "", "rc": 0, "start": "2025-12-17 18:30:18.315252", "stderr": "", "stderr_lines": [], "stdout": "33.1°C", "stdout_lines": ["33.1°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012893", "end": "2025-12-17 18:30:18.365775", "msg": "", "rc": 0, "start": "2025-12-17 18:30:18.352882", "stderr": "", "stderr_lines": [], "stdout": "37.0°C", "stdout_lines": ["37.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003347", "end": "2025-12-17 18:30:18.586204", "msg": "", "rc": 0, "start": "2025-12-17 18:30:18.582857", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002946", "end": "2025-12-17 18:29:48.059913", "msg": "", "rc": 0, "start": "2025-12-17 18:29:48.056967", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003825", "end": "2025-12-17 15:30:18.817212", "msg": "", "rc": 0, "start": "2025-12-17 15:30:18.813387", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002597", "end": "2025-12-17 18:29:54.776788", "msg": "", "rc": 0, "start": "2025-12-17 18:29:54.774191", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003695", "end": "2025-12-17 18:30:20.057107", "msg": "", "rc": 0, "start": "2025-12-17 18:30:20.053412", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003155", "end": "2025-12-17 18:30:19.018711", "msg": "", "rc": 0, "start": "2025-12-17 18:30:19.015556", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.030403", "end": "2025-12-17 18:30:19.154761", "msg": "", "rc": 0, "start": "2025-12-17 18:30:19.124358", "stderr": "", "stderr_lines": [], "stdout": "38.7°C", "stdout_lines": ["38.7°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004260", "end": "2025-12-17 18:30:19.688537", "msg": "", "rc": 0, "start": "2025-12-17 18:30:19.684277", "stderr": "", "stderr_lines": [], "stdout": "0.26", "stdout_lines": ["0.26"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004016", "end": "2025-12-17 18:30:19.705369", "msg": "", "rc": 0, "start": "2025-12-17 18:30:19.701353", "stderr": "", "stderr_lines": [], "stdout": "0.22", "stdout_lines": ["0.22"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005019", "end": "2025-12-17 18:30:19.712488", "msg": "", "rc": 0, "start": "2025-12-17 18:30:19.707469", "stderr": "", "stderr_lines": [], "stdout": "0.92", "stdout_lines": ["0.92"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005826", "end": "2025-12-17 18:30:19.741696", "msg": "", "rc": 0, "start": "2025-12-17 18:30:19.735870", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005264", "end": "2025-12-17 18:30:19.755325", "msg": "", "rc": 0, "start": "2025-12-17 18:30:19.750061", "stderr": "", "stderr_lines": [], "stdout": "1.51", "stdout_lines": ["1.51"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004311", "end": "2025-12-17 18:29:53.535540", "msg": "", "rc": 0, "start": "2025-12-17 18:29:53.531229", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004962", "end": "2025-12-17 18:29:47.013226", "msg": "", "rc": 0, "start": "2025-12-17 18:29:47.008264", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.009992", "end": "2025-12-17 18:30:20.438041", "msg": "", "rc": 0, "start": "2025-12-17 18:30:20.428049", "stderr": "", "stderr_lines": [], "stdout": "0.28", "stdout_lines": ["0.28"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011142", "end": "2025-12-17 18:30:20.459741", "msg": "", "rc": 0, "start": "2025-12-17 18:30:20.448599", "stderr": "", "stderr_lines": [], "stdout": "0.35", "stdout_lines": ["0.35"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006147", "end": "2025-12-17 18:30:20.651531", "msg": "", "rc": 0, "start": "2025-12-17 18:30:20.645384", "stderr": "", "stderr_lines": [], "stdout": "0.24", "stdout_lines": ["0.24"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005036", "end": "2025-12-17 18:29:50.170228", "msg": "", "rc": 0, "start": "2025-12-17 18:29:50.165192", "stderr": "", "stderr_lines": [], "stdout": "0.41", "stdout_lines": ["0.41"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005834", "end": "2025-12-17 15:30:20.924536", "msg": "", "rc": 0, "start": "2025-12-17 15:30:20.918702", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004370", "end": "2025-12-17 18:29:56.889645", "msg": "", "rc": 0, "start": "2025-12-17 18:29:56.885275", "stderr": "", "stderr_lines": [], "stdout": "0.69", "stdout_lines": ["0.69"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005370", "end": "2025-12-17 18:30:21.072568", "msg": "", "rc": 0, "start": "2025-12-17 18:30:21.067198", "stderr": "", "stderr_lines": [], "stdout": "0.01", "stdout_lines": ["0.01"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.007265", "end": "2025-12-17 18:30:22.227975", "msg": "", "rc": 0, "start": "2025-12-17 18:30:22.220710", "stderr": "", "stderr_lines": [], "stdout": "1.47", "stdout_lines": ["1.47"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.024541", "end": "2025-12-17 18:30:21.308454", "msg": "", "rc": 0, "start": "2025-12-17 18:30:21.283913", "stderr": "", "stderr_lines": [], "stdout": "0.38", "stdout_lines": ["0.38"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:30:11 up 3 days, 8:02, 1 user, load average: 0.17, 0.23, 0.19\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.22\nCPU Temp: 48.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:30:11 up 22 days, 5:21, 1 user, load average: 0.20, 0.17, 0.11\nDisk Usage: 23%\nMemory Usage: 77.7%\nCPU Load: 0.26\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:30:11 up 22 days, 5:41, 1 user, load average: 0.91, 0.90, 0.98\nDisk Usage: 14%\nMemory Usage: 49.3%\nCPU Load: 0.92\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:30:11 up 22 days, 6:54, 1 user, load average: 1.13, 0.85, 0.73\nDisk Usage: 14%\nMemory Usage: 59.7%\nCPU Load: 1.51\nCPU Temp: 53.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:30:11 up 22 days, 7:40, 1 user, load average: 0.09, 0.06, 0.07\nDisk Usage: 9%\nMemory Usage: 9.1%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:30:13 up 15 days, 7:56, 1 user, load average: 0.33, 0.16, 0.11\nDisk Usage: 21%\nMemory Usage: 20.9%\nCPU Load: 0.38\nCPU Temp: 38.7°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:30:12 up 194 days, 10:03, 1 user, load average: 0.38, 0.30, 0.23\nDisk Usage: 6%\nMemory Usage: 13.0%\nCPU Load: 0.35\nCPU Temp: 37.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:30:12 up 194 days, 10:03, 1 user, load average: 0.30, 0.18, 0.11\nDisk Usage: 3%\nMemory Usage: 7.0%\nCPU Load: 0.28\nCPU Temp: 33.1°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:29:45 up 11 days, 6:19, 0 user, load average: 0.00, 0.03, 0.08\nDisk Usage: 48%\nMemory Usage: 70.4%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:29:39 up 18 days, 2:31, 0 user, load average: 0.00, 0.01, 0.00\nDisk Usage: 25%\nMemory Usage: 69.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:30:12 up 3 days, 8:01, 1 user, load average: 0.28, 0.14, 0.04\nDisk Usage: 1%\nMemory Usage: 35.7%\nCPU Load: 0.24\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:29:42 up 20 days, 21:24, 0 user, load average: 0.39, 0.48, 0.45\nDisk Usage: 28%\nMemory Usage: 27.3%\nCPU Load: 0.41\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:29:49 up 17 days, 7:45, 0 user, load average: 0.72, 0.56, 0.49\nDisk Usage: 76%\nMemory Usage: 59.7%\nCPU Load: 0.69\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 3:30PM up 22 days, 5:20, 1 user, load averages: 0.39, 0.30, 0.25\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:30:13 up 3 days, 8:01, 1 user, load average: 0.01, 0.17, 0.09\nDisk Usage: 79%\nMemory Usage: 14.0%\nCPU Load: 0.01\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:30:14 up 48 min, 1 user, load average: 1.28, 1.15, 1.11\nDisk Usage: 1%\nMemory Usage: 11.8%\nCPU Load: 1.47\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T23:30:23.408071+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_233521_2f3b52_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_233521_2f3b52_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..3932f15 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_233521_2f3b52_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `1cd61b527ddf47cb97a4229681574876` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T23:35:00.003024+00:00 | +| **Fin** | 2025-12-17T23:35:21.702298+00:00 | +| **Durée** | 21.7s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003318", "end": "2025-12-17 18:35:10.959219", "msg": "", "rc": 0, "start": "2025-12-17 18:35:10.955901", "stderr": "", "stderr_lines": [], "stdout": " 18:35:10 up 22 days, 5:26, 1 user, load average: 0.19, 0.15, 0.10", "stdout_lines": [" 18:35:10 up 22 days, 5:26, 1 user, load average: 0.19, 0.15, 0.10"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003978", "end": "2025-12-17 18:35:10.980459", "msg": "", "rc": 0, "start": "2025-12-17 18:35:10.976481", "stderr": "", "stderr_lines": [], "stdout": " 18:35:10 up 22 days, 7:45, 1 user, load average: 0.02, 0.04, 0.06", "stdout_lines": [" 18:35:10 up 22 days, 7:45, 1 user, load average: 0.02, 0.04, 0.06"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002837", "end": "2025-12-17 18:35:10.997401", "msg": "", "rc": 0, "start": "2025-12-17 18:35:10.994564", "stderr": "", "stderr_lines": [], "stdout": " 18:35:10 up 3 days, 8:07, 1 user, load average: 0.14, 0.16, 0.17", "stdout_lines": [" 18:35:10 up 3 days, 8:07, 1 user, load average: 0.14, 0.16, 0.17"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003403", "end": "2025-12-17 18:35:11.007922", "msg": "", "rc": 0, "start": "2025-12-17 18:35:11.004519", "stderr": "", "stderr_lines": [], "stdout": " 18:35:11 up 22 days, 5:46, 1 user, load average: 1.01, 1.03, 1.01", "stdout_lines": [" 18:35:11 up 22 days, 5:46, 1 user, load average: 1.01, 1.03, 1.01"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004201", "end": "2025-12-17 18:35:11.002863", "msg": "", "rc": 0, "start": "2025-12-17 18:35:10.998662", "stderr": "", "stderr_lines": [], "stdout": " 18:35:11 up 22 days, 6:59, 1 user, load average: 1.02, 0.85, 0.75", "stdout_lines": [" 18:35:11 up 22 days, 6:59, 1 user, load average: 1.02, 0.85, 0.75"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002750", "end": "2025-12-17 18:34:44.794156", "msg": "", "rc": 0, "start": "2025-12-17 18:34:44.791406", "stderr": "", "stderr_lines": [], "stdout": " 18:34:44 up 11 days, 6:24, 0 user, load average: 0.67, 0.52, 0.29", "stdout_lines": [" 18:34:44 up 11 days, 6:24, 0 user, load average: 0.67, 0.52, 0.29"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003660", "end": "2025-12-17 18:34:38.285334", "msg": "", "rc": 0, "start": "2025-12-17 18:34:38.281674", "stderr": "", "stderr_lines": [], "stdout": " 18:34:38 up 18 days, 2:36, 0 user, load average: 0.04, 0.06, 0.02", "stdout_lines": [" 18:34:38 up 18 days, 2:36, 0 user, load average: 0.04, 0.06, 0.02"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008385", "end": "2025-12-17 18:35:11.657916", "msg": "", "rc": 0, "start": "2025-12-17 18:35:11.649531", "stderr": "", "stderr_lines": [], "stdout": " 18:35:11 up 194 days, 10:08, 1 user, load average: 0.17, 0.12, 0.09", "stdout_lines": [" 18:35:11 up 194 days, 10:08, 1 user, load average: 0.17, 0.12, 0.09"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009235", "end": "2025-12-17 18:35:11.700740", "msg": "", "rc": 0, "start": "2025-12-17 18:35:11.691505", "stderr": "", "stderr_lines": [], "stdout": " 18:35:11 up 194 days, 10:08, 1 user, load average: 0.26, 0.22, 0.20", "stdout_lines": [" 18:35:11 up 194 days, 10:08, 1 user, load average: 0.26, 0.22, 0.20"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004773", "end": "2025-12-17 18:35:11.929652", "msg": "", "rc": 0, "start": "2025-12-17 18:35:11.924879", "stderr": "", "stderr_lines": [], "stdout": " 18:35:11 up 3 days, 8:06, 1 user, load average: 0.08, 0.06, 0.02", "stdout_lines": [" 18:35:11 up 3 days, 8:06, 1 user, load average: 0.08, 0.06, 0.02"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003426", "end": "2025-12-17 18:34:41.455114", "msg": "", "rc": 0, "start": "2025-12-17 18:34:41.451688", "stderr": "", "stderr_lines": [], "stdout": " 18:34:41 up 20 days, 21:28, 0 user, load average: 0.50, 0.54, 0.48", "stdout_lines": [" 18:34:41 up 20 days, 21:28, 0 user, load average: 0.50, 0.54, 0.48"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002800", "end": "2025-12-17 18:34:48.082371", "msg": "", "rc": 0, "start": "2025-12-17 18:34:48.079571", "stderr": "", "stderr_lines": [], "stdout": " 18:34:48 up 17 days, 7:50, 0 user, load average: 0.32, 0.54, 0.51", "stdout_lines": [" 18:34:48 up 17 days, 7:50, 0 user, load average: 0.32, 0.54, 0.51"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004161", "end": "2025-12-17 15:35:12.146582", "msg": "", "rc": 0, "start": "2025-12-17 15:35:12.142421", "stderr": "", "stderr_lines": [], "stdout": " 3:35PM up 22 days, 5:24, 1 user, load averages: 0.33, 0.28, 0.25", "stdout_lines": [" 3:35PM up 22 days, 5:24, 1 user, load averages: 0.33, 0.28, 0.25"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003929", "end": "2025-12-17 18:35:12.328112", "msg": "", "rc": 0, "start": "2025-12-17 18:35:12.324183", "stderr": "", "stderr_lines": [], "stdout": " 18:35:12 up 3 days, 8:06, 1 user, load average: 0.00, 0.05, 0.06", "stdout_lines": [" 18:35:12 up 3 days, 8:06, 1 user, load average: 0.00, 0.05, 0.06"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008398", "end": "2025-12-17 18:35:12.706446", "msg": "", "rc": 0, "start": "2025-12-17 18:35:12.698048", "stderr": "", "stderr_lines": [], "stdout": " 18:35:12 up 54 min, 1 user, load average: 1.24, 1.15, 1.11", "stdout_lines": [" 18:35:12 up 54 min, 1 user, load average: 1.24, 1.15, 1.11"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019532", "end": "2025-12-17 18:35:12.329748", "msg": "", "rc": 0, "start": "2025-12-17 18:35:12.310216", "stderr": "", "stderr_lines": [], "stdout": " 18:35:12 up 15 days, 8:01, 1 user, load average: 0.16, 0.10, 0.09", "stdout_lines": [" 18:35:12 up 15 days, 8:01, 1 user, load average: 0.16, 0.10, 0.09"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004164", "end": "2025-12-17 18:35:12.846452", "msg": "", "rc": 0, "start": "2025-12-17 18:35:12.842288", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004128", "end": "2025-12-17 18:35:12.864854", "msg": "", "rc": 0, "start": "2025-12-17 18:35:12.860726", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004867", "end": "2025-12-17 18:35:12.883331", "msg": "", "rc": 0, "start": "2025-12-17 18:35:12.878464", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004887", "end": "2025-12-17 18:35:12.900336", "msg": "", "rc": 0, "start": "2025-12-17 18:35:12.895449", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005389", "end": "2025-12-17 18:35:12.907343", "msg": "", "rc": 0, "start": "2025-12-17 18:35:12.901954", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004662", "end": "2025-12-17 18:34:46.765075", "msg": "", "rc": 0, "start": "2025-12-17 18:34:46.760413", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005536", "end": "2025-12-17 18:34:40.157973", "msg": "", "rc": 0, "start": "2025-12-17 18:34:40.152437", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010508", "end": "2025-12-17 18:35:13.577809", "msg": "", "rc": 0, "start": "2025-12-17 18:35:13.567301", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.012285", "end": "2025-12-17 18:35:13.600268", "msg": "", "rc": 0, "start": "2025-12-17 18:35:13.587983", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005939", "end": "2025-12-17 18:35:13.891772", "msg": "", "rc": 0, "start": "2025-12-17 18:35:13.885833", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005263", "end": "2025-12-17 18:34:43.336524", "msg": "", "rc": 0, "start": "2025-12-17 18:34:43.331261", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005278", "end": "2025-12-17 15:35:14.043061", "msg": "", "rc": 0, "start": "2025-12-17 15:35:14.037783", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004912", "end": "2025-12-17 18:34:50.048860", "msg": "", "rc": 0, "start": "2025-12-17 18:34:50.043948", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.018900", "end": "2025-12-17 18:35:14.672892", "msg": "", "rc": 0, "start": "2025-12-17 18:35:14.653992", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005542", "end": "2025-12-17 18:35:14.305834", "msg": "", "rc": 0, "start": "2025-12-17 18:35:14.300292", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.024960", "end": "2025-12-17 18:35:14.215909", "msg": "", "rc": 0, "start": "2025-12-17 18:35:14.190949", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004291", "end": "2025-12-17 18:35:14.721973", "msg": "", "rc": 0, "start": "2025-12-17 18:35:14.717682", "stderr": "", "stderr_lines": [], "stdout": "77.7%", "stdout_lines": ["77.7%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004169", "end": "2025-12-17 18:35:14.740848", "msg": "", "rc": 0, "start": "2025-12-17 18:35:14.736679", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005077", "end": "2025-12-17 18:35:14.763674", "msg": "", "rc": 0, "start": "2025-12-17 18:35:14.758597", "stderr": "", "stderr_lines": [], "stdout": "49.4%", "stdout_lines": ["49.4%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004509", "end": "2025-12-17 18:35:14.780059", "msg": "", "rc": 0, "start": "2025-12-17 18:35:14.775550", "stderr": "", "stderr_lines": [], "stdout": "9.1%", "stdout_lines": ["9.1%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005532", "end": "2025-12-17 18:35:14.798355", "msg": "", "rc": 0, "start": "2025-12-17 18:35:14.792823", "stderr": "", "stderr_lines": [], "stdout": "60.0%", "stdout_lines": ["60.0%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003912", "end": "2025-12-17 18:34:48.566751", "msg": "", "rc": 0, "start": "2025-12-17 18:34:48.562839", "stderr": "", "stderr_lines": [], "stdout": "70.7%", "stdout_lines": ["70.7%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004346", "end": "2025-12-17 18:34:42.041275", "msg": "", "rc": 0, "start": "2025-12-17 18:34:42.036929", "stderr": "", "stderr_lines": [], "stdout": "69.0%", "stdout_lines": ["69.0%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010884", "end": "2025-12-17 18:35:15.429980", "msg": "", "rc": 0, "start": "2025-12-17 18:35:15.419096", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011902", "end": "2025-12-17 18:35:15.449973", "msg": "", "rc": 0, "start": "2025-12-17 18:35:15.438071", "stderr": "", "stderr_lines": [], "stdout": "12.8%", "stdout_lines": ["12.8%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006059", "end": "2025-12-17 18:35:15.695096", "msg": "", "rc": 0, "start": "2025-12-17 18:35:15.689037", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004203", "end": "2025-12-17 18:34:45.201507", "msg": "", "rc": 0, "start": "2025-12-17 18:34:45.197304", "stderr": "", "stderr_lines": [], "stdout": "27.1%", "stdout_lines": ["27.1%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005140", "end": "2025-12-17 15:35:15.890917", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 15:35:15.885777", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003959", "end": "2025-12-17 18:34:51.924156", "msg": "", "rc": 0, "start": "2025-12-17 18:34:51.920197", "stderr": "", "stderr_lines": [], "stdout": "58.8%", "stdout_lines": ["58.8%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005443", "end": "2025-12-17 18:35:16.116202", "msg": "", "rc": 0, "start": "2025-12-17 18:35:16.110759", "stderr": "", "stderr_lines": [], "stdout": "13.7%", "stdout_lines": ["13.7%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.009426", "end": "2025-12-17 18:35:16.611548", "msg": "", "rc": 0, "start": "2025-12-17 18:35:16.602122", "stderr": "", "stderr_lines": [], "stdout": "11.9%", "stdout_lines": ["11.9%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025552", "end": "2025-12-17 18:35:16.096658", "msg": "", "rc": 0, "start": "2025-12-17 18:35:16.071106", "stderr": "", "stderr_lines": [], "stdout": "20.1%", "stdout_lines": ["20.1%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004850", "end": "2025-12-17 18:35:16.626961", "msg": "", "rc": 0, "start": "2025-12-17 18:35:16.622111", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005315", "end": "2025-12-17 18:35:16.637778", "msg": "", "rc": 0, "start": "2025-12-17 18:35:16.632463", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005672", "end": "2025-12-17 18:35:16.645739", "msg": "", "rc": 0, "start": "2025-12-17 18:35:16.640067", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003259", "end": "2025-12-17 18:35:16.674577", "msg": "", "rc": 0, "start": "2025-12-17 18:35:16.671318", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006744", "end": "2025-12-17 18:35:16.697061", "msg": "", "rc": 0, "start": "2025-12-17 18:35:16.690317", "stderr": "", "stderr_lines": [], "stdout": "53.0°C", "stdout_lines": ["53.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002348", "end": "2025-12-17 18:34:50.459282", "msg": "", "rc": 0, "start": "2025-12-17 18:34:50.456934", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003114", "end": "2025-12-17 18:34:43.954783", "msg": "", "rc": 0, "start": "2025-12-17 18:34:43.951669", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011880", "end": "2025-12-17 18:35:17.302795", "msg": "", "rc": 0, "start": "2025-12-17 18:35:17.290915", "stderr": "", "stderr_lines": [], "stdout": "31.6°C", "stdout_lines": ["31.6°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013253", "end": "2025-12-17 18:35:17.347076", "msg": "", "rc": 0, "start": "2025-12-17 18:35:17.333823", "stderr": "", "stderr_lines": [], "stdout": "36.0°C", "stdout_lines": ["36.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003488", "end": "2025-12-17 18:35:17.565011", "msg": "", "rc": 0, "start": "2025-12-17 18:35:17.561523", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003716", "end": "2025-12-17 18:34:47.144981", "msg": "", "rc": 0, "start": "2025-12-17 18:34:47.141265", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004363", "end": "2025-12-17 15:35:17.808755", "msg": "", "rc": 0, "start": "2025-12-17 15:35:17.804392", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002617", "end": "2025-12-17 18:34:53.813246", "msg": "", "rc": 0, "start": "2025-12-17 18:34:53.810629", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003063", "end": "2025-12-17 18:35:17.984827", "msg": "", "rc": 0, "start": "2025-12-17 18:35:17.981764", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003801", "end": "2025-12-17 18:35:18.641002", "msg": "", "rc": 0, "start": "2025-12-17 18:35:18.637201", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.030669", "end": "2025-12-17 18:35:18.021684", "msg": "", "rc": 0, "start": "2025-12-17 18:35:17.991015", "stderr": "", "stderr_lines": [], "stdout": "36.4°C", "stdout_lines": ["36.4°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004080", "end": "2025-12-17 18:35:18.546082", "msg": "", "rc": 0, "start": "2025-12-17 18:35:18.542002", "stderr": "", "stderr_lines": [], "stdout": "0.18", "stdout_lines": ["0.18"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.003947", "end": "2025-12-17 18:35:18.566393", "msg": "", "rc": 0, "start": "2025-12-17 18:35:18.562446", "stderr": "", "stderr_lines": [], "stdout": "0.27", "stdout_lines": ["0.27"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004634", "end": "2025-12-17 18:35:18.589854", "msg": "", "rc": 0, "start": "2025-12-17 18:35:18.585220", "stderr": "", "stderr_lines": [], "stdout": "1.16", "stdout_lines": ["1.16"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005374", "end": "2025-12-17 18:35:18.598004", "msg": "", "rc": 0, "start": "2025-12-17 18:35:18.592630", "stderr": "", "stderr_lines": [], "stdout": "0.02", "stdout_lines": ["0.02"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005495", "end": "2025-12-17 18:35:18.607016", "msg": "", "rc": 0, "start": "2025-12-17 18:35:18.601521", "stderr": "", "stderr_lines": [], "stdout": "0.86", "stdout_lines": ["0.86"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004480", "end": "2025-12-17 18:34:52.400565", "msg": "", "rc": 0, "start": "2025-12-17 18:34:52.396085", "stderr": "", "stderr_lines": [], "stdout": "0.61", "stdout_lines": ["0.61"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005020", "end": "2025-12-17 18:34:45.866294", "msg": "", "rc": 0, "start": "2025-12-17 18:34:45.861274", "stderr": "", "stderr_lines": [], "stdout": "0.04", "stdout_lines": ["0.04"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011196", "end": "2025-12-17 18:35:19.269041", "msg": "", "rc": 0, "start": "2025-12-17 18:35:19.257845", "stderr": "", "stderr_lines": [], "stdout": "0.38", "stdout_lines": ["0.38"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010076", "end": "2025-12-17 18:35:19.287928", "msg": "", "rc": 0, "start": "2025-12-17 18:35:19.277852", "stderr": "", "stderr_lines": [], "stdout": "0.22", "stdout_lines": ["0.22"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005696", "end": "2025-12-17 18:35:19.531652", "msg": "", "rc": 0, "start": "2025-12-17 18:35:19.525956", "stderr": "", "stderr_lines": [], "stdout": "0.21", "stdout_lines": ["0.21"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004832", "end": "2025-12-17 18:34:49.021986", "msg": "", "rc": 0, "start": "2025-12-17 18:34:49.017154", "stderr": "", "stderr_lines": [], "stdout": "0.54", "stdout_lines": ["0.54"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005754", "end": "2025-12-17 15:35:19.722189", "msg": "", "rc": 0, "start": "2025-12-17 15:35:19.716435", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004661", "end": "2025-12-17 18:34:55.749135", "msg": "", "rc": 0, "start": "2025-12-17 18:34:55.744474", "stderr": "", "stderr_lines": [], "stdout": "0.37", "stdout_lines": ["0.37"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.008201", "end": "2025-12-17 18:35:20.565938", "msg": "", "rc": 0, "start": "2025-12-17 18:35:20.557737", "stderr": "", "stderr_lines": [], "stdout": "1.29", "stdout_lines": ["1.29"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005334", "end": "2025-12-17 18:35:19.953456", "msg": "", "rc": 0, "start": "2025-12-17 18:35:19.948122", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.027367", "end": "2025-12-17 18:35:20.140156", "msg": "", "rc": 0, "start": "2025-12-17 18:35:20.112789", "stderr": "", "stderr_lines": [], "stdout": "0.37", "stdout_lines": ["0.37"]} + +TASK [Display health status] *************************************************** +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:35:10 up 22 days, 5:26, 1 user, load average: 0.19, 0.15, 0.10\nDisk Usage: 23%\nMemory Usage: 77.7%\nCPU Load: 0.18\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:35:10 up 3 days, 8:07, 1 user, load average: 0.14, 0.16, 0.17\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.27\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:35:11 up 22 days, 5:46, 1 user, load average: 1.01, 1.03, 1.01\nDisk Usage: 14%\nMemory Usage: 49.4%\nCPU Load: 1.16\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:35:11 up 22 days, 6:59, 1 user, load average: 1.02, 0.85, 0.75\nDisk Usage: 14%\nMemory Usage: 60.0%\nCPU Load: 0.86\nCPU Temp: 53.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:35:10 up 22 days, 7:45, 1 user, load average: 0.02, 0.04, 0.06\nDisk Usage: 9%\nMemory Usage: 9.1%\nCPU Load: 0.02\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:35:12 up 15 days, 8:01, 1 user, load average: 0.16, 0.10, 0.09\nDisk Usage: 21%\nMemory Usage: 20.1%\nCPU Load: 0.37\nCPU Temp: 36.4°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:35:11 up 194 days, 10:08, 1 user, load average: 0.26, 0.22, 0.20\nDisk Usage: 6%\nMemory Usage: 12.8%\nCPU Load: 0.38\nCPU Temp: 36.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:35:11 up 194 days, 10:08, 1 user, load average: 0.17, 0.12, 0.09\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.22\nCPU Temp: 31.6°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:34:44 up 11 days, 6:24, 0 user, load average: 0.67, 0.52, 0.29\nDisk Usage: 48%\nMemory Usage: 70.7%\nCPU Load: 0.61\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:34:38 up 18 days, 2:36, 0 user, load average: 0.04, 0.06, 0.02\nDisk Usage: 25%\nMemory Usage: 69.0%\nCPU Load: 0.04\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:34:41 up 20 days, 21:28, 0 user, load average: 0.50, 0.54, 0.48\nDisk Usage: 28%\nMemory Usage: 27.1%\nCPU Load: 0.54\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:35:11 up 3 days, 8:06, 1 user, load average: 0.08, 0.06, 0.02\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.21\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:34:48 up 17 days, 7:50, 0 user, load average: 0.32, 0.54, 0.51\nDisk Usage: 76%\nMemory Usage: 58.8%\nCPU Load: 0.37\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 3:35PM up 22 days, 5:24, 1 user, load averages: 0.33, 0.28, 0.25\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:35:12 up 3 days, 8:06, 1 user, load average: 0.00, 0.05, 0.06\nDisk Usage: 79%\nMemory Usage: 13.7%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:35:12 up 54 min, 1 user, load average: 1.24, 1.15, 1.11\nDisk Usage: 1%\nMemory Usage: 11.9%\nCPU Load: 1.29\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T23:35:21.740367+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_234022_5fd810_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_234022_5fd810_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..92a5f49 --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_234022_5fd810_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `6f9e3ebbec2542cc86bc4d83beaf2a7d` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T23:40:00.003522+00:00 | +| **Fin** | 2025-12-17T23:40:22.317535+00:00 | +| **Durée** | 22.3s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [hp3.i5.home] +ok: [ali2v.xeon.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [dev.prod.home] +ok: [hp.truenas.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003731", "end": "2025-12-17 18:40:11.500456", "msg": "", "rc": 0, "start": "2025-12-17 18:40:11.496725", "stderr": "", "stderr_lines": [], "stdout": " 18:40:11 up 22 days, 7:50, 1 user, load average: 0.00, 0.01, 0.03", "stdout_lines": [" 18:40:11 up 22 days, 7:50, 1 user, load average: 0.00, 0.01, 0.03"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002870", "end": "2025-12-17 18:40:11.525277", "msg": "", "rc": 0, "start": "2025-12-17 18:40:11.522407", "stderr": "", "stderr_lines": [], "stdout": " 18:40:11 up 3 days, 8:12, 1 user, load average: 0.13, 0.20, 0.18", "stdout_lines": [" 18:40:11 up 3 days, 8:12, 1 user, load average: 0.13, 0.20, 0.18"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004348", "end": "2025-12-17 18:40:11.531487", "msg": "", "rc": 0, "start": "2025-12-17 18:40:11.527139", "stderr": "", "stderr_lines": [], "stdout": " 18:40:11 up 22 days, 7:04, 1 user, load average: 0.59, 0.80, 0.77", "stdout_lines": [" 18:40:11 up 22 days, 7:04, 1 user, load average: 0.59, 0.80, 0.77"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008344", "end": "2025-12-17 18:40:12.181615", "msg": "", "rc": 0, "start": "2025-12-17 18:40:12.173271", "stderr": "", "stderr_lines": [], "stdout": " 18:40:12 up 194 days, 10:13, 1 user, load average: 0.11, 0.11, 0.09", "stdout_lines": [" 18:40:12 up 194 days, 10:13, 1 user, load average: 0.11, 0.11, 0.09"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009443", "end": "2025-12-17 18:40:12.216087", "msg": "", "rc": 0, "start": "2025-12-17 18:40:12.206644", "stderr": "", "stderr_lines": [], "stdout": " 18:40:12 up 194 days, 10:13, 1 user, load average: 0.24, 0.20, 0.19", "stdout_lines": [" 18:40:12 up 194 days, 10:13, 1 user, load average: 0.24, 0.20, 0.19"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004593", "end": "2025-12-17 18:40:12.487411", "msg": "", "rc": 0, "start": "2025-12-17 18:40:11.482818", "stderr": "", "stderr_lines": [], "stdout": " 18:40:11 up 22 days, 5:31, 1 user, load average: 0.18, 0.13, 0.09", "stdout_lines": [" 18:40:11 up 22 days, 5:31, 1 user, load average: 0.18, 0.13, 0.09"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004343", "end": "2025-12-17 18:40:12.491549", "msg": "", "rc": 0, "start": "2025-12-17 18:40:11.487206", "stderr": "", "stderr_lines": [], "stdout": " 18:40:11 up 22 days, 5:51, 1 user, load average: 0.68, 0.73, 0.88", "stdout_lines": [" 18:40:11 up 22 days, 5:51, 1 user, load average: 0.68, 0.73, 0.88"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003096", "end": "2025-12-17 18:39:45.983996", "msg": "", "rc": 0, "start": "2025-12-17 18:39:45.980900", "stderr": "", "stderr_lines": [], "stdout": " 18:39:45 up 11 days, 6:29, 0 user, load average: 0.06, 0.26, 0.24", "stdout_lines": [" 18:39:45 up 11 days, 6:29, 0 user, load average: 0.06, 0.26, 0.24"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003718", "end": "2025-12-17 18:39:39.528025", "msg": "", "rc": 0, "start": "2025-12-17 18:39:39.524307", "stderr": "", "stderr_lines": [], "stdout": " 18:39:39 up 18 days, 2:41, 0 user, load average: 0.02, 0.06, 0.01", "stdout_lines": [" 18:39:39 up 18 days, 2:41, 0 user, load average: 0.02, 0.06, 0.01"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004751", "end": "2025-12-17 18:40:12.938197", "msg": "", "rc": 0, "start": "2025-12-17 18:40:12.933446", "stderr": "", "stderr_lines": [], "stdout": " 18:40:12 up 3 days, 8:11, 1 user, load average: 0.34, 0.12, 0.03", "stdout_lines": [" 18:40:12 up 3 days, 8:11, 1 user, load average: 0.34, 0.12, 0.03"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019495", "end": "2025-12-17 18:40:12.874294", "msg": "", "rc": 0, "start": "2025-12-17 18:40:12.854799", "stderr": "", "stderr_lines": [], "stdout": " 18:40:12 up 15 days, 8:06, 1 user, load average: 0.29, 0.17, 0.11", "stdout_lines": [" 18:40:12 up 15 days, 8:06, 1 user, load average: 0.29, 0.17, 0.11"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003344", "end": "2025-12-17 18:39:42.397300", "msg": "", "rc": 0, "start": "2025-12-17 18:39:42.393956", "stderr": "", "stderr_lines": [], "stdout": " 18:39:42 up 20 days, 21:34, 0 user, load average: 0.51, 0.45, 0.45", "stdout_lines": [" 18:39:42 up 20 days, 21:34, 0 user, load average: 0.51, 0.45, 0.45"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002868", "end": "2025-12-17 18:39:49.026654", "msg": "", "rc": 0, "start": "2025-12-17 18:39:49.023786", "stderr": "", "stderr_lines": [], "stdout": " 18:39:49 up 17 days, 7:55, 0 user, load average: 0.71, 0.48, 0.48", "stdout_lines": [" 18:39:49 up 17 days, 7:55, 0 user, load average: 0.71, 0.48, 0.48"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004098", "end": "2025-12-17 15:40:13.220036", "msg": "", "rc": 0, "start": "2025-12-17 15:40:13.215938", "stderr": "", "stderr_lines": [], "stdout": " 3:40PM up 22 days, 5:30, 1 user, load averages: 0.23, 0.29, 0.25", "stdout_lines": [" 3:40PM up 22 days, 5:30, 1 user, load averages: 0.23, 0.29, 0.25"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008816", "end": "2025-12-17 18:40:14.402677", "msg": "", "rc": 0, "start": "2025-12-17 18:40:14.393861", "stderr": "", "stderr_lines": [], "stdout": " 18:40:14 up 59 min, 1 user, load average: 1.25, 1.13, 1.10", "stdout_lines": [" 18:40:14 up 59 min, 1 user, load average: 1.25, 1.13, 1.10"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003866", "end": "2025-12-17 18:40:13.364274", "msg": "", "rc": 0, "start": "2025-12-17 18:40:13.360408", "stderr": "", "stderr_lines": [], "stdout": " 18:40:13 up 3 days, 8:11, 1 user, load average: 0.17, 0.07, 0.06", "stdout_lines": [" 18:40:13 up 3 days, 8:11, 1 user, load average: 0.17, 0.07, 0.06"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004258", "end": "2025-12-17 18:40:13.771154", "msg": "", "rc": 0, "start": "2025-12-17 18:40:13.766896", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004146", "end": "2025-12-17 18:40:13.781550", "msg": "", "rc": 0, "start": "2025-12-17 18:40:13.777404", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004679", "end": "2025-12-17 18:40:13.787483", "msg": "", "rc": 0, "start": "2025-12-17 18:40:13.782804", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005250", "end": "2025-12-17 18:40:13.816944", "msg": "", "rc": 0, "start": "2025-12-17 18:40:13.811694", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005356", "end": "2025-12-17 18:40:13.825938", "msg": "", "rc": 0, "start": "2025-12-17 18:40:13.820582", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005046", "end": "2025-12-17 18:39:47.590742", "msg": "", "rc": 0, "start": "2025-12-17 18:39:47.585696", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005883", "end": "2025-12-17 18:39:41.076554", "msg": "", "rc": 0, "start": "2025-12-17 18:39:41.070671", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010656", "end": "2025-12-17 18:40:14.521574", "msg": "", "rc": 0, "start": "2025-12-17 18:40:14.510918", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011679", "end": "2025-12-17 18:40:14.573028", "msg": "", "rc": 0, "start": "2025-12-17 18:40:14.561349", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005641", "end": "2025-12-17 18:40:14.722682", "msg": "", "rc": 0, "start": "2025-12-17 18:40:14.717041", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005094", "end": "2025-12-17 18:39:44.242380", "msg": "", "rc": 0, "start": "2025-12-17 18:39:44.237286", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004777", "end": "2025-12-17 18:39:50.953816", "msg": "", "rc": 0, "start": "2025-12-17 18:39:50.949039", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005310", "end": "2025-12-17 15:40:15.020021", "msg": "", "rc": 0, "start": "2025-12-17 15:40:15.014711", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005585", "end": "2025-12-17 18:40:15.138974", "msg": "", "rc": 0, "start": "2025-12-17 18:40:15.133389", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.019096", "end": "2025-12-17 18:40:16.378258", "msg": "", "rc": 0, "start": "2025-12-17 18:40:16.359162", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025601", "end": "2025-12-17 18:40:15.159134", "msg": "", "rc": 0, "start": "2025-12-17 18:40:15.133533", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004295", "end": "2025-12-17 18:40:15.677240", "msg": "", "rc": 0, "start": "2025-12-17 18:40:15.672945", "stderr": "", "stderr_lines": [], "stdout": "77.7%", "stdout_lines": ["77.7%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004221", "end": "2025-12-17 18:40:15.701253", "msg": "", "rc": 0, "start": "2025-12-17 18:40:15.697032", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004985", "end": "2025-12-17 18:40:15.712322", "msg": "", "rc": 0, "start": "2025-12-17 18:40:15.707337", "stderr": "", "stderr_lines": [], "stdout": "49.3%", "stdout_lines": ["49.3%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004889", "end": "2025-12-17 18:40:15.731176", "msg": "", "rc": 0, "start": "2025-12-17 18:40:15.726287", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005451", "end": "2025-12-17 18:40:15.740609", "msg": "", "rc": 0, "start": "2025-12-17 18:40:15.735158", "stderr": "", "stderr_lines": [], "stdout": "60.1%", "stdout_lines": ["60.1%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003468", "end": "2025-12-17 18:39:49.509508", "msg": "", "rc": 0, "start": "2025-12-17 18:39:49.506040", "stderr": "", "stderr_lines": [], "stdout": "70.7%", "stdout_lines": ["70.7%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004270", "end": "2025-12-17 18:39:42.985388", "msg": "", "rc": 0, "start": "2025-12-17 18:39:42.981118", "stderr": "", "stderr_lines": [], "stdout": "69.1%", "stdout_lines": ["69.1%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010893", "end": "2025-12-17 18:40:16.369547", "msg": "", "rc": 0, "start": "2025-12-17 18:40:16.358654", "stderr": "", "stderr_lines": [], "stdout": "6.9%", "stdout_lines": ["6.9%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011750", "end": "2025-12-17 18:40:16.403611", "msg": "", "rc": 0, "start": "2025-12-17 18:40:16.391861", "stderr": "", "stderr_lines": [], "stdout": "13.1%", "stdout_lines": ["13.1%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005809", "end": "2025-12-17 18:40:16.647136", "msg": "", "rc": 0, "start": "2025-12-17 18:40:16.641327", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003963", "end": "2025-12-17 18:39:46.165602", "msg": "", "rc": 0, "start": "2025-12-17 18:39:46.161639", "stderr": "", "stderr_lines": [], "stdout": "27.3%", "stdout_lines": ["27.3%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004380", "end": "2025-12-17 18:39:52.781637", "msg": "", "rc": 0, "start": "2025-12-17 18:39:52.777257", "stderr": "", "stderr_lines": [], "stdout": "60.3%", "stdout_lines": ["60.3%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005124", "end": "2025-12-17 15:40:16.840468", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 15:40:16.835344", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005349", "end": "2025-12-17 18:40:17.061698", "msg": "", "rc": 0, "start": "2025-12-17 18:40:17.056349", "stderr": "", "stderr_lines": [], "stdout": "14.0%", "stdout_lines": ["14.0%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010503", "end": "2025-12-17 18:40:17.129896", "msg": "", "rc": 0, "start": "2025-12-17 18:40:17.119393", "stderr": "", "stderr_lines": [], "stdout": "12.0%", "stdout_lines": ["12.0%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.026090", "end": "2025-12-17 18:40:17.066902", "msg": "", "rc": 0, "start": "2025-12-17 18:40:17.040812", "stderr": "", "stderr_lines": [], "stdout": "19.8%", "stdout_lines": ["19.8%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005260", "end": "2025-12-17 18:40:17.582110", "msg": "", "rc": 0, "start": "2025-12-17 18:40:17.576850", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004880", "end": "2025-12-17 18:40:17.596058", "msg": "", "rc": 0, "start": "2025-12-17 18:40:17.591178", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003398", "end": "2025-12-17 18:40:17.625118", "msg": "", "rc": 0, "start": "2025-12-17 18:40:17.621720", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006115", "end": "2025-12-17 18:40:17.630951", "msg": "", "rc": 0, "start": "2025-12-17 18:40:17.624836", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006698", "end": "2025-12-17 18:40:17.644023", "msg": "", "rc": 0, "start": "2025-12-17 18:40:17.637325", "stderr": "", "stderr_lines": [], "stdout": "52.5°C", "stdout_lines": ["52.5°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003596", "end": "2025-12-17 18:39:51.472823", "msg": "", "rc": 0, "start": "2025-12-17 18:39:51.469227", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003239", "end": "2025-12-17 18:39:44.920119", "msg": "", "rc": 0, "start": "2025-12-17 18:39:44.916880", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011864", "end": "2025-12-17 18:40:18.279235", "msg": "", "rc": 0, "start": "2025-12-17 18:40:18.267371", "stderr": "", "stderr_lines": [], "stdout": "31.2°C", "stdout_lines": ["31.2°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013356", "end": "2025-12-17 18:40:18.292483", "msg": "", "rc": 0, "start": "2025-12-17 18:40:18.279127", "stderr": "", "stderr_lines": [], "stdout": "36.0°C", "stdout_lines": ["36.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003576", "end": "2025-12-17 18:40:18.587203", "msg": "", "rc": 0, "start": "2025-12-17 18:40:18.583627", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003179", "end": "2025-12-17 18:39:48.099050", "msg": "", "rc": 0, "start": "2025-12-17 18:39:48.095871", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003841", "end": "2025-12-17 15:40:18.742211", "msg": "", "rc": 0, "start": "2025-12-17 15:40:18.738370", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002832", "end": "2025-12-17 18:39:54.724094", "msg": "", "rc": 0, "start": "2025-12-17 18:39:54.721262", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003226", "end": "2025-12-17 18:40:19.022623", "msg": "", "rc": 0, "start": "2025-12-17 18:40:19.019397", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003972", "end": "2025-12-17 18:40:19.159520", "msg": "", "rc": 0, "start": "2025-12-17 18:40:19.155548", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.037357", "end": "2025-12-17 18:40:19.034225", "msg": "", "rc": 0, "start": "2025-12-17 18:40:18.996868", "stderr": "", "stderr_lines": [], "stdout": "37.7°C", "stdout_lines": ["37.7°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004287", "end": "2025-12-17 18:40:19.575950", "msg": "", "rc": 0, "start": "2025-12-17 18:40:19.571663", "stderr": "", "stderr_lines": [], "stdout": "0.16", "stdout_lines": ["0.16"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004162", "end": "2025-12-17 18:40:19.586785", "msg": "", "rc": 0, "start": "2025-12-17 18:40:19.582623", "stderr": "", "stderr_lines": [], "stdout": "0.27", "stdout_lines": ["0.27"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004913", "end": "2025-12-17 18:40:19.604459", "msg": "", "rc": 0, "start": "2025-12-17 18:40:19.599546", "stderr": "", "stderr_lines": [], "stdout": "0.66", "stdout_lines": ["0.66"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005419", "end": "2025-12-17 18:40:19.617958", "msg": "", "rc": 0, "start": "2025-12-17 18:40:19.612539", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005844", "end": "2025-12-17 18:40:19.622406", "msg": "", "rc": 0, "start": "2025-12-17 18:40:19.616562", "stderr": "", "stderr_lines": [], "stdout": "0.65", "stdout_lines": ["0.65"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004219", "end": "2025-12-17 18:39:53.445642", "msg": "", "rc": 0, "start": "2025-12-17 18:39:53.441423", "stderr": "", "stderr_lines": [], "stdout": "0.21", "stdout_lines": ["0.21"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005093", "end": "2025-12-17 18:39:46.869055", "msg": "", "rc": 0, "start": "2025-12-17 18:39:46.863962", "stderr": "", "stderr_lines": [], "stdout": "0.02", "stdout_lines": ["0.02"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010009", "end": "2025-12-17 18:40:20.329680", "msg": "", "rc": 0, "start": "2025-12-17 18:40:20.319671", "stderr": "", "stderr_lines": [], "stdout": "0.18", "stdout_lines": ["0.18"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011280", "end": "2025-12-17 18:40:20.382038", "msg": "", "rc": 0, "start": "2025-12-17 18:40:20.370758", "stderr": "", "stderr_lines": [], "stdout": "0.20", "stdout_lines": ["0.20"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005487", "end": "2025-12-17 18:40:20.570377", "msg": "", "rc": 0, "start": "2025-12-17 18:40:20.564890", "stderr": "", "stderr_lines": [], "stdout": "0.37", "stdout_lines": ["0.37"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005270", "end": "2025-12-17 18:39:50.028034", "msg": "", "rc": 0, "start": "2025-12-17 18:39:50.022764", "stderr": "", "stderr_lines": [], "stdout": "0.47", "stdout_lines": ["0.47"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004082", "end": "2025-12-17 18:39:56.756198", "msg": "", "rc": 0, "start": "2025-12-17 18:39:56.752116", "stderr": "", "stderr_lines": [], "stdout": "0.76", "stdout_lines": ["0.76"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006207", "end": "2025-12-17 15:40:20.825010", "msg": "", "rc": 0, "start": "2025-12-17 15:40:20.818803", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.007762", "end": "2025-12-17 18:40:21.137967", "msg": "", "rc": 0, "start": "2025-12-17 18:40:21.130205", "stderr": "", "stderr_lines": [], "stdout": "1.21", "stdout_lines": ["1.21"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005210", "end": "2025-12-17 18:40:20.981092", "msg": "", "rc": 0, "start": "2025-12-17 18:40:20.975882", "stderr": "", "stderr_lines": [], "stdout": "0.24", "stdout_lines": ["0.24"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.028959", "end": "2025-12-17 18:40:21.203512", "msg": "", "rc": 0, "start": "2025-12-17 18:40:21.174553", "stderr": "", "stderr_lines": [], "stdout": "0.27", "stdout_lines": ["0.27"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:40:11 up 3 days, 8:12, 1 user, load average: 0.13, 0.20, 0.18\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.27\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:40:11 up 22 days, 5:31, 1 user, load average: 0.18, 0.13, 0.09\nDisk Usage: 23%\nMemory Usage: 77.7%\nCPU Load: 0.16\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:40:11 up 22 days, 5:51, 1 user, load average: 0.68, 0.73, 0.88\nDisk Usage: 14%\nMemory Usage: 49.3%\nCPU Load: 0.66\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:40:11 up 22 days, 7:04, 1 user, load average: 0.59, 0.80, 0.77\nDisk Usage: 14%\nMemory Usage: 60.1%\nCPU Load: 0.65\nCPU Temp: 52.5°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:40:11 up 22 days, 7:50, 1 user, load average: 0.00, 0.01, 0.03\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:40:12 up 15 days, 8:06, 1 user, load average: 0.29, 0.17, 0.11\nDisk Usage: 21%\nMemory Usage: 19.8%\nCPU Load: 0.27\nCPU Temp: 37.7°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:40:12 up 194 days, 10:13, 1 user, load average: 0.24, 0.20, 0.19\nDisk Usage: 6%\nMemory Usage: 13.1%\nCPU Load: 0.20\nCPU Temp: 36.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:40:12 up 194 days, 10:13, 1 user, load average: 0.11, 0.11, 0.09\nDisk Usage: 3%\nMemory Usage: 6.9%\nCPU Load: 0.18\nCPU Temp: 31.2°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:39:45 up 11 days, 6:29, 0 user, load average: 0.06, 0.26, 0.24\nDisk Usage: 48%\nMemory Usage: 70.7%\nCPU Load: 0.21\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:39:39 up 18 days, 2:41, 0 user, load average: 0.02, 0.06, 0.01\nDisk Usage: 25%\nMemory Usage: 69.1%\nCPU Load: 0.02\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:40:12 up 3 days, 8:11, 1 user, load average: 0.34, 0.12, 0.03\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.37\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:39:42 up 20 days, 21:34, 0 user, load average: 0.51, 0.45, 0.45\nDisk Usage: 28%\nMemory Usage: 27.3%\nCPU Load: 0.47\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:39:49 up 17 days, 7:55, 0 user, load average: 0.71, 0.48, 0.48\nDisk Usage: 76%\nMemory Usage: 60.3%\nCPU Load: 0.76\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 3:40PM up 22 days, 5:30, 1 user, load averages: 0.23, 0.29, 0.25\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:40:13 up 3 days, 8:11, 1 user, load average: 0.17, 0.07, 0.06\nDisk Usage: 79%\nMemory Usage: 14.0%\nCPU Load: 0.24\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:40:14 up 59 min, 1 user, load average: 1.25, 1.13, 1.10\nDisk Usage: 1%\nMemory Usage: 12.0%\nCPU Load: 1.21\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T23:40:22.358496+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_234520_12eedd_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_234520_12eedd_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..781798e --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_234520_12eedd_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `a25797f6f730496d95c11dcce3e6c377` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T23:45:00.001238+00:00 | +| **Fin** | 2025-12-17T23:45:20.774391+00:00 | +| **Durée** | 20.8s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003033", "end": "2025-12-17 18:45:10.455978", "msg": "", "rc": 0, "start": "2025-12-17 18:45:10.452945", "stderr": "", "stderr_lines": [], "stdout": " 18:45:10 up 22 days, 5:36, 1 user, load average: 0.11, 0.14, 0.10", "stdout_lines": [" 18:45:10 up 22 days, 5:36, 1 user, load average: 0.11, 0.14, 0.10"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003603", "end": "2025-12-17 18:45:10.469127", "msg": "", "rc": 0, "start": "2025-12-17 18:45:10.465524", "stderr": "", "stderr_lines": [], "stdout": " 18:45:10 up 22 days, 7:55, 1 user, load average: 0.00, 0.00, 0.00", "stdout_lines": [" 18:45:10 up 22 days, 7:55, 1 user, load average: 0.00, 0.00, 0.00"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003381", "end": "2025-12-17 18:45:10.470576", "msg": "", "rc": 0, "start": "2025-12-17 18:45:10.467195", "stderr": "", "stderr_lines": [], "stdout": " 18:45:10 up 22 days, 5:56, 1 user, load average: 1.09, 0.75, 0.83", "stdout_lines": [" 18:45:10 up 22 days, 5:56, 1 user, load average: 1.09, 0.75, 0.83"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003774", "end": "2025-12-17 18:45:10.482683", "msg": "", "rc": 0, "start": "2025-12-17 18:45:10.478909", "stderr": "", "stderr_lines": [], "stdout": " 18:45:10 up 22 days, 7:09, 1 user, load average: 1.01, 0.91, 0.81", "stdout_lines": [" 18:45:10 up 22 days, 7:09, 1 user, load average: 1.01, 0.91, 0.81"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002831", "end": "2025-12-17 18:45:10.494466", "msg": "", "rc": 0, "start": "2025-12-17 18:45:10.491635", "stderr": "", "stderr_lines": [], "stdout": " 18:45:10 up 3 days, 8:17, 1 user, load average: 0.07, 0.14, 0.16", "stdout_lines": [" 18:45:10 up 3 days, 8:17, 1 user, load average: 0.07, 0.14, 0.16"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002836", "end": "2025-12-17 18:44:44.277008", "msg": "", "rc": 0, "start": "2025-12-17 18:44:44.274172", "stderr": "", "stderr_lines": [], "stdout": " 18:44:44 up 11 days, 6:34, 0 user, load average: 0.23, 0.20, 0.21", "stdout_lines": [" 18:44:44 up 11 days, 6:34, 0 user, load average: 0.23, 0.20, 0.21"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.005568", "end": "2025-12-17 18:44:37.766437", "msg": "", "rc": 0, "start": "2025-12-17 18:44:37.760869", "stderr": "", "stderr_lines": [], "stdout": " 18:44:37 up 18 days, 2:46, 0 user, load average: 0.08, 0.03, 0.01", "stdout_lines": [" 18:44:37 up 18 days, 2:46, 0 user, load average: 0.08, 0.03, 0.01"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008360", "end": "2025-12-17 18:45:11.137961", "msg": "", "rc": 0, "start": "2025-12-17 18:45:11.129601", "stderr": "", "stderr_lines": [], "stdout": " 18:45:11 up 194 days, 10:18, 1 user, load average: 0.21, 0.16, 0.10", "stdout_lines": [" 18:45:11 up 194 days, 10:18, 1 user, load average: 0.21, 0.16, 0.10"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009421", "end": "2025-12-17 18:45:11.183884", "msg": "", "rc": 0, "start": "2025-12-17 18:45:11.174463", "stderr": "", "stderr_lines": [], "stdout": " 18:45:11 up 194 days, 10:18, 1 user, load average: 0.20, 0.20, 0.18", "stdout_lines": [" 18:45:11 up 194 days, 10:18, 1 user, load average: 0.20, 0.20, 0.18"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.005042", "end": "2025-12-17 18:45:11.421567", "msg": "", "rc": 0, "start": "2025-12-17 18:45:11.416525", "stderr": "", "stderr_lines": [], "stdout": " 18:45:11 up 3 days, 8:16, 1 user, load average: 0.02, 0.06, 0.02", "stdout_lines": [" 18:45:11 up 3 days, 8:16, 1 user, load average: 0.02, 0.06, 0.02"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003554", "end": "2025-12-17 18:44:40.941900", "msg": "", "rc": 0, "start": "2025-12-17 18:44:40.938346", "stderr": "", "stderr_lines": [], "stdout": " 18:44:40 up 20 days, 21:38, 0 user, load average: 3.05, 0.93, 0.60", "stdout_lines": [" 18:44:40 up 20 days, 21:38, 0 user, load average: 3.05, 0.93, 0.60"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003337", "end": "2025-12-17 18:44:47.557515", "msg": "", "rc": 0, "start": "2025-12-17 18:44:47.554178", "stderr": "", "stderr_lines": [], "stdout": " 18:44:47 up 17 days, 8:00, 0 user, load average: 0.13, 0.27, 0.39", "stdout_lines": [" 18:44:47 up 17 days, 8:00, 0 user, load average: 0.13, 0.27, 0.39"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004144", "end": "2025-12-17 15:45:11.617441", "msg": "", "rc": 0, "start": "2025-12-17 15:45:11.613297", "stderr": "", "stderr_lines": [], "stdout": " 3:45PM up 22 days, 5:34, 1 user, load averages: 0.27, 0.23, 0.23", "stdout_lines": [" 3:45PM up 22 days, 5:34, 1 user, load averages: 0.27, 0.23, 0.23"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003674", "end": "2025-12-17 18:45:11.842573", "msg": "", "rc": 0, "start": "2025-12-17 18:45:11.838899", "stderr": "", "stderr_lines": [], "stdout": " 18:45:11 up 3 days, 8:16, 1 user, load average: 0.04, 0.06, 0.05", "stdout_lines": [" 18:45:11 up 3 days, 8:16, 1 user, load average: 0.04, 0.06, 0.05"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.006743", "end": "2025-12-17 18:45:11.906862", "msg": "", "rc": 0, "start": "2025-12-17 18:45:11.900119", "stderr": "", "stderr_lines": [], "stdout": " 18:45:11 up 1:04, 1 user, load average: 1.11, 1.09, 1.09", "stdout_lines": [" 18:45:11 up 1:04, 1 user, load average: 1.11, 1.09, 1.09"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019630", "end": "2025-12-17 18:45:11.824305", "msg": "", "rc": 0, "start": "2025-12-17 18:45:11.804675", "stderr": "", "stderr_lines": [], "stdout": " 18:45:11 up 15 days, 8:11, 1 user, load average: 0.24, 0.15, 0.10", "stdout_lines": [" 18:45:11 up 15 days, 8:11, 1 user, load average: 0.24, 0.15, 0.10"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004190", "end": "2025-12-17 18:45:12.331114", "msg": "", "rc": 0, "start": "2025-12-17 18:45:12.326924", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004181", "end": "2025-12-17 18:45:12.361911", "msg": "", "rc": 0, "start": "2025-12-17 18:45:12.357730", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004771", "end": "2025-12-17 18:45:12.359449", "msg": "", "rc": 0, "start": "2025-12-17 18:45:12.354678", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005697", "end": "2025-12-17 18:45:12.384277", "msg": "", "rc": 0, "start": "2025-12-17 18:45:12.378580", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005434", "end": "2025-12-17 18:45:12.415852", "msg": "", "rc": 0, "start": "2025-12-17 18:45:12.410418", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004819", "end": "2025-12-17 18:44:46.140101", "msg": "", "rc": 0, "start": "2025-12-17 18:44:46.135282", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005877", "end": "2025-12-17 18:44:39.681172", "msg": "", "rc": 0, "start": "2025-12-17 18:44:39.675295", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010469", "end": "2025-12-17 18:45:13.063825", "msg": "", "rc": 0, "start": "2025-12-17 18:45:13.053356", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011920", "end": "2025-12-17 18:45:13.101475", "msg": "", "rc": 0, "start": "2025-12-17 18:45:13.089555", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005918", "end": "2025-12-17 18:45:13.277830", "msg": "", "rc": 0, "start": "2025-12-17 18:45:13.271912", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005644", "end": "2025-12-17 18:44:42.868127", "msg": "", "rc": 0, "start": "2025-12-17 18:44:42.862483", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005114", "end": "2025-12-17 18:44:49.489405", "msg": "", "rc": 0, "start": "2025-12-17 18:44:49.484291", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005460", "end": "2025-12-17 15:45:13.546425", "msg": "", "rc": 0, "start": "2025-12-17 15:45:13.540965", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005286", "end": "2025-12-17 18:45:13.690045", "msg": "", "rc": 0, "start": "2025-12-17 18:45:13.684759", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.020507", "end": "2025-12-17 18:45:13.867714", "msg": "", "rc": 0, "start": "2025-12-17 18:45:13.847207", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025324", "end": "2025-12-17 18:45:13.702968", "msg": "", "rc": 0, "start": "2025-12-17 18:45:13.677644", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004270", "end": "2025-12-17 18:45:14.205561", "msg": "", "rc": 0, "start": "2025-12-17 18:45:14.201291", "stderr": "", "stderr_lines": [], "stdout": "77.8%", "stdout_lines": ["77.8%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004329", "end": "2025-12-17 18:45:14.238030", "msg": "", "rc": 0, "start": "2025-12-17 18:45:14.233701", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005002", "end": "2025-12-17 18:45:14.233579", "msg": "", "rc": 0, "start": "2025-12-17 18:45:14.228577", "stderr": "", "stderr_lines": [], "stdout": "49.2%", "stdout_lines": ["49.2%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004781", "end": "2025-12-17 18:45:14.264579", "msg": "", "rc": 0, "start": "2025-12-17 18:45:14.259798", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006370", "end": "2025-12-17 18:45:14.303149", "msg": "", "rc": 0, "start": "2025-12-17 18:45:14.296779", "stderr": "", "stderr_lines": [], "stdout": "60.1%", "stdout_lines": ["60.1%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003794", "end": "2025-12-17 18:44:48.024272", "msg": "", "rc": 0, "start": "2025-12-17 18:44:48.020478", "stderr": "", "stderr_lines": [], "stdout": "71.3%", "stdout_lines": ["71.3%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006102", "end": "2025-12-17 18:44:41.564463", "msg": "", "rc": 0, "start": "2025-12-17 18:44:41.558361", "stderr": "", "stderr_lines": [], "stdout": "69.1%", "stdout_lines": ["69.1%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010970", "end": "2025-12-17 18:45:14.884893", "msg": "", "rc": 0, "start": "2025-12-17 18:45:14.873923", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011674", "end": "2025-12-17 18:45:14.939637", "msg": "", "rc": 0, "start": "2025-12-17 18:45:14.927963", "stderr": "", "stderr_lines": [], "stdout": "13.0%", "stdout_lines": ["13.0%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006207", "end": "2025-12-17 18:45:15.173577", "msg": "", "rc": 0, "start": "2025-12-17 18:45:15.167370", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003778", "end": "2025-12-17 18:44:51.310002", "msg": "", "rc": 0, "start": "2025-12-17 18:44:51.306224", "stderr": "", "stderr_lines": [], "stdout": "59.3%", "stdout_lines": ["59.3%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004395", "end": "2025-12-17 18:44:44.733447", "msg": "", "rc": 0, "start": "2025-12-17 18:44:44.729052", "stderr": "", "stderr_lines": [], "stdout": "27.3%", "stdout_lines": ["27.3%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005171", "end": "2025-12-17 15:45:15.399701", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 15:45:15.394530", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005422", "end": "2025-12-17 18:45:15.587548", "msg": "", "rc": 0, "start": "2025-12-17 18:45:15.582126", "stderr": "", "stderr_lines": [], "stdout": "13.7%", "stdout_lines": ["13.7%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.008408", "end": "2025-12-17 18:45:15.786105", "msg": "", "rc": 0, "start": "2025-12-17 18:45:15.777697", "stderr": "", "stderr_lines": [], "stdout": "11.9%", "stdout_lines": ["11.9%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.026006", "end": "2025-12-17 18:45:15.579701", "msg": "", "rc": 0, "start": "2025-12-17 18:45:15.553695", "stderr": "", "stderr_lines": [], "stdout": "20.1%", "stdout_lines": ["20.1%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004993", "end": "2025-12-17 18:45:16.090946", "msg": "", "rc": 0, "start": "2025-12-17 18:45:16.085953", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004995", "end": "2025-12-17 18:45:16.112320", "msg": "", "rc": 0, "start": "2025-12-17 18:45:16.107325", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005413", "end": "2025-12-17 18:45:16.121559", "msg": "", "rc": 0, "start": "2025-12-17 18:45:16.116146", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003374", "end": "2025-12-17 18:45:16.133951", "msg": "", "rc": 0, "start": "2025-12-17 18:45:16.130577", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006608", "end": "2025-12-17 18:45:16.152132", "msg": "", "rc": 0, "start": "2025-12-17 18:45:16.145524", "stderr": "", "stderr_lines": [], "stdout": "53.0°C", "stdout_lines": ["53.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002549", "end": "2025-12-17 18:44:49.914748", "msg": "", "rc": 0, "start": "2025-12-17 18:44:49.912199", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003344", "end": "2025-12-17 18:44:43.393710", "msg": "", "rc": 0, "start": "2025-12-17 18:44:43.390366", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011763", "end": "2025-12-17 18:45:16.791850", "msg": "", "rc": 0, "start": "2025-12-17 18:45:16.780087", "stderr": "", "stderr_lines": [], "stdout": "32.1°C", "stdout_lines": ["32.1°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012945", "end": "2025-12-17 18:45:16.822555", "msg": "", "rc": 0, "start": "2025-12-17 18:45:16.809610", "stderr": "", "stderr_lines": [], "stdout": "38.0°C", "stdout_lines": ["38.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003313", "end": "2025-12-17 18:45:17.049288", "msg": "", "rc": 0, "start": "2025-12-17 18:45:17.045975", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002679", "end": "2025-12-17 18:44:46.553400", "msg": "", "rc": 0, "start": "2025-12-17 18:44:46.550721", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004028", "end": "2025-12-17 15:45:17.264868", "msg": "", "rc": 0, "start": "2025-12-17 15:45:17.260840", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002783", "end": "2025-12-17 18:44:53.229889", "msg": "", "rc": 0, "start": "2025-12-17 18:44:53.227106", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002969", "end": "2025-12-17 18:45:17.462153", "msg": "", "rc": 0, "start": "2025-12-17 18:45:17.459184", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003793", "end": "2025-12-17 18:45:17.669550", "msg": "", "rc": 0, "start": "2025-12-17 18:45:17.665757", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.028670", "end": "2025-12-17 18:45:17.472972", "msg": "", "rc": 0, "start": "2025-12-17 18:45:17.444302", "stderr": "", "stderr_lines": [], "stdout": "35.5°C", "stdout_lines": ["35.5°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004517", "end": "2025-12-17 18:45:17.994312", "msg": "", "rc": 0, "start": "2025-12-17 18:45:17.989795", "stderr": "", "stderr_lines": [], "stdout": "0.18", "stdout_lines": ["0.18"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005114", "end": "2025-12-17 18:45:18.020602", "msg": "", "rc": 0, "start": "2025-12-17 18:45:18.015488", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004217", "end": "2025-12-17 18:45:18.027746", "msg": "", "rc": 0, "start": "2025-12-17 18:45:18.023529", "stderr": "", "stderr_lines": [], "stdout": "0.22", "stdout_lines": ["0.22"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.007486", "end": "2025-12-17 18:45:18.045546", "msg": "", "rc": 0, "start": "2025-12-17 18:45:18.038060", "stderr": "", "stderr_lines": [], "stdout": "1.00", "stdout_lines": ["1.00"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006028", "end": "2025-12-17 18:45:18.058140", "msg": "", "rc": 0, "start": "2025-12-17 18:45:18.052112", "stderr": "", "stderr_lines": [], "stdout": "1.08", "stdout_lines": ["1.08"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004465", "end": "2025-12-17 18:44:51.847346", "msg": "", "rc": 0, "start": "2025-12-17 18:44:51.842881", "stderr": "", "stderr_lines": [], "stdout": "0.19", "stdout_lines": ["0.19"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005229", "end": "2025-12-17 18:44:45.319865", "msg": "", "rc": 0, "start": "2025-12-17 18:44:45.314636", "stderr": "", "stderr_lines": [], "stdout": "0.07", "stdout_lines": ["0.07"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.012570", "end": "2025-12-17 18:45:18.810908", "msg": "", "rc": 0, "start": "2025-12-17 18:45:18.798338", "stderr": "", "stderr_lines": [], "stdout": "0.18", "stdout_lines": ["0.18"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.017059", "end": "2025-12-17 18:45:18.847326", "msg": "", "rc": 0, "start": "2025-12-17 18:45:18.830267", "stderr": "", "stderr_lines": [], "stdout": "0.17", "stdout_lines": ["0.17"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005853", "end": "2025-12-17 18:45:18.990502", "msg": "", "rc": 0, "start": "2025-12-17 18:45:18.984649", "stderr": "", "stderr_lines": [], "stdout": "0.02", "stdout_lines": ["0.02"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004831", "end": "2025-12-17 18:44:48.486254", "msg": "", "rc": 0, "start": "2025-12-17 18:44:48.481423", "stderr": "", "stderr_lines": [], "stdout": "2.80", "stdout_lines": ["2.80"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005791", "end": "2025-12-17 15:45:19.309020", "msg": "", "rc": 0, "start": "2025-12-17 15:45:19.303229", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004412", "end": "2025-12-17 18:44:55.260835", "msg": "", "rc": 0, "start": "2025-12-17 18:44:55.256423", "stderr": "", "stderr_lines": [], "stdout": "0.20", "stdout_lines": ["0.20"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005262", "end": "2025-12-17 18:45:19.416679", "msg": "", "rc": 0, "start": "2025-12-17 18:45:19.411417", "stderr": "", "stderr_lines": [], "stdout": "0.03", "stdout_lines": ["0.03"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.008374", "end": "2025-12-17 18:45:19.700086", "msg": "", "rc": 0, "start": "2025-12-17 18:45:19.691712", "stderr": "", "stderr_lines": [], "stdout": "1.17", "stdout_lines": ["1.17"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.032716", "end": "2025-12-17 18:45:19.551338", "msg": "", "rc": 0, "start": "2025-12-17 18:45:19.518622", "stderr": "", "stderr_lines": [], "stdout": "0.28", "stdout_lines": ["0.28"]} + +TASK [Display health status] *************************************************** +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:45:10 up 22 days, 5:36, 1 user, load average: 0.11, 0.14, 0.10\nDisk Usage: 23%\nMemory Usage: 77.8%\nCPU Load: 0.18\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:45:10 up 3 days, 8:17, 1 user, load average: 0.07, 0.14, 0.16\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.22\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:45:10 up 22 days, 5:56, 1 user, load average: 1.09, 0.75, 0.83\nDisk Usage: 14%\nMemory Usage: 49.2%\nCPU Load: 1.08\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:45:10 up 22 days, 7:09, 1 user, load average: 1.01, 0.91, 0.81\nDisk Usage: 14%\nMemory Usage: 60.1%\nCPU Load: 1.00\nCPU Temp: 53.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:45:10 up 22 days, 7:55, 1 user, load average: 0.00, 0.00, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:45:11 up 15 days, 8:11, 1 user, load average: 0.24, 0.15, 0.10\nDisk Usage: 21%\nMemory Usage: 20.1%\nCPU Load: 0.28\nCPU Temp: 35.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:45:11 up 194 days, 10:18, 1 user, load average: 0.20, 0.20, 0.18\nDisk Usage: 6%\nMemory Usage: 13.0%\nCPU Load: 0.17\nCPU Temp: 38.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:45:11 up 194 days, 10:18, 1 user, load average: 0.21, 0.16, 0.10\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.18\nCPU Temp: 32.1°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:44:44 up 11 days, 6:34, 0 user, load average: 0.23, 0.20, 0.21\nDisk Usage: 48%\nMemory Usage: 71.3%\nCPU Load: 0.19\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:44:37 up 18 days, 2:46, 0 user, load average: 0.08, 0.03, 0.01\nDisk Usage: 25%\nMemory Usage: 69.1%\nCPU Load: 0.07\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:45:11 up 3 days, 8:16, 1 user, load average: 0.02, 0.06, 0.02\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.02\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:44:40 up 20 days, 21:38, 0 user, load average: 3.05, 0.93, 0.60\nDisk Usage: 28%\nMemory Usage: 27.3%\nCPU Load: 2.80\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:44:47 up 17 days, 8:00, 0 user, load average: 0.13, 0.27, 0.39\nDisk Usage: 76%\nMemory Usage: 59.3%\nCPU Load: 0.20\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 3:45PM up 22 days, 5:34, 1 user, load averages: 0.27, 0.23, 0.23\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:45:11 up 3 days, 8:16, 1 user, load average: 0.04, 0.06, 0.05\nDisk Usage: 79%\nMemory Usage: 13.7%\nCPU Load: 0.03\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:45:11 up 1:04, 1 user, load average: 1.11, 1.09, 1.09\nDisk Usage: 1%\nMemory Usage: 11.9%\nCPU Load: 1.17\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T23:45:20.814028+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_235022_e825b9_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_235022_e825b9_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..14b441e --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_235022_e825b9_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `de5fc6b4719a4c8996d7905f5908c49c` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T23:50:00.002819+00:00 | +| **Fin** | 2025-12-17T23:50:22.035943+00:00 | +| **Durée** | 22.0s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [hp2.i7.home] +ok: [mimi.pc.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [dev.prod.home] +ok: [hp.truenas.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003289", "end": "2025-12-17 18:50:11.543733", "msg": "", "rc": 0, "start": "2025-12-17 18:50:11.540444", "stderr": "", "stderr_lines": [], "stdout": " 18:50:11 up 22 days, 5:41, 1 user, load average: 0.27, 0.15, 0.10", "stdout_lines": [" 18:50:11 up 22 days, 5:41, 1 user, load average: 0.27, 0.15, 0.10"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003356", "end": "2025-12-17 18:50:11.549142", "msg": "", "rc": 0, "start": "2025-12-17 18:50:11.545786", "stderr": "", "stderr_lines": [], "stdout": " 18:50:11 up 22 days, 6:01, 1 user, load average: 0.46, 0.60, 0.74", "stdout_lines": [" 18:50:11 up 22 days, 6:01, 1 user, load average: 0.46, 0.60, 0.74"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003695", "end": "2025-12-17 18:50:11.555281", "msg": "", "rc": 0, "start": "2025-12-17 18:50:11.551586", "stderr": "", "stderr_lines": [], "stdout": " 18:50:11 up 22 days, 8:00, 1 user, load average: 0.09, 0.05, 0.01", "stdout_lines": [" 18:50:11 up 22 days, 8:00, 1 user, load average: 0.09, 0.05, 0.01"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002884", "end": "2025-12-17 18:50:11.584200", "msg": "", "rc": 0, "start": "2025-12-17 18:50:11.581316", "stderr": "", "stderr_lines": [], "stdout": " 18:50:11 up 3 days, 8:22, 1 user, load average: 0.46, 0.23, 0.19", "stdout_lines": [" 18:50:11 up 3 days, 8:22, 1 user, load average: 0.46, 0.23, 0.19"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003740", "end": "2025-12-17 18:50:11.574963", "msg": "", "rc": 0, "start": "2025-12-17 18:50:11.571223", "stderr": "", "stderr_lines": [], "stdout": " 18:50:11 up 22 days, 7:14, 1 user, load average: 0.52, 0.63, 0.72", "stdout_lines": [" 18:50:11 up 22 days, 7:14, 1 user, load average: 0.52, 0.63, 0.72"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003086", "end": "2025-12-17 18:49:45.366656", "msg": "", "rc": 0, "start": "2025-12-17 18:49:45.363570", "stderr": "", "stderr_lines": [], "stdout": " 18:49:45 up 11 days, 6:39, 0 user, load average: 0.08, 0.20, 0.22", "stdout_lines": [" 18:49:45 up 11 days, 6:39, 0 user, load average: 0.08, 0.20, 0.22"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003431", "end": "2025-12-17 18:49:38.841904", "msg": "", "rc": 0, "start": "2025-12-17 18:49:38.838473", "stderr": "", "stderr_lines": [], "stdout": " 18:49:38 up 18 days, 2:51, 0 user, load average: 0.03, 0.03, 0.00", "stdout_lines": [" 18:49:38 up 18 days, 2:51, 0 user, load average: 0.03, 0.03, 0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008408", "end": "2025-12-17 18:50:12.240077", "msg": "", "rc": 0, "start": "2025-12-17 18:50:12.231669", "stderr": "", "stderr_lines": [], "stdout": " 18:50:12 up 194 days, 10:23, 1 user, load average: 0.18, 0.17, 0.11", "stdout_lines": [" 18:50:12 up 194 days, 10:23, 1 user, load average: 0.18, 0.17, 0.11"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009387", "end": "2025-12-17 18:50:12.278430", "msg": "", "rc": 0, "start": "2025-12-17 18:50:12.269043", "stderr": "", "stderr_lines": [], "stdout": " 18:50:12 up 194 days, 10:23, 1 user, load average: 0.14, 0.20, 0.18", "stdout_lines": [" 18:50:12 up 194 days, 10:23, 1 user, load average: 0.14, 0.20, 0.18"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004916", "end": "2025-12-17 18:50:12.513554", "msg": "", "rc": 0, "start": "2025-12-17 18:50:12.508638", "stderr": "", "stderr_lines": [], "stdout": " 18:50:12 up 3 days, 8:21, 1 user, load average: 0.08, 0.03, 0.01", "stdout_lines": [" 18:50:12 up 3 days, 8:21, 1 user, load average: 0.08, 0.03, 0.01"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003041", "end": "2025-12-17 18:49:42.025235", "msg": "", "rc": 0, "start": "2025-12-17 18:49:42.022194", "stderr": "", "stderr_lines": [], "stdout": " 18:49:42 up 20 days, 21:43, 0 user, load average: 0.51, 0.59, 0.53", "stdout_lines": [" 18:49:42 up 20 days, 21:43, 0 user, load average: 0.51, 0.59, 0.53"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003177", "end": "2025-12-17 18:49:48.668813", "msg": "", "rc": 0, "start": "2025-12-17 18:49:48.665636", "stderr": "", "stderr_lines": [], "stdout": " 18:49:48 up 17 days, 8:05, 0 user, load average: 0.23, 0.26, 0.35", "stdout_lines": [" 18:49:48 up 17 days, 8:05, 0 user, load average: 0.23, 0.26, 0.35"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004423", "end": "2025-12-17 15:50:12.721188", "msg": "", "rc": 0, "start": "2025-12-17 15:50:12.716765", "stderr": "", "stderr_lines": [], "stdout": " 3:50PM up 22 days, 5:40, 1 user, load averages: 0.26, 0.25, 0.24", "stdout_lines": [" 3:50PM up 22 days, 5:40, 1 user, load averages: 0.26, 0.25, 0.24"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003801", "end": "2025-12-17 18:50:12.936896", "msg": "", "rc": 0, "start": "2025-12-17 18:50:12.933095", "stderr": "", "stderr_lines": [], "stdout": " 18:50:12 up 3 days, 8:21, 1 user, load average: 0.08, 0.06, 0.04", "stdout_lines": [" 18:50:12 up 3 days, 8:21, 1 user, load average: 0.08, 0.06, 0.04"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008015", "end": "2025-12-17 18:50:13.808395", "msg": "", "rc": 0, "start": "2025-12-17 18:50:13.800380", "stderr": "", "stderr_lines": [], "stdout": " 18:50:13 up 1:09, 1 user, load average: 1.51, 1.19, 1.12", "stdout_lines": [" 18:50:13 up 1:09, 1 user, load average: 1.51, 1.19, 1.12"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019499", "end": "2025-12-17 18:50:12.935095", "msg": "", "rc": 0, "start": "2025-12-17 18:50:12.915596", "stderr": "", "stderr_lines": [], "stdout": " 18:50:12 up 15 days, 8:16, 1 user, load average: 0.22, 0.14, 0.10", "stdout_lines": [" 18:50:12 up 15 days, 8:16, 1 user, load average: 0.22, 0.14, 0.10"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004137", "end": "2025-12-17 18:50:13.464052", "msg": "", "rc": 0, "start": "2025-12-17 18:50:13.459915", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004163", "end": "2025-12-17 18:50:13.485891", "msg": "", "rc": 0, "start": "2025-12-17 18:50:13.481728", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005091", "end": "2025-12-17 18:50:13.492725", "msg": "", "rc": 0, "start": "2025-12-17 18:50:13.487634", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005035", "end": "2025-12-17 18:50:13.504724", "msg": "", "rc": 0, "start": "2025-12-17 18:50:13.499689", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006047", "end": "2025-12-17 18:50:13.538647", "msg": "", "rc": 0, "start": "2025-12-17 18:50:13.532600", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004707", "end": "2025-12-17 18:49:47.293263", "msg": "", "rc": 0, "start": "2025-12-17 18:49:47.288556", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005922", "end": "2025-12-17 18:49:40.817608", "msg": "", "rc": 0, "start": "2025-12-17 18:49:40.811686", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010543", "end": "2025-12-17 18:50:14.206543", "msg": "", "rc": 0, "start": "2025-12-17 18:50:14.196000", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011554", "end": "2025-12-17 18:50:14.247493", "msg": "", "rc": 0, "start": "2025-12-17 18:50:14.235939", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005860", "end": "2025-12-17 18:50:14.438895", "msg": "", "rc": 0, "start": "2025-12-17 18:50:14.433035", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005618", "end": "2025-12-17 18:49:44.013163", "msg": "", "rc": 0, "start": "2025-12-17 18:49:44.007545", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005297", "end": "2025-12-17 18:49:50.622647", "msg": "", "rc": 0, "start": "2025-12-17 18:49:50.617350", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005403", "end": "2025-12-17 15:50:14.685425", "msg": "", "rc": 0, "start": "2025-12-17 15:50:14.680022", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005438", "end": "2025-12-17 18:50:14.854417", "msg": "", "rc": 0, "start": "2025-12-17 18:50:14.848979", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.020252", "end": "2025-12-17 18:50:15.904469", "msg": "", "rc": 0, "start": "2025-12-17 18:50:15.884217", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025137", "end": "2025-12-17 18:50:14.866512", "msg": "", "rc": 0, "start": "2025-12-17 18:50:14.841375", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004332", "end": "2025-12-17 18:50:15.390469", "msg": "", "rc": 0, "start": "2025-12-17 18:50:15.386137", "stderr": "", "stderr_lines": [], "stdout": "77.8%", "stdout_lines": ["77.8%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004223", "end": "2025-12-17 18:50:15.397704", "msg": "", "rc": 0, "start": "2025-12-17 18:50:15.393481", "stderr": "", "stderr_lines": [], "stdout": "22.6%", "stdout_lines": ["22.6%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004832", "end": "2025-12-17 18:50:15.408312", "msg": "", "rc": 0, "start": "2025-12-17 18:50:15.403480", "stderr": "", "stderr_lines": [], "stdout": "48.9%", "stdout_lines": ["48.9%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005224", "end": "2025-12-17 18:50:15.434503", "msg": "", "rc": 0, "start": "2025-12-17 18:50:15.429279", "stderr": "", "stderr_lines": [], "stdout": "8.9%", "stdout_lines": ["8.9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006298", "end": "2025-12-17 18:50:15.462277", "msg": "", "rc": 0, "start": "2025-12-17 18:50:15.455979", "stderr": "", "stderr_lines": [], "stdout": "60.1%", "stdout_lines": ["60.1%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003718", "end": "2025-12-17 18:49:49.241562", "msg": "", "rc": 0, "start": "2025-12-17 18:49:49.237844", "stderr": "", "stderr_lines": [], "stdout": "71.1%", "stdout_lines": ["71.1%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004783", "end": "2025-12-17 18:49:42.736576", "msg": "", "rc": 0, "start": "2025-12-17 18:49:42.731793", "stderr": "", "stderr_lines": [], "stdout": "69.1%", "stdout_lines": ["69.1%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010952", "end": "2025-12-17 18:50:16.072064", "msg": "", "rc": 0, "start": "2025-12-17 18:50:16.061112", "stderr": "", "stderr_lines": [], "stdout": "6.8%", "stdout_lines": ["6.8%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011896", "end": "2025-12-17 18:50:16.118512", "msg": "", "rc": 0, "start": "2025-12-17 18:50:16.106616", "stderr": "", "stderr_lines": [], "stdout": "13.0%", "stdout_lines": ["13.0%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.006062", "end": "2025-12-17 18:50:16.388813", "msg": "", "rc": 0, "start": "2025-12-17 18:50:16.382751", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004018", "end": "2025-12-17 18:49:52.495339", "msg": "", "rc": 0, "start": "2025-12-17 18:49:52.491321", "stderr": "", "stderr_lines": [], "stdout": "59.4%", "stdout_lines": ["59.4%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005993", "end": "2025-12-17 15:50:16.564725", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 15:50:16.558732", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004292", "end": "2025-12-17 18:49:45.929136", "msg": "", "rc": 0, "start": "2025-12-17 18:49:45.924844", "stderr": "", "stderr_lines": [], "stdout": "27.0%", "stdout_lines": ["27.0%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005374", "end": "2025-12-17 18:50:16.805327", "msg": "", "rc": 0, "start": "2025-12-17 18:50:16.799953", "stderr": "", "stderr_lines": [], "stdout": "14.1%", "stdout_lines": ["14.1%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.007887", "end": "2025-12-17 18:50:17.843470", "msg": "", "rc": 0, "start": "2025-12-17 18:50:17.835583", "stderr": "", "stderr_lines": [], "stdout": "12.0%", "stdout_lines": ["12.0%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025341", "end": "2025-12-17 18:50:16.772745", "msg": "", "rc": 0, "start": "2025-12-17 18:50:16.747404", "stderr": "", "stderr_lines": [], "stdout": "21.2%", "stdout_lines": ["21.2%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004968", "end": "2025-12-17 18:50:17.301618", "msg": "", "rc": 0, "start": "2025-12-17 18:50:17.296650", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005074", "end": "2025-12-17 18:50:17.310635", "msg": "", "rc": 0, "start": "2025-12-17 18:50:17.305561", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003230", "end": "2025-12-17 18:50:17.349505", "msg": "", "rc": 0, "start": "2025-12-17 18:50:17.346275", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006480", "end": "2025-12-17 18:50:17.359598", "msg": "", "rc": 0, "start": "2025-12-17 18:50:17.353118", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006678", "end": "2025-12-17 18:50:17.374352", "msg": "", "rc": 0, "start": "2025-12-17 18:50:17.367674", "stderr": "", "stderr_lines": [], "stdout": "53.0°C", "stdout_lines": ["53.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003009", "end": "2025-12-17 18:49:51.142152", "msg": "", "rc": 0, "start": "2025-12-17 18:49:51.139143", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002964", "end": "2025-12-17 18:49:44.633318", "msg": "", "rc": 0, "start": "2025-12-17 18:49:44.630354", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.012364", "end": "2025-12-17 18:50:18.034784", "msg": "", "rc": 0, "start": "2025-12-17 18:50:18.022420", "stderr": "", "stderr_lines": [], "stdout": "32.6°C", "stdout_lines": ["32.6°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.014789", "end": "2025-12-17 18:50:18.055060", "msg": "", "rc": 0, "start": "2025-12-17 18:50:18.040271", "stderr": "", "stderr_lines": [], "stdout": "36.5°C", "stdout_lines": ["36.5°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003157", "end": "2025-12-17 18:50:18.281684", "msg": "", "rc": 0, "start": "2025-12-17 18:50:18.278527", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003015", "end": "2025-12-17 18:49:47.817667", "msg": "", "rc": 0, "start": "2025-12-17 18:49:47.814652", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003918", "end": "2025-12-17 15:50:18.530399", "msg": "", "rc": 0, "start": "2025-12-17 15:50:18.526481", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002608", "end": "2025-12-17 18:49:54.491082", "msg": "", "rc": 0, "start": "2025-12-17 18:49:54.488474", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003302", "end": "2025-12-17 18:50:18.708079", "msg": "", "rc": 0, "start": "2025-12-17 18:50:18.704777", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003610", "end": "2025-12-17 18:50:19.821424", "msg": "", "rc": 0, "start": "2025-12-17 18:50:19.817814", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.039352", "end": "2025-12-17 18:50:18.875825", "msg": "", "rc": 0, "start": "2025-12-17 18:50:18.836473", "stderr": "", "stderr_lines": [], "stdout": "38.7°C", "stdout_lines": ["38.7°C"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004539", "end": "2025-12-17 18:50:19.434506", "msg": "", "rc": 0, "start": "2025-12-17 18:50:19.429967", "stderr": "", "stderr_lines": [], "stdout": "0.24", "stdout_lines": ["0.24"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004073", "end": "2025-12-17 18:50:19.453398", "msg": "", "rc": 0, "start": "2025-12-17 18:50:19.449325", "stderr": "", "stderr_lines": [], "stdout": "0.46", "stdout_lines": ["0.46"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005380", "end": "2025-12-17 18:50:19.457630", "msg": "", "rc": 0, "start": "2025-12-17 18:50:19.452250", "stderr": "", "stderr_lines": [], "stdout": "0.39", "stdout_lines": ["0.39"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005502", "end": "2025-12-17 18:50:19.471092", "msg": "", "rc": 0, "start": "2025-12-17 18:50:19.465590", "stderr": "", "stderr_lines": [], "stdout": "0.07", "stdout_lines": ["0.07"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005308", "end": "2025-12-17 18:50:19.475399", "msg": "", "rc": 0, "start": "2025-12-17 18:50:19.470091", "stderr": "", "stderr_lines": [], "stdout": "0.75", "stdout_lines": ["0.75"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004440", "end": "2025-12-17 18:49:53.273189", "msg": "", "rc": 0, "start": "2025-12-17 18:49:53.268749", "stderr": "", "stderr_lines": [], "stdout": "0.08", "stdout_lines": ["0.08"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004917", "end": "2025-12-17 18:49:46.741839", "msg": "", "rc": 0, "start": "2025-12-17 18:49:46.736922", "stderr": "", "stderr_lines": [], "stdout": "0.19", "stdout_lines": ["0.19"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010195", "end": "2025-12-17 18:50:20.234039", "msg": "", "rc": 0, "start": "2025-12-17 18:50:20.223844", "stderr": "", "stderr_lines": [], "stdout": "0.15", "stdout_lines": ["0.15"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011032", "end": "2025-12-17 18:50:20.261487", "msg": "", "rc": 0, "start": "2025-12-17 18:50:20.250455", "stderr": "", "stderr_lines": [], "stdout": "0.20", "stdout_lines": ["0.20"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005534", "end": "2025-12-17 18:50:20.411579", "msg": "", "rc": 0, "start": "2025-12-17 18:50:20.406045", "stderr": "", "stderr_lines": [], "stdout": "0.07", "stdout_lines": ["0.07"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004932", "end": "2025-12-17 18:49:49.908173", "msg": "", "rc": 0, "start": "2025-12-17 18:49:49.903241", "stderr": "", "stderr_lines": [], "stdout": "0.55", "stdout_lines": ["0.55"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005944", "end": "2025-12-17 15:50:20.710816", "msg": "", "rc": 0, "start": "2025-12-17 15:50:20.704872", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004636", "end": "2025-12-17 18:49:56.704678", "msg": "", "rc": 0, "start": "2025-12-17 18:49:56.700042", "stderr": "", "stderr_lines": [], "stdout": "0.51", "stdout_lines": ["0.51"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005282", "end": "2025-12-17 18:50:20.851836", "msg": "", "rc": 0, "start": "2025-12-17 18:50:20.846554", "stderr": "", "stderr_lines": [], "stdout": "0.15", "stdout_lines": ["0.15"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010332", "end": "2025-12-17 18:50:22.011498", "msg": "", "rc": 0, "start": "2025-12-17 18:50:22.001166", "stderr": "", "stderr_lines": [], "stdout": "1.79", "stdout_lines": ["1.79"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.027634", "end": "2025-12-17 18:50:21.104641", "msg": "", "rc": 0, "start": "2025-12-17 18:50:21.077007", "stderr": "", "stderr_lines": [], "stdout": "0.42", "stdout_lines": ["0.42"]} + +TASK [Display health status] *************************************************** +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:50:11 up 3 days, 8:22, 1 user, load average: 0.46, 0.23, 0.19\nDisk Usage: 22%\nMemory Usage: 22.6%\nCPU Load: 0.46\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:50:11 up 22 days, 5:41, 1 user, load average: 0.27, 0.15, 0.10\nDisk Usage: 23%\nMemory Usage: 77.8%\nCPU Load: 0.24\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:50:11 up 22 days, 6:01, 1 user, load average: 0.46, 0.60, 0.74\nDisk Usage: 14%\nMemory Usage: 48.9%\nCPU Load: 0.39\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:50:11 up 22 days, 7:14, 1 user, load average: 0.52, 0.63, 0.72\nDisk Usage: 14%\nMemory Usage: 60.1%\nCPU Load: 0.75\nCPU Temp: 53.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:50:11 up 22 days, 8:00, 1 user, load average: 0.09, 0.05, 0.01\nDisk Usage: 9%\nMemory Usage: 8.9%\nCPU Load: 0.07\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:50:12 up 15 days, 8:16, 1 user, load average: 0.22, 0.14, 0.10\nDisk Usage: 21%\nMemory Usage: 21.2%\nCPU Load: 0.42\nCPU Temp: 38.7°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:50:12 up 194 days, 10:23, 1 user, load average: 0.14, 0.20, 0.18\nDisk Usage: 6%\nMemory Usage: 13.0%\nCPU Load: 0.20\nCPU Temp: 36.5°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:50:12 up 194 days, 10:23, 1 user, load average: 0.18, 0.17, 0.11\nDisk Usage: 3%\nMemory Usage: 6.8%\nCPU Load: 0.15\nCPU Temp: 32.6°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:49:45 up 11 days, 6:39, 0 user, load average: 0.08, 0.20, 0.22\nDisk Usage: 48%\nMemory Usage: 71.1%\nCPU Load: 0.08\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:49:38 up 18 days, 2:51, 0 user, load average: 0.03, 0.03, 0.00\nDisk Usage: 25%\nMemory Usage: 69.1%\nCPU Load: 0.19\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:50:12 up 3 days, 8:21, 1 user, load average: 0.08, 0.03, 0.01\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.07\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:49:42 up 20 days, 21:43, 0 user, load average: 0.51, 0.59, 0.53\nDisk Usage: 28%\nMemory Usage: 27.0%\nCPU Load: 0.55\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:49:48 up 17 days, 8:05, 0 user, load average: 0.23, 0.26, 0.35\nDisk Usage: 76%\nMemory Usage: 59.4%\nCPU Load: 0.51\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 3:50PM up 22 days, 5:40, 1 user, load averages: 0.26, 0.25, 0.24\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:50:12 up 3 days, 8:21, 1 user, load average: 0.08, 0.06, 0.04\nDisk Usage: 79%\nMemory Usage: 14.1%\nCPU Load: 0.15\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:50:13 up 1:09, 1 user, load average: 1.51, 1.19, 1.12\nDisk Usage: 1%\nMemory Usage: 12.0%\nCPU Load: 1.79\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T23:50:22.081856+00:00* diff --git a/logs/tasks_logs/2025/12/17/task_235522_1d2888_all_[Planifié]_Health-check-5min_completed.md b/logs/tasks_logs/2025/12/17/task_235522_1d2888_all_[Planifié]_Health-check-5min_completed.md new file mode 100644 index 0000000..d66febe --- /dev/null +++ b/logs/tasks_logs/2025/12/17/task_235522_1d2888_all_[Planifié]_Health-check-5min_completed.md @@ -0,0 +1,224 @@ +# ✅ [Planifié] Health-check-5min + +## Informations + +| Propriété | Valeur | +|-----------|--------| +| **ID** | `22715bb00c6a4196ac7dcd81ec5ac99b` | +| **Nom** | [Planifié] Health-check-5min | +| **Cible** | `all` | +| **Statut** | completed | +| **Type** | Planifié | +| **Progression** | 100% | +| **Début** | 2025-12-17T23:55:00.000950+00:00 | +| **Fin** | 2025-12-17T23:55:22.074747+00:00 | +| **Durée** | 22.1s | + +## Sortie + +``` +Using /mnt/c/dev/git/python/homelab-automation-api-v2/ansible/ansible.cfg as config file + +PLAY [Health check on target host] ********************************************* + +TASK [Check if host is reachable (ping)] *************************************** +ok: [hp.nas.home] => {"changed": false, "ping": "pong"} +ok: [mimi.pc.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.xeon.home] => {"changed": false, "ping": "pong"} +ok: [hp2.i7.home] => {"changed": false, "ping": "pong"} +ok: [hp3.i5.home] => {"changed": false, "ping": "pong"} +ok: [dev.lab.home] => {"changed": false, "ping": "pong"} +ok: [media.labb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.8gb.home] => {"changed": false, "ping": "pong"} +ok: [raspi.4gb.home] => {"changed": false, "ping": "pong"} +ok: [automate.prod.home] => {"changed": false, "ping": "pong"} +ok: [ali2v.truenas.home] => {"changed": false, "ping": "pong"} +ok: [hp.truenas.home] => {"changed": false, "ping": "pong"} +ok: [localhost] => {"changed": false, "ping": "pong"} +ok: [dev.prod.home] => {"changed": false, "ping": "pong"} +ok: [jump.point.home] => {"changed": false, "ping": "pong"} +ok: [orangepi.pc.home] => {"changed": false, "ping": "pong"} + +TASK [Gather minimal facts] **************************************************** +ok: [hp.nas.home] +ok: [mimi.pc.home] +ok: [hp2.i7.home] +ok: [ali2v.xeon.home] +ok: [hp3.i5.home] +ok: [dev.lab.home] +ok: [media.labb.home] +ok: [raspi.8gb.home] +ok: [raspi.4gb.home] +ok: [ali2v.truenas.home] +ok: [automate.prod.home] +ok: [hp.truenas.home] +ok: [dev.prod.home] +ok: [jump.point.home] +ok: [localhost] +ok: [orangepi.pc.home] + +TASK [Get system uptime] ******************************************************* +ok: [hp2.i7.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003271", "end": "2025-12-17 18:55:10.981607", "msg": "", "rc": 0, "start": "2025-12-17 18:55:10.978336", "stderr": "", "stderr_lines": [], "stdout": " 18:55:10 up 22 days, 6:06, 1 user, load average: 0.42, 0.46, 0.63", "stdout_lines": [" 18:55:10 up 22 days, 6:06, 1 user, load average: 0.42, 0.46, 0.63"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003545", "end": "2025-12-17 18:55:10.989443", "msg": "", "rc": 0, "start": "2025-12-17 18:55:10.985898", "stderr": "", "stderr_lines": [], "stdout": " 18:55:10 up 22 days, 8:05, 1 user, load average: 0.02, 0.04, 0.00", "stdout_lines": [" 18:55:10 up 22 days, 8:05, 1 user, load average: 0.02, 0.04, 0.00"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002938", "end": "2025-12-17 18:55:11.009000", "msg": "", "rc": 0, "start": "2025-12-17 18:55:11.006062", "stderr": "", "stderr_lines": [], "stdout": " 18:55:11 up 3 days, 8:27, 1 user, load average: 0.26, 0.22, 0.19", "stdout_lines": [" 18:55:11 up 3 days, 8:27, 1 user, load average: 0.26, 0.22, 0.19"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003797", "end": "2025-12-17 18:55:11.007097", "msg": "", "rc": 0, "start": "2025-12-17 18:55:11.003300", "stderr": "", "stderr_lines": [], "stdout": " 18:55:11 up 22 days, 7:19, 1 user, load average: 0.65, 0.77, 0.76", "stdout_lines": [" 18:55:11 up 22 days, 7:19, 1 user, load average: 0.65, 0.77, 0.76"]} +ok: [dev.lab.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002682", "end": "2025-12-17 18:54:44.780680", "msg": "", "rc": 0, "start": "2025-12-17 18:54:44.777998", "stderr": "", "stderr_lines": [], "stdout": " 18:54:44 up 11 days, 6:44, 0 user, load average: 0.17, 0.19, 0.21", "stdout_lines": [" 18:54:44 up 11 days, 6:44, 0 user, load average: 0.17, 0.19, 0.21"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008369", "end": "2025-12-17 18:55:11.653689", "msg": "", "rc": 0, "start": "2025-12-17 18:55:11.645320", "stderr": "", "stderr_lines": [], "stdout": " 18:55:11 up 194 days, 10:28, 1 user, load average: 0.19, 0.18, 0.11", "stdout_lines": [" 18:55:11 up 194 days, 10:28, 1 user, load average: 0.19, 0.18, 0.11"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.009619", "end": "2025-12-17 18:55:11.706769", "msg": "", "rc": 0, "start": "2025-12-17 18:55:11.697150", "stderr": "", "stderr_lines": [], "stdout": " 18:55:11 up 194 days, 10:28, 1 user, load average: 0.20, 0.21, 0.18", "stdout_lines": [" 18:55:11 up 194 days, 10:28, 1 user, load average: 0.20, 0.21, 0.18"]} +ok: [hp.nas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:01.004508", "end": "2025-12-17 18:55:11.974558", "msg": "", "rc": 0, "start": "2025-12-17 18:55:10.970050", "stderr": "", "stderr_lines": [], "stdout": " 18:55:10 up 22 days, 5:46, 1 user, load average: 0.22, 0.20, 0.12", "stdout_lines": [" 18:55:10 up 22 days, 5:46, 1 user, load average: 0.22, 0.20, 0.12"]} +ok: [media.labb.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003411", "end": "2025-12-17 18:54:38.711139", "msg": "", "rc": 0, "start": "2025-12-17 18:54:38.707728", "stderr": "", "stderr_lines": [], "stdout": " 18:54:38 up 18 days, 2:56, 0 user, load average: 0.00, 0.02, 0.00", "stdout_lines": [" 18:54:38 up 18 days, 2:56, 0 user, load average: 0.00, 0.02, 0.00"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004869", "end": "2025-12-17 18:55:12.150813", "msg": "", "rc": 0, "start": "2025-12-17 18:55:12.145944", "stderr": "", "stderr_lines": [], "stdout": " 18:55:12 up 3 days, 8:26, 1 user, load average: 0.03, 0.06, 0.01", "stdout_lines": [" 18:55:12 up 3 days, 8:26, 1 user, load average: 0.03, 0.06, 0.01"]} +ok: [automate.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003516", "end": "2025-12-17 18:54:41.653631", "msg": "", "rc": 0, "start": "2025-12-17 18:54:41.650115", "stderr": "", "stderr_lines": [], "stdout": " 18:54:41 up 20 days, 21:48, 0 user, load average: 0.51, 0.48, 0.50", "stdout_lines": [" 18:54:41 up 20 days, 21:48, 0 user, load average: 0.51, 0.48, 0.50"]} +ok: [dev.prod.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.002933", "end": "2025-12-17 18:54:48.338224", "msg": "", "rc": 0, "start": "2025-12-17 18:54:48.335291", "stderr": "", "stderr_lines": [], "stdout": " 18:54:48 up 17 days, 8:10, 0 user, load average: 0.18, 0.25, 0.32", "stdout_lines": [" 18:54:48 up 17 days, 8:10, 0 user, load average: 0.18, 0.25, 0.32"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.004132", "end": "2025-12-17 15:55:12.409468", "msg": "", "rc": 0, "start": "2025-12-17 15:55:12.405336", "stderr": "", "stderr_lines": [], "stdout": " 3:55PM up 22 days, 5:44, 1 user, load averages: 0.16, 0.22, 0.24", "stdout_lines": [" 3:55PM up 22 days, 5:44, 1 user, load averages: 0.16, 0.22, 0.24"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.019452", "end": "2025-12-17 18:55:12.370932", "msg": "", "rc": 0, "start": "2025-12-17 18:55:12.351480", "stderr": "", "stderr_lines": [], "stdout": " 18:55:12 up 15 days, 8:21, 1 user, load average: 0.30, 0.17, 0.11", "stdout_lines": [" 18:55:12 up 15 days, 8:21, 1 user, load average: 0.30, 0.17, 0.11"]} +ok: [jump.point.home] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.003689", "end": "2025-12-17 18:55:12.564019", "msg": "", "rc": 0, "start": "2025-12-17 18:55:12.560330", "stderr": "", "stderr_lines": [], "stdout": " 18:55:12 up 3 days, 8:26, 1 user, load average: 0.08, 0.13, 0.08", "stdout_lines": [" 18:55:12 up 3 days, 8:26, 1 user, load average: 0.08, 0.13, 0.08"]} +ok: [localhost] => {"changed": false, "cmd": ["uptime"], "delta": "0:00:00.008265", "end": "2025-12-17 18:55:12.991720", "msg": "", "rc": 0, "start": "2025-12-17 18:55:12.983455", "stderr": "", "stderr_lines": [], "stdout": " 18:55:12 up 1:14, 1 user, load average: 1.50, 1.23, 1.14", "stdout_lines": [" 18:55:12 up 1:14, 1 user, load average: 1.50, 1.23, 1.14"]} + +TASK [Get disk usage] ********************************************************** +ok: [hp.nas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004350", "end": "2025-12-17 18:55:13.016197", "msg": "", "rc": 0, "start": "2025-12-17 18:55:13.011847", "stderr": "", "stderr_lines": [], "stdout": "23%", "stdout_lines": ["23%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004124", "end": "2025-12-17 18:55:13.022596", "msg": "", "rc": 0, "start": "2025-12-17 18:55:13.018472", "stderr": "", "stderr_lines": [], "stdout": "22%", "stdout_lines": ["22%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004779", "end": "2025-12-17 18:55:13.024577", "msg": "", "rc": 0, "start": "2025-12-17 18:55:13.019798", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004844", "end": "2025-12-17 18:55:13.065278", "msg": "", "rc": 0, "start": "2025-12-17 18:55:13.060434", "stderr": "", "stderr_lines": [], "stdout": "9%", "stdout_lines": ["9%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005627", "end": "2025-12-17 18:55:13.070151", "msg": "", "rc": 0, "start": "2025-12-17 18:55:13.064524", "stderr": "", "stderr_lines": [], "stdout": "14%", "stdout_lines": ["14%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.004822", "end": "2025-12-17 18:54:46.839723", "msg": "", "rc": 0, "start": "2025-12-17 18:54:46.834901", "stderr": "", "stderr_lines": [], "stdout": "48%", "stdout_lines": ["48%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.006317", "end": "2025-12-17 18:54:40.316634", "msg": "", "rc": 0, "start": "2025-12-17 18:54:40.310317", "stderr": "", "stderr_lines": [], "stdout": "25%", "stdout_lines": ["25%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.010462", "end": "2025-12-17 18:55:13.760850", "msg": "", "rc": 0, "start": "2025-12-17 18:55:13.750388", "stderr": "", "stderr_lines": [], "stdout": "3%", "stdout_lines": ["3%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.011456", "end": "2025-12-17 18:55:13.791963", "msg": "", "rc": 0, "start": "2025-12-17 18:55:13.780507", "stderr": "", "stderr_lines": [], "stdout": "6%", "stdout_lines": ["6%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005696", "end": "2025-12-17 18:55:13.989593", "msg": "", "rc": 0, "start": "2025-12-17 18:55:13.983897", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005249", "end": "2025-12-17 18:54:43.481511", "msg": "", "rc": 0, "start": "2025-12-17 18:54:43.476262", "stderr": "", "stderr_lines": [], "stdout": "28%", "stdout_lines": ["28%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005045", "end": "2025-12-17 18:54:50.183371", "msg": "", "rc": 0, "start": "2025-12-17 18:54:50.178326", "stderr": "", "stderr_lines": [], "stdout": "76%", "stdout_lines": ["76%"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005452", "end": "2025-12-17 15:55:14.243134", "msg": "", "rc": 0, "start": "2025-12-17 15:55:14.237682", "stderr": "", "stderr_lines": [], "stdout": "10%", "stdout_lines": ["10%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.005347", "end": "2025-12-17 18:55:14.415637", "msg": "", "rc": 0, "start": "2025-12-17 18:55:14.410290", "stderr": "", "stderr_lines": [], "stdout": "79%", "stdout_lines": ["79%"]} +ok: [localhost] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.020869", "end": "2025-12-17 18:55:14.883448", "msg": "", "rc": 0, "start": "2025-12-17 18:55:14.862579", "stderr": "", "stderr_lines": [], "stdout": "1%", "stdout_lines": ["1%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "df -h / | tail -1 | awk '{print $5}'", "delta": "0:00:00.025628", "end": "2025-12-17 18:55:14.409498", "msg": "", "rc": 0, "start": "2025-12-17 18:55:14.383870", "stderr": "", "stderr_lines": [], "stdout": "21%", "stdout_lines": ["21%"]} + +TASK [Get memory usage (Linux)] ************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004298", "end": "2025-12-17 18:55:14.943302", "msg": "", "rc": 0, "start": "2025-12-17 18:55:14.939004", "stderr": "", "stderr_lines": [], "stdout": "77.9%", "stdout_lines": ["77.9%"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004085", "end": "2025-12-17 18:55:14.968723", "msg": "", "rc": 0, "start": "2025-12-17 18:55:14.964638", "stderr": "", "stderr_lines": [], "stdout": "22.5%", "stdout_lines": ["22.5%"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005078", "end": "2025-12-17 18:55:14.973306", "msg": "", "rc": 0, "start": "2025-12-17 18:55:14.968228", "stderr": "", "stderr_lines": [], "stdout": "49.0%", "stdout_lines": ["49.0%"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004964", "end": "2025-12-17 18:55:14.989622", "msg": "", "rc": 0, "start": "2025-12-17 18:55:14.984658", "stderr": "", "stderr_lines": [], "stdout": "9.0%", "stdout_lines": ["9.0%"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005964", "end": "2025-12-17 18:55:15.014716", "msg": "", "rc": 0, "start": "2025-12-17 18:55:15.008752", "stderr": "", "stderr_lines": [], "stdout": "60.1%", "stdout_lines": ["60.1%"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004109", "end": "2025-12-17 18:54:48.777929", "msg": "", "rc": 0, "start": "2025-12-17 18:54:48.773820", "stderr": "", "stderr_lines": [], "stdout": "71.1%", "stdout_lines": ["71.1%"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.007362", "end": "2025-12-17 18:54:42.270871", "msg": "", "rc": 0, "start": "2025-12-17 18:54:42.263509", "stderr": "", "stderr_lines": [], "stdout": "69.0%", "stdout_lines": ["69.0%"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010886", "end": "2025-12-17 18:55:15.633739", "msg": "", "rc": 0, "start": "2025-12-17 18:55:15.622853", "stderr": "", "stderr_lines": [], "stdout": "6.9%", "stdout_lines": ["6.9%"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.011877", "end": "2025-12-17 18:55:15.672009", "msg": "", "rc": 0, "start": "2025-12-17 18:55:15.660132", "stderr": "", "stderr_lines": [], "stdout": "12.9%", "stdout_lines": ["12.9%"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005864", "end": "2025-12-17 18:55:15.914927", "msg": "", "rc": 0, "start": "2025-12-17 18:55:15.909063", "stderr": "", "stderr_lines": [], "stdout": "35.5%", "stdout_lines": ["35.5%"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.003663", "end": "2025-12-17 18:54:52.050273", "msg": "", "rc": 0, "start": "2025-12-17 18:54:52.046610", "stderr": "", "stderr_lines": [], "stdout": "58.8%", "stdout_lines": ["58.8%"]} +fatal: [hp.truenas.home]: FAILED! => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005154", "end": "2025-12-17 15:55:16.121430", "msg": "non-zero return code", "rc": 2, "start": "2025-12-17 15:55:16.116276", "stderr": "cat: /proc/meminfo: No such file or directory\nawk: division by zero\n source line number 1", "stderr_lines": ["cat: /proc/meminfo: No such file or directory", "awk: division by zero", " source line number 1"], "stdout": "", "stdout_lines": []} +...ignoring +ok: [automate.prod.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.004336", "end": "2025-12-17 18:54:45.465774", "msg": "", "rc": 0, "start": "2025-12-17 18:54:45.461438", "stderr": "", "stderr_lines": [], "stdout": "26.3%", "stdout_lines": ["26.3%"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.005615", "end": "2025-12-17 18:55:16.355403", "msg": "", "rc": 0, "start": "2025-12-17 18:55:16.349788", "stderr": "", "stderr_lines": [], "stdout": "13.9%", "stdout_lines": ["13.9%"]} +ok: [localhost] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.010226", "end": "2025-12-17 18:55:16.946138", "msg": "", "rc": 0, "start": "2025-12-17 18:55:16.935912", "stderr": "", "stderr_lines": [], "stdout": "11.9%", "stdout_lines": ["11.9%"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if command -v free >/dev/null 2>&1; then\n free -m | grep Mem | awk '{printf \"%.1f%%\", $3/$2 * 100}'\nelse\n # Fallback for systems without free command\n cat /proc/meminfo | awk '/MemTotal/{total=$2} /MemAvailable/{avail=$2} END{printf \"%.1f%%\", (total-avail)/total*100}'\nfi\n", "delta": "0:00:00.025990", "end": "2025-12-17 18:55:16.325140", "msg": "", "rc": 0, "start": "2025-12-17 18:55:16.299150", "stderr": "", "stderr_lines": [], "stdout": "20.0%", "stdout_lines": ["20.0%"]} + +TASK [Get CPU temperature (ARM/SBC)] ******************************************* +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005512", "end": "2025-12-17 18:55:16.838932", "msg": "", "rc": 0, "start": "2025-12-17 18:55:16.833420", "stderr": "", "stderr_lines": [], "stdout": "30.0°C", "stdout_lines": ["30.0°C"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.004903", "end": "2025-12-17 18:55:16.871175", "msg": "", "rc": 0, "start": "2025-12-17 18:55:16.866272", "stderr": "", "stderr_lines": [], "stdout": "46.0°C", "stdout_lines": ["46.0°C"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006218", "end": "2025-12-17 18:55:16.885455", "msg": "", "rc": 0, "start": "2025-12-17 18:55:16.879237", "stderr": "cat: /sys/class/thermal/thermal_zone0/temp: No data available", "stderr_lines": ["cat: /sys/class/thermal/thermal_zone0/temp: No data available"], "stdout": "0.0°C", "stdout_lines": ["0.0°C"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003179", "end": "2025-12-17 18:55:16.897788", "msg": "", "rc": 0, "start": "2025-12-17 18:55:16.894609", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.006634", "end": "2025-12-17 18:55:16.932303", "msg": "", "rc": 0, "start": "2025-12-17 18:55:16.925669", "stderr": "", "stderr_lines": [], "stdout": "53.0°C", "stdout_lines": ["53.0°C"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.002419", "end": "2025-12-17 18:54:50.673528", "msg": "", "rc": 0, "start": "2025-12-17 18:54:50.671109", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003365", "end": "2025-12-17 18:54:44.194742", "msg": "", "rc": 0, "start": "2025-12-17 18:54:44.191377", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.011617", "end": "2025-12-17 18:55:17.546730", "msg": "", "rc": 0, "start": "2025-12-17 18:55:17.535113", "stderr": "", "stderr_lines": [], "stdout": "32.6°C", "stdout_lines": ["32.6°C"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.013173", "end": "2025-12-17 18:55:17.595451", "msg": "", "rc": 0, "start": "2025-12-17 18:55:17.582278", "stderr": "", "stderr_lines": [], "stdout": "36.0°C", "stdout_lines": ["36.0°C"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003559", "end": "2025-12-17 18:55:17.821673", "msg": "", "rc": 0, "start": "2025-12-17 18:55:17.818114", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003994", "end": "2025-12-17 15:55:18.051264", "msg": "", "rc": 0, "start": "2025-12-17 15:55:18.047270", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003213", "end": "2025-12-17 18:54:54.000802", "msg": "", "rc": 0, "start": "2025-12-17 18:54:53.997589", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003225", "end": "2025-12-17 18:54:47.433782", "msg": "", "rc": 0, "start": "2025-12-17 18:54:47.430557", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.003097", "end": "2025-12-17 18:55:18.245260", "msg": "", "rc": 0, "start": "2025-12-17 18:55:18.242163", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.029454", "end": "2025-12-17 18:55:18.242919", "msg": "", "rc": 0, "start": "2025-12-17 18:55:18.213465", "stderr": "", "stderr_lines": [], "stdout": "36.6°C", "stdout_lines": ["36.6°C"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /sys/class/thermal/thermal_zone0/temp ]; then\n temp=$(cat /sys/class/thermal/thermal_zone0/temp)\n # Use awk instead of bc for better compatibility\n echo \"${temp}\" | awk '{printf \"%.1f°C\", $1/1000}'\nelse\n echo \"N/A\"\nfi\n", "delta": "0:00:00.005019", "end": "2025-12-17 18:55:18.976286", "msg": "", "rc": 0, "start": "2025-12-17 18:55:18.971267", "stderr": "", "stderr_lines": [], "stdout": "N/A", "stdout_lines": ["N/A"]} + +TASK [Get CPU load] ************************************************************ +ok: [hp.nas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004177", "end": "2025-12-17 18:55:18.795995", "msg": "", "rc": 0, "start": "2025-12-17 18:55:18.791818", "stderr": "", "stderr_lines": [], "stdout": "0.21", "stdout_lines": ["0.21"]} +ok: [ali2v.xeon.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004026", "end": "2025-12-17 18:55:18.802218", "msg": "", "rc": 0, "start": "2025-12-17 18:55:18.798192", "stderr": "", "stderr_lines": [], "stdout": "0.54", "stdout_lines": ["0.54"]} +ok: [hp2.i7.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004784", "end": "2025-12-17 18:55:18.808612", "msg": "", "rc": 0, "start": "2025-12-17 18:55:18.803828", "stderr": "", "stderr_lines": [], "stdout": "0.51", "stdout_lines": ["0.51"]} +ok: [mimi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005078", "end": "2025-12-17 18:55:18.838653", "msg": "", "rc": 0, "start": "2025-12-17 18:55:18.833575", "stderr": "", "stderr_lines": [], "stdout": "0.02", "stdout_lines": ["0.02"]} +ok: [hp3.i5.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006551", "end": "2025-12-17 18:55:18.862437", "msg": "", "rc": 0, "start": "2025-12-17 18:55:18.855886", "stderr": "", "stderr_lines": [], "stdout": "1.18", "stdout_lines": ["1.18"]} +ok: [dev.lab.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004129", "end": "2025-12-17 18:54:52.596694", "msg": "", "rc": 0, "start": "2025-12-17 18:54:52.592565", "stderr": "", "stderr_lines": [], "stdout": "0.14", "stdout_lines": ["0.14"]} +ok: [media.labb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005043", "end": "2025-12-17 18:54:46.098278", "msg": "", "rc": 0, "start": "2025-12-17 18:54:46.093235", "stderr": "", "stderr_lines": [], "stdout": "0.00", "stdout_lines": ["0.00"]} +ok: [raspi.8gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.010244", "end": "2025-12-17 18:55:19.468463", "msg": "", "rc": 0, "start": "2025-12-17 18:55:19.458219", "stderr": "", "stderr_lines": [], "stdout": "0.39", "stdout_lines": ["0.39"]} +ok: [raspi.4gb.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.011211", "end": "2025-12-17 18:55:19.515340", "msg": "", "rc": 0, "start": "2025-12-17 18:55:19.504129", "stderr": "", "stderr_lines": [], "stdout": "0.17", "stdout_lines": ["0.17"]} +ok: [ali2v.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005630", "end": "2025-12-17 18:55:19.738084", "msg": "", "rc": 0, "start": "2025-12-17 18:55:19.732454", "stderr": "", "stderr_lines": [], "stdout": "0.03", "stdout_lines": ["0.03"]} +ok: [automate.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004950", "end": "2025-12-17 18:54:49.254801", "msg": "", "rc": 0, "start": "2025-12-17 18:54:49.249851", "stderr": "", "stderr_lines": [], "stdout": "0.55", "stdout_lines": ["0.55"]} +ok: [dev.prod.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.004315", "end": "2025-12-17 18:54:55.884565", "msg": "", "rc": 0, "start": "2025-12-17 18:54:55.880250", "stderr": "", "stderr_lines": [], "stdout": "0.17", "stdout_lines": ["0.17"]} +ok: [hp.truenas.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.006104", "end": "2025-12-17 15:55:19.960257", "msg": "", "rc": 0, "start": "2025-12-17 15:55:19.954153", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []} +ok: [jump.point.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.005267", "end": "2025-12-17 18:55:20.163289", "msg": "", "rc": 0, "start": "2025-12-17 18:55:20.158022", "stderr": "", "stderr_lines": [], "stdout": "0.15", "stdout_lines": ["0.15"]} +ok: [localhost] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.007623", "end": "2025-12-17 18:55:20.869366", "msg": "", "rc": 0, "start": "2025-12-17 18:55:20.861743", "stderr": "", "stderr_lines": [], "stdout": "1.46", "stdout_lines": ["1.46"]} +ok: [orangepi.pc.home] => {"changed": false, "cmd": "if [ -f /proc/loadavg ]; then\n cat /proc/loadavg | awk '{print $1}'\nelse\n uptime | awk -F'load average:' '{print $2}' | awk -F',' '{print $1}' | tr -d ' '\nfi\n", "delta": "0:00:00.026692", "end": "2025-12-17 18:55:20.397123", "msg": "", "rc": 0, "start": "2025-12-17 18:55:20.370431", "stderr": "", "stderr_lines": [], "stdout": "0.41", "stdout_lines": ["0.41"]} + +TASK [Display health status] *************************************************** +ok: [hp.nas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.nas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:55:10 up 22 days, 5:46, 1 user, load average: 0.22, 0.20, 0.12\nDisk Usage: 23%\nMemory Usage: 77.9%\nCPU Load: 0.21\nCPU Temp: 30.0°C\n═══════════════════════════════════════\n" +} +ok: [ali2v.xeon.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.xeon.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:55:11 up 3 days, 8:27, 1 user, load average: 0.26, 0.22, 0.19\nDisk Usage: 22%\nMemory Usage: 22.5%\nCPU Load: 0.54\nCPU Temp: 46.0°C\n═══════════════════════════════════════\n" +} +ok: [hp2.i7.home] => { + "msg": "═══════════════════════════════════════\nHost: hp2.i7.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:55:10 up 22 days, 6:06, 1 user, load average: 0.42, 0.46, 0.63\nDisk Usage: 14%\nMemory Usage: 49.0%\nCPU Load: 0.51\nCPU Temp: 0.0°C\n═══════════════════════════════════════\n" +} +ok: [hp3.i5.home] => { + "msg": "═══════════════════════════════════════\nHost: hp3.i5.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:55:11 up 22 days, 7:19, 1 user, load average: 0.65, 0.77, 0.76\nDisk Usage: 14%\nMemory Usage: 60.1%\nCPU Load: 1.18\nCPU Temp: 53.0°C\n═══════════════════════════════════════\n" +} +ok: [mimi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: mimi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:55:10 up 22 days, 8:05, 1 user, load average: 0.02, 0.04, 0.00\nDisk Usage: 9%\nMemory Usage: 9.0%\nCPU Load: 0.02\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [orangepi.pc.home] => { + "msg": "═══════════════════════════════════════\nHost: orangepi.pc.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:55:12 up 15 days, 8:21, 1 user, load average: 0.30, 0.17, 0.11\nDisk Usage: 21%\nMemory Usage: 20.0%\nCPU Load: 0.41\nCPU Temp: 36.6°C\n═══════════════════════════════════════\n" +} +ok: [raspi.4gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.4gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:55:11 up 194 days, 10:28, 1 user, load average: 0.20, 0.21, 0.18\nDisk Usage: 6%\nMemory Usage: 12.9%\nCPU Load: 0.17\nCPU Temp: 36.0°C\n═══════════════════════════════════════\n" +} +ok: [raspi.8gb.home] => { + "msg": "═══════════════════════════════════════\nHost: raspi.8gb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:55:11 up 194 days, 10:28, 1 user, load average: 0.19, 0.18, 0.11\nDisk Usage: 3%\nMemory Usage: 6.9%\nCPU Load: 0.39\nCPU Temp: 32.6°C\n═══════════════════════════════════════\n" +} +ok: [dev.lab.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.lab.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:54:44 up 11 days, 6:44, 0 user, load average: 0.17, 0.19, 0.21\nDisk Usage: 48%\nMemory Usage: 71.1%\nCPU Load: 0.14\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [media.labb.home] => { + "msg": "═══════════════════════════════════════\nHost: media.labb.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:54:38 up 18 days, 2:56, 0 user, load average: 0.00, 0.02, 0.00\nDisk Usage: 25%\nMemory Usage: 69.0%\nCPU Load: 0.00\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [ali2v.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: ali2v.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:55:12 up 3 days, 8:26, 1 user, load average: 0.03, 0.06, 0.01\nDisk Usage: 1%\nMemory Usage: 35.5%\nCPU Load: 0.03\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [automate.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: automate.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:54:41 up 20 days, 21:48, 0 user, load average: 0.51, 0.48, 0.50\nDisk Usage: 28%\nMemory Usage: 26.3%\nCPU Load: 0.55\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [dev.prod.home] => { + "msg": "═══════════════════════════════════════\nHost: dev.prod.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:54:48 up 17 days, 8:10, 0 user, load average: 0.18, 0.25, 0.32\nDisk Usage: 76%\nMemory Usage: 58.8%\nCPU Load: 0.17\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [hp.truenas.home] => { + "msg": "═══════════════════════════════════════\nHost: hp.truenas.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 3:55PM up 22 days, 5:44, 1 user, load averages: 0.16, 0.22, 0.24\nDisk Usage: 10%\nMemory Usage: \nCPU Load: \nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [jump.point.home] => { + "msg": "═══════════════════════════════════════\nHost: jump.point.home\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:55:12 up 3 days, 8:26, 1 user, load average: 0.08, 0.13, 0.08\nDisk Usage: 79%\nMemory Usage: 13.9%\nCPU Load: 0.15\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} +ok: [localhost] => { + "msg": "═══════════════════════════════════════\nHost: localhost\nStatus: OK\n═══════════════════════════════════════\nUptime: 18:55:12 up 1:14, 1 user, load average: 1.50, 1.23, 1.14\nDisk Usage: 1%\nMemory Usage: 11.9%\nCPU Load: 1.46\nCPU Temp: N/A\n═══════════════════════════════════════\n" +} + +PLAY RECAP ********************************************************************* +ali2v.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +ali2v.xeon.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +automate.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.lab.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +dev.prod.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.nas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp.truenas.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=1 +hp2.i7.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +hp3.i5.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +jump.point.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +localhost : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +media.labb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +mimi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +orangepi.pc.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.4gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 +raspi.8gb.home : ok=8 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 + + +``` + +--- +*Généré automatiquement par Homelab Automation Dashboard* +*Date: 2025-12-17T23:55:22.120051+00:00* diff --git a/run_dev.sh b/run_dev.sh index d1aa11a..1faac13 100644 --- a/run_dev.sh +++ b/run_dev.sh @@ -22,6 +22,9 @@ fi cp docker/ssh_keys/id_automation_ansible ~/.ssh/ cp docker/ssh_keys/id_automation_ansible.pub ~/.ssh/ +# Forcer la clé SSH utilisée par l'app (notamment pour le terminal web) +export SSH_KEY_PATH="$HOME/.ssh/id_automation_ansible" + # ajouter les droits aux clés SSH (sans changer le répertoire courant du script) ( cd ~/.ssh diff --git a/tests/backend/test_terminal.py b/tests/backend/test_terminal.py new file mode 100644 index 0000000..6f27be1 --- /dev/null +++ b/tests/backend/test_terminal.py @@ -0,0 +1,181 @@ +""" +Tests for terminal SSH web feature. +""" +import hashlib +import pytest +from datetime import datetime, timedelta, timezone +from unittest.mock import AsyncMock, MagicMock, patch + +from app.services.terminal_service import ( + TerminalService, + terminal_service, + TERMINAL_SESSION_TTL_MINUTES, + TERMINAL_MAX_SESSIONS_PER_USER, +) + + +class TestTerminalService: + """Tests for TerminalService class.""" + + def test_generate_session_id(self): + """Test session ID generation produces unique IDs.""" + service = TerminalService() + id1 = service.generate_session_id() + id2 = service.generate_session_id() + + assert len(id1) == 64 # 32 bytes hex = 64 chars + assert len(id2) == 64 + assert id1 != id2 + + def test_generate_session_token(self): + """Test token generation produces unique tokens and valid hashes.""" + service = TerminalService() + token1, hash1 = service.generate_session_token() + token2, hash2 = service.generate_session_token() + + # Tokens should be unique + assert token1 != token2 + + # Hashes should be valid SHA256 + assert len(hash1) == 64 + assert len(hash2) == 64 + + # Hash should match token + computed_hash = hashlib.sha256(token1.encode()).hexdigest() + assert computed_hash == hash1 + + def test_verify_token_valid(self): + """Test token verification with valid token.""" + service = TerminalService() + token, token_hash = service.generate_session_token() + + assert service.verify_token(token, token_hash) is True + + def test_verify_token_invalid(self): + """Test token verification with invalid token.""" + service = TerminalService() + token, token_hash = service.generate_session_token() + + # Wrong token + assert service.verify_token("wrong_token", token_hash) is False + + # Wrong hash + assert service.verify_token(token, "wrong_hash") is False + + @pytest.mark.asyncio + async def test_allocate_port(self): + """Test port allocation.""" + service = TerminalService() + session_id = service.generate_session_id() + + port = await service.allocate_port(session_id) + + assert port >= 7680 + assert port <= 7700 + assert port in service._allocated_ports + assert service._allocated_ports[port] == session_id + + @pytest.mark.asyncio + async def test_allocate_port_unique(self): + """Test that allocated ports are unique.""" + service = TerminalService() + + ports = [] + for i in range(5): + session_id = service.generate_session_id() + port = await service.allocate_port(session_id) + ports.append(port) + + # All ports should be unique + assert len(ports) == len(set(ports)) + + @pytest.mark.asyncio + async def test_release_port(self): + """Test port release.""" + service = TerminalService() + session_id = service.generate_session_id() + + port = await service.allocate_port(session_id) + assert port in service._allocated_ports + + await service.release_port(port) + assert port not in service._allocated_ports + + def test_check_ttyd_available_not_found(self): + """Test ttyd availability check when not installed.""" + service = TerminalService() + service._ttyd_available = None # Reset cache + + with patch('shutil.which', return_value=None): + result = service.check_ttyd_available() + + assert result is False + assert service._ttyd_available is False + + def test_check_ttyd_available_found(self): + """Test ttyd availability check when installed.""" + service = TerminalService() + service._ttyd_available = None # Reset cache + + with patch('shutil.which', return_value='/usr/bin/ttyd'): + result = service.check_ttyd_available() + + assert result is True + assert service._ttyd_available is True + + def test_get_session_url_direct(self): + """Test session URL generation for direct access.""" + service = TerminalService() + url = service.get_session_url(7680, "test_token") + + assert url == "http://localhost:7680/" + + def test_get_session_url_with_base(self): + """Test session URL generation with base URL.""" + service = TerminalService() + url = service.get_session_url(7680, "test_token", base_url="https://example.com") + + assert url == "https://example.com/terminal/proxy/7680?token=test_token" + + def test_get_websocket_url(self): + """Test WebSocket URL generation.""" + service = TerminalService() + url = service.get_websocket_url(7680) + + assert url == "ws://localhost:7680/ws" + + def test_get_active_session_count_empty(self): + """Test active session count when no sessions.""" + service = TerminalService() + assert service.get_active_session_count() == 0 + + @pytest.mark.asyncio + async def test_terminate_session_not_found(self): + """Test terminating non-existent session.""" + service = TerminalService() + result = await service.terminate_session("nonexistent_id") + assert result is False + + +class TestTerminalSessionTTL: + """Tests for session TTL configuration.""" + + def test_session_ttl_default(self): + """Test default TTL value.""" + assert TERMINAL_SESSION_TTL_MINUTES == 30 + + def test_max_sessions_default(self): + """Test default max sessions per user.""" + assert TERMINAL_MAX_SESSIONS_PER_USER == 3 + + +class TestTerminalServiceSingleton: + """Tests for terminal service singleton.""" + + def test_global_instance(self): + """Test global terminal service instance exists.""" + from app.services.terminal_service import get_terminal_service + + service = get_terminal_service() + assert service is terminal_service + assert isinstance(service, TerminalService)