|
213 / 109 / 46
Регистрация: 12.12.2016
Сообщений: 399
|
|
Gitlab Job15.10.2022, 11:11. Показов 1414. Ответов 6
Метки нет (Все метки)
Всем привет!
Есть джоба в гитлабе (внутренний гитлаб) - она выполняет питон-скрипт который делает 4 запроса к апи одного внутреннего сайта (каждый запрос занимает минут 25+) - результатом выполнения является сформированный excel файл за каждый запрос, в конце скрипт создает 5й файл с агрегированными данными из этих 4 файлов и отправляет письмо. В скрипте есть какое-то логирование + сохраняю артефакты (все созданные excel файлы и логи, сгенерированные питон-скриптом). Локально в ide скрипт работает прекрасно, однако в раннере гитлаба он делает 1 запрос к апи и пишет 'job success'. Никаких ошибок в джобе нет. Вопрос: Как можно понять что пошло нет так во время выполнения джобы? В логах питон-скрипта (на сколько я смог их правильно подключить) тоже нет никаких ошибок. В этом же гитлабе есть еще одна джоба которая тоже отправляет письма, она прекрасно работает, но выполняется 20 секунд. Проблема явно не с сетевыми доступами.
0
|
|
| 15.10.2022, 11:11 | |
|
Ответы с готовыми решениями:
6
GitLab и SSH Как настроить gitlab ci/cd? Не могу запушить данные в gitlab |
|
5907 / 3359 / 1036
Регистрация: 03.11.2009
Сообщений: 10,008
|
|
| 16.10.2022, 07:23 | |
|
Доброго вечера, можете немного деталей добавить
- какой тип воркеров используете? - запросы делаются параллельно или последовательно? - в сетевой инфраструктуре между сервером, на котором крутится воркер и сервером, куда улетают api запросы - есть какие-то еще сетевые устройства? фаерволы, балансировщики нагрузки? - каждый запрос занимает около 25 минут - все это время скрипт просто ждет? - можете добавить минимальный воспроизводимый пример такого поведения, чтобы мы могли повторить и понаблюдать за поведением скрипта/джоба/воркера? Добавлено через 1 час 56 минут И еще - заканчивается ли выполнение первого запроса? - сразу ли после этого заканчивается выполнение? - замерили время, сколько занимает до прекращения работы? - всегда ли оно одинаковое?
1
|
|
|
213 / 109 / 46
Регистрация: 12.12.2016
Сообщений: 399
|
|
| 16.10.2022, 10:22 [ТС] | |
|
Jabbson, добрый вечер
- какой тип воркеров используете? - kubernetes shared runner - это воркер? - запросы делаются параллельно или последовательно? - последовательно, потому что не хочется нагружать систему куда делаются запросы - в сетевой инфраструктуре между сервером, на котором крутится воркер и сервером, куда улетают api запросы - есть какие-то еще сетевые устройства? фаерволы, балансировщики нагрузки? - с большой вероятность, что есть, подробности инфраструктуры мне неизвестны - каждый запрос занимает около 25 минут - все это время скрипт просто ждет? - да (для себя принтом в терминале каждые 5 минут вывожу статус запроса, но в ранере это почему-то не отображается), а в логах есть какие-то данные - можете добавить минимальный воспроизводимый пример такого поведения, чтобы мы могли повторить и понаблюдать за поведением скрипта/джоба/воркера? - нет - заканчивается ли выполнение первого запроса? - да - сразу ли после этого заканчивается выполнение? - да - замерили время, сколько занимает до прекращения работы? - job duration у всех старых джоб 30 минут - всегда ли оно одинаковое? - да
0
|
|
|
5907 / 3359 / 1036
Регистрация: 03.11.2009
Сообщений: 10,008
|
|
| 16.10.2022, 18:05 | |
|
Какая либо из частей этой инфраструктуры находит в облаке (кластер, из которого делается запрос к API или сам API)?
В логах k8s есть что-то интересное? Пока мои идеи - это - NAT timeout - TCP idle timeout (на одной из сторон или на сетевом устройстве между ними - фаервол или балансировщик), - какой-то еще timeout, - возможное использование вытесняемых виртуалок, если облако (spot VMs). Добавлено через 44 минуты Не знаю, видели Вы уже это баги, но они описывают поведение, схожее с тем, что происходит у Вас. - https://gitlab.com/gitlab-org/... ssues/3144 - https://gitlab.com/gitlab-org/... ssues/3175 - https://gitlab.com/gitlab-org/... ssues/3658 - https://gitlab.com/gitlab-org/... ssues/4119 - https://gitlab.com/gitlab-org/... sues/26347
1
|
|
|
213 / 109 / 46
Регистрация: 12.12.2016
Сообщений: 399
|
|
| 16.10.2022, 18:24 [ТС] | |
|
Jabbson,
Какая либо из частей этой инфраструктуры находит в облаке (кластер, из которого делается запрос к API или сам API)? - нет В логах k8s есть что-то интересное? - это нужно смотреть логи гитлаб раннера? - Не знаю, видели Вы уже это баги, но они описывают поведение, схожее с тем, что происходит у Вас. - не видел, спасибо Кстати, когда Вы спросили про простой скрипта во время выполнения запроса - "возникла идея" протестировать запрос к апи и убивать скрипт. У апи сервиса есть функция сохранения запроса.
0
|
|
|
5907 / 3359 / 1036
Регистрация: 03.11.2009
Сообщений: 10,008
|
||
| 16.10.2022, 18:41 | ||
|
1
|
||
|
213 / 109 / 46
Регистрация: 12.12.2016
Сообщений: 399
|
|
| 28.10.2022, 09:12 [ТС] | |
|
В общем... коллеги сказали, что у них других логов нет или я нерпаивльно им задал вопрос. Увеличение Timeout-а также никак не повлияло.
Переписал логику работы скрипта - разделив на две джобы (работают по шедуллеру): 1ая джоба отправляет запрос по апи, сохраняет номер запроса в файл и выгружает в нексус. 2ая джоба запускается через N часов (с запасом), скачивает из нексуса файл с номерами запросов и делает остальную работу по формированию отчета и отправки письма.
0
|
|
| 28.10.2022, 09:12 | |
|
Помогаю со студенческими работами здесь
7
Gitlab создать merge request Подключение существующих проектов к GitLab Gitlab. Медленно грузятся странички Gitlab под Windows Server, аналоги
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|