{"meta":{"title":"Использование журналов выполнения рабочих процессов","intro":"Вы можете просматривать, искать и скачивать журналы для каждого задания в выполнении рабочего процесса.","product":"GitHub Actions","breadcrumbs":[{"href":"/ru/actions","title":"GitHub Actions"},{"href":"/ru/actions/how-tos","title":"Инструкции"},{"href":"/ru/actions/how-tos/monitor-workflows","title":"Мониторинг рабочих процессов"},{"href":"/ru/actions/how-tos/monitor-workflows/use-workflow-run-logs","title":"Использование журналов выполнения рабочего процесса"}],"documentType":"article"},"body":"# Использование журналов выполнения рабочих процессов\n\nВы можете просматривать, искать и скачивать журналы для каждого задания в выполнении рабочего процесса.\n\nНа странице выполнения рабочего процесса можно посмотреть состояние рабочего процесса, выполняется он или завершен. Для просмотра сведений о выполнении рабочего процесса, включая общедоступные репозитории, необходимо войти в учетную запись GitHub. Дополнительные сведения см. в разделе [Права доступа на GitHub](/ru/get-started/learning-about-github/access-permissions-on-github).\n\nЕсли выполнение завершилось, вы можете узнать, был ли результат успешным, неудачным, отмененным или нейтральным. Если выполнение завершилось неудачно, можно просмотреть журналы сборки и выполнить по ним поиск, чтобы диагностировать сбой и повторно запустить рабочий процесс. Вы также можете просматривать оплачиваемые минуты выполнения задания, а также скачивать журналы и артефакты сборки.\n\nGitHub Actions использует API проверок для вывода состояний, результатов и журналов рабочего процесса. GitHub создает новый набор проверок для каждого запуска рабочего процесса. Набор проверок содержит контрольный прогон для каждого задания в рабочем процессе, и каждое задание включает шаги. GitHub Actions выполняются как шаг в рабочем процессе. Дополнительные сведения об API проверки см. в разделе [Конечные точки REST API для проверок](/ru/rest/checks).\n\n> \\[!NOTE]\n> Убедитесь, что в репозитории фиксируются только допустимые файлы рабочего процесса. Если `.github/workflows` содержит недопустимый файл рабочего процесса, GitHub Actions создает для каждой новой фиксации рабочий процесс, завершающийся сбоем.\n\n## Просмотр журналов для диагностики сбоев\n\nЕсли выполнение рабочего процесса завершается неудачно, вы можете увидеть, какой шаг вызвал сбой, и проверить журналы сборки неудачного шага, чтобы устранить неполадки. Вы можете увидеть время, необходимое для выполнения каждого шага. Вы также можете скопировать постоянную ссылку на определенную строку в файле журнала, чтобы поделиться со своей командой. Для выполнения этих действий требуется доступ на чтение к репозиторию.\n\nПомимо шагов, настроенных в файле рабочего процесса, GitHub добавляет в каждое задание два дополнительных шага для настройки и завершения выполнения задания. Эти шаги регистрируются в рабочем процессе с именами \"Настройка задания\" и \"Завершение задания\".\n\nДля заданий, выполняемых в средствах выполнения, размещенных в GitHub, шаг \"Настройка задания\" записывает сведения об образе средства выполнения и включает ссылку на список предустановленных средств, которые имелись на компьютере средства выполнения.\n\n1. На GitHubперейдите на главную страницу репозитория.\n2. Под именем репозитория щелкните **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-play\" aria-label=\"play\" role=\"img\"><path d=\"M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0ZM1.5 8a6.5 6.5 0 1 0 13 0 6.5 6.5 0 0 0-13 0Zm4.879-2.773 4.264 2.559a.25.25 0 0 1 0 .428l-4.264 2.559A.25.25 0 0 1 6 10.559V5.442a.25.25 0 0 1 .379-.215Z\"></path></svg> Actions**.\n\n   ![Снимок экрана: вкладки для репозитория github/docs. Вкладка \"Действия\" выделена оранжевым контуром.](/assets/images/help/repository/actions-tab-global-nav-update.png)\n3. На левой боковой панели щелкните нужный рабочий процесс.\n\n   ![Снимок экрана: левая боковая панель вкладки \"Действия\". Рабочий процесс CodeQL описывается в темно-оранжевый цвет.](/assets/images/help/actions/superlinter-workflow-sidebar.png)\n4. В списке запусков рабочего процесса щелкните имя запуска, чтобы просмотреть сводку по выполнению рабочего процесса.\n5. В разделе **Задания** или на графе визуализации выберите задание, которое требуется просмотреть.\n6. Все неудачные действия автоматически разворачиваются для отображения результатов.\n7. Ссылку на определенную строку в журналах, можно также получить, щелкнув номер строки соответствующего шага. Затем можно скопировать ссылку из адресной строки браузера.\n\n   ![Снимок экрана: журналы для задания. Журналы для неудачного шага развернуты, а номер строки выделен оранжевым контуром.](/assets/images/help/repository/copy-link-button-updated-2.png)\n\n## Поиск по журналам\n\nВы можете выполнять поиск определенного шага в журналах сборки. При поиске в журналах в результаты включаются только развернутые шаги. Для выполнения этих действий требуется доступ на чтение к репозиторию.\n\n1. На GitHubперейдите на главную страницу репозитория.\n2. Под именем репозитория щелкните **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-play\" aria-label=\"play\" role=\"img\"><path d=\"M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0ZM1.5 8a6.5 6.5 0 1 0 13 0 6.5 6.5 0 0 0-13 0Zm4.879-2.773 4.264 2.559a.25.25 0 0 1 0 .428l-4.264 2.559A.25.25 0 0 1 6 10.559V5.442a.25.25 0 0 1 .379-.215Z\"></path></svg> Actions**.\n\n   ![Снимок экрана: вкладки для репозитория github/docs. Вкладка \"Действия\" выделена оранжевым контуром.](/assets/images/help/repository/actions-tab-global-nav-update.png)\n3. На левой боковой панели щелкните нужный рабочий процесс.\n\n   ![Снимок экрана: левая боковая панель вкладки \"Действия\". Рабочий процесс CodeQL описывается в темно-оранжевый цвет.](/assets/images/help/actions/superlinter-workflow-sidebar.png)\n4. В списке запусков рабочего процесса щелкните имя запуска, чтобы просмотреть сводку по выполнению рабочего процесса.\n5. В разделе **Задания** или на графе визуализации выберите задание, которое требуется просмотреть.\n6. В правом верхнем углу выходных данных журнала в поле **поиска по журналам** введите поисковый запрос.\n\n## Скачивание журналов\n\nВы можете скачивать файлы журналов из запуска рабочего процесса. Вы также можете скачать артефакты рабочего процесса. Дополнительные сведения см. в разделе [Хранение и предоставление общего доступа к данным с артефактами рабочего процесса](/ru/actions/using-workflows/storing-workflow-data-as-artifacts). Для выполнения этих действий требуется доступ на чтение к репозиторию.\n\n1. На GitHubперейдите на главную страницу репозитория.\n2. Под именем репозитория щелкните **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-play\" aria-label=\"play\" role=\"img\"><path d=\"M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0ZM1.5 8a6.5 6.5 0 1 0 13 0 6.5 6.5 0 0 0-13 0Zm4.879-2.773 4.264 2.559a.25.25 0 0 1 0 .428l-4.264 2.559A.25.25 0 0 1 6 10.559V5.442a.25.25 0 0 1 .379-.215Z\"></path></svg> Actions**.\n\n   ![Снимок экрана: вкладки для репозитория github/docs. Вкладка \"Действия\" выделена оранжевым контуром.](/assets/images/help/repository/actions-tab-global-nav-update.png)\n3. На левой боковой панели щелкните нужный рабочий процесс.\n\n   ![Снимок экрана: левая боковая панель вкладки \"Действия\". Рабочий процесс CodeQL описывается в темно-оранжевый цвет.](/assets/images/help/actions/superlinter-workflow-sidebar.png)\n4. В списке запусков рабочего процесса щелкните имя запуска, чтобы просмотреть сводку по выполнению рабочего процесса.\n5. В разделе **Задания** или на графе визуализации выберите задание, которое требуется просмотреть.\n6. В правом верхнем углу журнала выберите раскрывающееся меню <svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-gear\" aria-label=\"Show options\" role=\"img\"><path d=\"M8 0a8.2 8.2 0 0 1 .701.031C9.444.095 9.99.645 10.16 1.29l.288 1.107c.018.066.079.158.212.224.231.114.454.243.668.386.123.082.233.09.299.071l1.103-.303c.644-.176 1.392.021 1.82.63.27.385.506.792.704 1.218.315.675.111 1.422-.364 1.891l-.814.806c-.049.048-.098.147-.088.294.016.257.016.515 0 .772-.01.147.038.246.088.294l.814.806c.475.469.679 1.216.364 1.891a7.977 7.977 0 0 1-.704 1.217c-.428.61-1.176.807-1.82.63l-1.102-.302c-.067-.019-.177-.011-.3.071a5.909 5.909 0 0 1-.668.386c-.133.066-.194.158-.211.224l-.29 1.106c-.168.646-.715 1.196-1.458 1.26a8.006 8.006 0 0 1-1.402 0c-.743-.064-1.289-.614-1.458-1.26l-.289-1.106c-.018-.066-.079-.158-.212-.224a5.738 5.738 0 0 1-.668-.386c-.123-.082-.233-.09-.299-.071l-1.103.303c-.644.176-1.392-.021-1.82-.63a8.12 8.12 0 0 1-.704-1.218c-.315-.675-.111-1.422.363-1.891l.815-.806c.05-.048.098-.147.088-.294a6.214 6.214 0 0 1 0-.772c.01-.147-.038-.246-.088-.294l-.815-.806C.635 6.045.431 5.298.746 4.623a7.92 7.92 0 0 1 .704-1.217c.428-.61 1.176-.807 1.82-.63l1.102.302c.067.019.177.011.3-.071.214-.143.437-.272.668-.386.133-.066.194-.158.211-.224l.29-1.106C6.009.645 6.556.095 7.299.03 7.53.01 7.764 0 8 0Zm-.571 1.525c-.036.003-.108.036-.137.146l-.289 1.105c-.147.561-.549.967-.998 1.189-.173.086-.34.183-.5.29-.417.278-.97.423-1.529.27l-1.103-.303c-.109-.03-.175.016-.195.045-.22.312-.412.644-.573.99-.014.031-.021.11.059.19l.815.806c.411.406.562.957.53 1.456a4.709 4.709 0 0 0 0 .582c.032.499-.119 1.05-.53 1.456l-.815.806c-.081.08-.073.159-.059.19.162.346.353.677.573.989.02.03.085.076.195.046l1.102-.303c.56-.153 1.113-.008 1.53.27.161.107.328.204.501.29.447.222.85.629.997 1.189l.289 1.105c.029.109.101.143.137.146a6.6 6.6 0 0 0 1.142 0c.036-.003.108-.036.137-.146l.289-1.105c.147-.561.549-.967.998-1.189.173-.086.34-.183.5-.29.417-.278.97-.423 1.529-.27l1.103.303c.109.029.175-.016.195-.045.22-.313.411-.644.573-.99.014-.031.021-.11-.059-.19l-.815-.806c-.411-.406-.562-.957-.53-1.456a4.709 4.709 0 0 0 0-.582c-.032-.499.119-1.05.53-1.456l.815-.806c.081-.08.073-.159.059-.19a6.464 6.464 0 0 0-.573-.989c-.02-.03-.085-.076-.195-.046l-1.102.303c-.56.153-1.113.008-1.53-.27a4.44 4.44 0 0 0-.501-.29c-.447-.222-.85-.629-.997-1.189l-.289-1.105c-.029-.11-.101-.143-.137-.146a6.6 6.6 0 0 0-1.142 0ZM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0ZM9.5 8a1.5 1.5 0 1 0-3.001.001A1.5 1.5 0 0 0 9.5 8Z\"></path></svg> (Показать параметры) и нажмите кнопку **\"Скачать архив** журнала\".\n\n   ![Снимок экрана: журнал задания. В заголовке значок шестеренки выделен темно-оранжевым цветом.](/assets/images/help/actions/download-logs-drop-down.png)\n\n> \\[!NOTE]\n> При скачивании архива журналов для рабочего процесса, который был частично выполнен повторно, архив включает только задания, которые были повторно запущены. Чтобы получить полный набор журналов для заданий, который выполнялись из рабочего процесса, необходимо скачать архивы журналов для предыдущих попыток запуска, в которых выполнялись другие задания.\n\n## Удаление журналов\n\nФайлы журнала можно удалить из рабочего процесса через веб-интерфейс GitHub или программным способом. Для выполнения этих действий требуется доступ для записи в репозиторий.\n\n### Удаление журналов с помощью веб-интерфейса GitHub\n\n1. На GitHubперейдите на главную страницу репозитория.\n\n2. Под именем репозитория щелкните **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-play\" aria-label=\"play\" role=\"img\"><path d=\"M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0ZM1.5 8a6.5 6.5 0 1 0 13 0 6.5 6.5 0 0 0-13 0Zm4.879-2.773 4.264 2.559a.25.25 0 0 1 0 .428l-4.264 2.559A.25.25 0 0 1 6 10.559V5.442a.25.25 0 0 1 .379-.215Z\"></path></svg> Actions**.\n\n   ![Снимок экрана: вкладки для репозитория github/docs. Вкладка \"Действия\" выделена оранжевым контуром.](/assets/images/help/repository/actions-tab-global-nav-update.png)\n\n3. На левой боковой панели щелкните нужный рабочий процесс.\n\n   ![Снимок экрана: левая боковая панель вкладки \"Действия\". Рабочий процесс CodeQL описывается в темно-оранжевый цвет.](/assets/images/help/actions/superlinter-workflow-sidebar.png)\n\n4. В списке запусков рабочего процесса щелкните имя запуска, чтобы просмотреть сводку по выполнению рабочего процесса.\n\n5. В правом верхнем углу выберите раскрывающееся меню <svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-kebab-horizontal\" aria-label=\"kebab horizontal icon\" role=\"img\"><path d=\"M8 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM1.5 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm13 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z\"></path></svg> и нажмите кнопку **\"Удалить все журналы**\".\n\n   ![Снимок экрана: страница запуска рабочего процесса. В правом верхнем углу кнопка, помеченная значком кебаба, описывается в темно-оранжевый цвет.](/assets/images/help/actions/workflow-run-kebab-horizontal-icon.png)\n\n6. Просмотрите запрос подтверждения.\n\nПосле удаления журналов кнопка **Удалить все журналы** исчезает. Это указывает, что ы рабочем процессе больше не осталось файлов журналов.\n\n### Удаление журналов программным способом\n\nДля автоматического удаления всех журналов рабочего процесса можно использовать следующий скрипт. Это может быть полезным способом очистки журналов для нескольких запусков рабочего процесса.\n\nЧтобы запустить приведенный ниже пример скрипта:\n\n1. Скопируйте пример кода и сохраните его в файл с именем `delete-logs.sh`.\n2. Предоставьте ему разрешение на выполнение с `chmod +x delete-logs.sh`помощью .\n3. Выполните следующую команду, где `REPOSITORY_NAME` имя репозитория и `WORKFLOW_NAME` имя файла рабочего процесса.\n\n   ```shell copy\n   ./delete-logs.sh REPOSITORY_NAME WORKFLOW_NAME\n   ```\n\n   Например, чтобы удалить все журналы в `monalisa/octocat` репозитории для `.github/workflows/ci.yaml` рабочего процесса, выполните команду `./delete-logs.sh monalisa/octocat ci.yaml`.\n\n#### Пример сценария\n\n```bash copy\n#!/usr/bin/env bash\n\n# Delete all logs for a given workflow\n# Usage: delete-logs.sh <repository> <workflow-name>\n\nset -oe pipefail\n\nREPOSITORY=$1\nWORKFLOW_NAME=$2\n\n# Validate arguments\nif [[ -z \"$REPOSITORY\" ]]; then\n  echo \"Repository is required\"\n  exit 1\nfi\n\nif [[ -z \"$WORKFLOW_NAME\" ]]; then\n  echo \"Workflow name is required\"\n  exit 1\nfi\n\necho \"Getting all completed runs for workflow $WORKFLOW_NAME in $REPOSITORY\"\n\nRUNS=$(\n  gh api \\\n    -H \"Accept: application/vnd.github+json\" \\\n    -H \"X-GitHub-Api-Version: 2022-11-28\" \\\n    \"/repos/$REPOSITORY/actions/workflows/$WORKFLOW_NAME/runs\" \\\n    --paginate \\\n    --jq '.workflow_runs[] | select(.conclusion != \"\") | .id'\n)\n\necho \"Found $(echo \"$RUNS\" | wc -l) completed runs for workflow $WORKFLOW_NAME\"\n\n# Delete logs for each run\nfor RUN in $RUNS; do\n  echo \"Deleting logs for run $RUN\"\n  gh api \\\n    --silent \\\n    --method DELETE \\\n    -H \"Accept: application/vnd.github+json\" \\\n    -H \"X-GitHub-Api-Version: 2022-11-28\" \\\n    \"/repos/$REPOSITORY/actions/runs/$RUN/logs\" || echo \"Failed to delete logs for run $RUN\"\n\n  # Sleep for 100ms to avoid rate limiting\n  sleep 0.1\ndone\n```\n\n## Просмотр журналов с помощью GitHub CLI\n\n> \\[!NOTE]\n> Дополнительные сведения о GitHub CLIсм. в разделе [О GitHub CLI](/ru/github-cli/github-cli/about-github-cli).\n\nЧтобы просмотреть журнал для определенного задания, используйте подкоманду `run view`. Замените `run-id` идентификатором запуска, для которого вы хотите просмотреть журналы. GitHub CLI отобразит интерактивное меню для выбора задания из запуска. Если вы не укажете `run-id`, GitHub CLI отобразит интерактивное меню для выбора последнего запуска, а затем другое интерактивное меню для выбора задания из этого запуска.\n\n```shell\ngh run view RUN_ID --log\n```\n\nВы также можете указать идентификатор задания с помощью флага `--job`. Замените `job-id` идентификатором задания, для которого вы хотите просмотреть журналы.\n\n```shell\ngh run view --job JOB_ID --log\n```\n\nВы можете использовать `grep` для поиска в журнале. Например, следующая команда вернет все записи журнала, содержащие слово `error`.\n\n```shell\ngh run view --job JOB_ID --log | grep error\n```\n\nЧтобы отфильтровать журналы для вывода всех неудачных шагов, используйте `--log-failed` вместо `--log`.\n\n```shell\ngh run view --job JOB_ID --log-failed\n```"}