Copy to ClipboardCopied!Toggle word wrapToggle overflow
참고
Automation Dashboard는 현재 토큰이 만료될 때 refresh_token,client_id, client_secret 을 사용하여 새 access_token 및 refresh_token을 자동으로 가져옵니다. 유틸리티는 ping 끝점을 사용하여 Ansible Automation Platform 버전을 감지하고 올바른 토큰 새로 고침 끝점을 찾습니다.
예
podman exec automation-dashboard-web /venv/bin/python ./manage.py setclusters /clusters.yaml
Check if table exists.
Reading YML file.
Adding cluster: address=my-aap.example.com
INFO 2025-05-20 09:55:00,926 connector 187 140208297051968 Checking if is AAP 2.4 at https://my-aap.example.com:443
INFO 2025-05-20 09:55:00,926 connector 187 140208297051968 Pinging api https://my-aap.example.com:443/api/v2/ping/
INFO 2025-05-20 09:55:00,926 connector 187 140208297051968 Executing GET request to https://my-aap.example.com:443/api/v2/ping/
ERROR 2025-05-20 09:55:00,032 connector 301 140025281152832 GET request failed with status 404
Successfully set up AAP clusters
podmanexec automation-dashboard-web /venv/bin/python ./manage.py setclusters /clusters.yaml
Check if table exists.
Reading YML file.
Adding cluster: address=my-aap.example.com
INFO 2025-05-20 09:55:00,926 connector 187140208297051968 Checking if is AAP 2.4 at https://my-aap.example.com:443
INFO 2025-05-20 09:55:00,926 connector 187140208297051968 Pinging api https://my-aap.example.com:443/api/v2/ping/
INFO 2025-05-20 09:55:00,926 connector 187140208297051968 Executing GET request to https://my-aap.example.com:443/api/v2/ping/
ERROR 2025-05-20 09:55:00,032 connector 301140025281152832 GET request failed with status 404
Successfully set up AAP clusters
Copy to ClipboardCopied!Toggle word wrapToggle overflow
참고
Automation Dashboard는 Ansible Automation Platform 2.4, 2.5 및 2.6 인스턴스를 확인합니다. 예제 출력에 표시된 대로 404 오류가 발생할 수 있습니다. 오류에 대한 자세한 내용은 이 장의 확인 섹션을 참조하십시오.
다음 명령을 사용하여 데이터를 수동으로 가져와서 자동화 대시보드 구성을 테스트합니다.
podman exec -it automation-dashboard-web /venv/bin/python ./manage.py syncdata --since=2025-04-01 --until=2025-06-01
Successfully created Sync task for Cluster https://my-aap.example.com:443.
podmanexec-it automation-dashboard-web /venv/bin/python ./manage.py syncdata --since=2025-04-01 --until=2025-06-01
Successfully created Sync task for Cluster https://my-aap.example.com:443.
Copy to ClipboardCopied!Toggle word wrapToggle overflow
참고
테스트 시간을 줄이기 위해 짧은 날짜 간격을 사용하는 것이 좋습니다. 형식은 YYYY-MM-DD입니다.
그런 다음 journalctl 을 사용하여 진행 상황을 확인할 수 있습니다.
sudo journalctl -fn10
sudo journalctl -fn10
Copy to ClipboardCopied!Toggle word wrapToggle overflow
Copy to ClipboardCopied!Toggle word wrapToggle overflow
참고
디버깅을 위해 암호화된 access_token 및 refresh_token 을 일반 텍스트에 표시하려면 --decrypt 플래그가 필요합니다. 비보안 시스템에서는 이 명령을 사용하지 마십시오.
./manage.py getclusters --decrypt 로 생성된 출력을 파일 cluster .yaml에 작성하고 이를 . /manage.py setclusters cluster.yaml 의 입력으로 사용할 수 있습니다.
검증
설치 중에 오류 메시지가 표시되면 다음 표를 참조하십시오.
Expand
문제
가능한 원인
해결책
401 오류
잘못된 인증 정보 또는 토큰과 같은 인증 오류를 나타내는 무단 액세스 메시지입니다.
cluster .yaml에서 액세스 토큰이 올바른지 확인합니다.
401 오류
토큰이 만료되면 일시적인 401 오류가 예상되는 다음 즉시 새로 고침을 시도합니다.
자동 토큰 새로 고침이 실패하는 경우(예: 유효하지 않은 client_secret 또는 refresh_token) getclusters--decrypt 명령을 사용하여 데이터베이스에 저장된 인증 정보가 소스 clusters.yaml 파일에 일치하는지 수동으로 확인합니다. 일치하지 않는 경우 올바른 구성으로 setclusters 명령을 다시 실행합니다. 새로 고침 토큰을 한 번만 사용할 수 있습니다. 유효하지 않은 액세스 토큰으로 인해 setclusters 를 실행해야 하는 경우 새 액세스 및 새로 고침 토큰을 생성하고 소스 cluster .yaml 에서 사용합니다.
404 오류
이는 항목이 올바르게 구성되지 않았거나 올바른 엔드포인트를 가리키는 "찾을 수 없음" 메시지입니다.
cluster .yaml 에 사용된 Ansible Automation Platform 인스턴스 URL이 올바른지 확인합니다.
Copy to ClipboardCopied!Toggle word wrapToggle overflow
다음을 실행하여 컨테이너 로그를 확인할 수 있습니다.
journalctl CONTAINER_NAME=container (where container equals one of postgresql automation-dashboard-task or automation-dashboard-web)
For example:
journalctl CONTAINER_NAME=automation-dashboard-task
May 22 13:02:07 automation-dashboard automation-dashboard-task[1607]: [wait-for-migrations-dashboard.sh] Waiting for database migrations...
May 22 13:02:07 automation-dashboard automation-dashboard-task[1607]: [wait-for-migrations-dashboard.sh] Attempt 1
May 22 13:02:10 automation-dashboard automation-dashboard-task[1607]: INFO 2025-05-22 13:02:10,636 periodic 2 140568371550016 Starting sync task.
May 22 13:02:10 automation-dashboard automation-dashboard-task[1607]: INFO 2025-05-22 13:02:10,636 periodic 2 140568371550016 Retrieving clusters inform>
May 22 13:02:10 automation-dashboard automation-dashboard-task[1607]: INFO 2025-05-22 13:02:10,747 periodic 2 140568371550016 Retrieved 1 clusters.
May 22 13:02:10 automation-dashboard automation-dashboard-task[1607]: INFO 2025-05-22 13:02:10,761 periodic 2 140568371550016 Retrieving data from clust>
May 22 13:02:10 automation-dashboard automation-dashboard-task[1607]: INFO 2025-05-22 13:02:10,761 connector 2 140568371550016 Checking Ansible Automation Platform version at h>
May 22 13:02:10 automation-dashboard automation-dashboard-task[1607]: INFO 2025-05-22 13:02:10,761 connector 2 140568371550016 Checking if is Ansible Automation Platform 2.5 at>
May 22 13:02:10 automation-dashboard automation-dashboard-task[1607]: INFO 2025-05-22 13:02:10,761 connector 2 140568371550016 Pinging api https://ec2-3>
May 22 13:02:10 automation-dashboard automation-dashboard-task[1607]: INFO 2025-05-22 13:02:10,761 connector 2 140568371550016 Executing GET request to >
May 22 13:02:13 automation-dashboard automation-dashboard-task[1607]: ERROR 2025-05-22 13:02:13,820 connector 2 140568371550016 GET request failed with >
May 22 13:02:13 automation-dashboard automation-dashboard-task[1607]: INFO 2025-05-22 13:02:13,821 connector 2 140568371550016 Checking if is Ansible Automation Platform 2.4 at>
May 22 13:02:13 automation-dashboard automation-dashboard-task[1607]: INFO 2025-05-22 13:02:13,821 connector 2 140568371550016 Pinging api https://ec2-3>
May 22 13:02:13 automation-dashboard automation-dashboard-task[1607]: INFO 2025-05-22 13:02:13,821 connector 2 140568371550016 Executing GET request to >
May 22 13:02:16 automation-dashboard automation-dashboard-task[1607]: ERROR 2025-05-22 13:02:16,892 connector 2 140568371550016 GET request failed with ...
journalctl CONTAINER_NAME=container (where container equals one of postgresql automation-dashboard-task or automation-dashboard-web)
For example:
journalctl CONTAINER_NAME=automation-dashboard-task
May 2213:02:07 automation-dashboard automation-dashboard-task[1607]: [wait-for-migrations-dashboard.sh] Waiting for database migrations...
May 2213:02:07 automation-dashboard automation-dashboard-task[1607]: [wait-for-migrations-dashboard.sh] Attempt 1
May 2213:02:10 automation-dashboard automation-dashboard-task[1607]: INFO 2025-05-22 13:02:10,636 periodic 2140568371550016 Starting sync task.
May 2213:02:10 automation-dashboard automation-dashboard-task[1607]: INFO 2025-05-22 13:02:10,636 periodic 2140568371550016 Retrieving clusters inform>
May 2213:02:10 automation-dashboard automation-dashboard-task[1607]: INFO 2025-05-22 13:02:10,747 periodic 2140568371550016 Retrieved 1 clusters.
May 2213:02:10 automation-dashboard automation-dashboard-task[1607]: INFO 2025-05-22 13:02:10,761 periodic 2140568371550016 Retrieving data from clust>
May 2213:02:10 automation-dashboard automation-dashboard-task[1607]: INFO 2025-05-22 13:02:10,761 connector 2140568371550016 Checking Ansible Automation Platform version at h>
May 2213:02:10 automation-dashboard automation-dashboard-task[1607]: INFO 2025-05-22 13:02:10,761 connector 2140568371550016 Checking if is Ansible Automation Platform 2.5 at>
May 2213:02:10 automation-dashboard automation-dashboard-task[1607]: INFO 2025-05-22 13:02:10,761 connector 2140568371550016 Pinging api https://ec2-3>
May 2213:02:10 automation-dashboard automation-dashboard-task[1607]: INFO 2025-05-22 13:02:10,761 connector 2140568371550016 Executing GET request to >
May 2213:02:13 automation-dashboard automation-dashboard-task[1607]: ERROR 2025-05-22 13:02:13,820 connector 2140568371550016 GET request failed with >
May 2213:02:13 automation-dashboard automation-dashboard-task[1607]: INFO 2025-05-22 13:02:13,821 connector 2140568371550016 Checking if is Ansible Automation Platform 2.4 at>
May 2213:02:13 automation-dashboard automation-dashboard-task[1607]: INFO 2025-05-22 13:02:13,821 connector 2140568371550016 Pinging api https://ec2-3>
May 2213:02:13 automation-dashboard automation-dashboard-task[1607]: INFO 2025-05-22 13:02:13,821 connector 2140568371550016 Executing GET request to >
May 2213:02:16 automation-dashboard automation-dashboard-task[1607]: ERROR 2025-05-22 13:02:16,892 connector 2140568371550016 GET request failed with ...
Copy to ClipboardCopied!Toggle word wrapToggle overflow
다음 로그 스니펫에서는 성공적인 토큰 새로 고침을 보여줍니다.
참고
이 로그 스니펫에서는 간결성을 위해 타임스탬프 및 호스트 이름을 생략합니다.
예
journalctl CONTAINER_NAME=automation-dashboard-task
INFO Checking if is AAP 2.5 ... 2.6 at https://app.example.com:443
INFO Pinging api https://app.example.com:443/api/gateway/v1/ping/
INFO Detected AAP version AAP 2.6 at https://app.example.com:443
INFO Executing GET request to https://app.example.com:443/api/controller/v2/organizations/?page_size=100&page=1
ERROR GET request failed with status 401
INFO Token refresh POST request succedded with status 201
ERROR GET after reauth response.status_code=200
INFO Executing GET request to https://app.example.com:443/api/controller/v2/job_templates/?page_size=200&page=1
Executing GET request to https://app.example.com:443/api/controller/v2/jobs/?page_size=100&page=1&order_by=finished&finished__gt=2025-10-23T13:01:09.768681Z
journalctl CONTAINER_NAME=automation-dashboard-task
INFO Checking if is AAP 2.5... 2.6 at https://app.example.com:443
INFO Pinging api https://app.example.com:443/api/gateway/v1/ping/
INFO Detected AAP version AAP 2.6 at https://app.example.com:443
INFO Executing GET request to https://app.example.com:443/api/controller/v2/organizations/?page_size=100&page=1
ERROR GET request failed with status 401
INFO Token refresh POST request succedded with status 201
ERROR GET after reauth response.status_code=200
INFO Executing GET request to https://app.example.com:443/api/controller/v2/job_templates/?page_size=200&page=1
Executing GET request to https://app.example.com:443/api/controller/v2/jobs/?page_size=100&page=1&order_by=finished&finished__gt=2025-10-23T13:01:09.768681Z
Copy to ClipboardCopied!Toggle word wrapToggle overflow