Nano Hash - криптовалюты, майнинг, программирование

Как инициировать оповещение о длительном процессе в фабрике данных Azure V2 с помощью Azure Monitor или самого ADF?

Я пытался найти лучший способ вызвать предупреждение, когда задача ADF (например, CopyActivity или задача хранимой процедуры) выполняется более N часов, я хотел использовать Azure Monitor, поскольку это одно из рекомендуемых уведомлений служб в Azure, однако мне не удалось найти критерий «Выполняется», поэтому мне пришлось поиграть с доступными критериями (успешно и неудачно) и проверять их каждые N часов, однако это все еще не идеально, поскольку я не знать, когда процесс начался, и мы можем запускать его вручную несколько раз в день, можете ли вы как-то порекомендовать это сделать? например, уведомление на основе событий, которое прослушивает некоторую временную переменную, и как только она превышает пороговое значение, запускает уведомление по электронной почте?


Ответы:


1

есть ли способ, которым вы бы порекомендовали это сделать? например, уведомление на основе событий, которое прослушивает некоторую временную переменную, и как только она превышает пороговое значение, запускает уведомление по электронной почте?

Исходя из ваших требований, я предлагаю вам использовать фабрику данных Azure SDK для отслеживания ваших конвейеров и действий.

Вы можете создать триггер времени Azure Function который срабатывает каждые N часов. В этой триггерной функции:

  1. Вы можете перечислить все выполнение действий в аккаунте фабрики данных.

  2. Затем зациклите их, чтобы отслеживать DurationInMs Свойство в класс ActivityRun, чтобы проверить, выполнялось ли какое-либо действие более N часов и все еще выполняется status.

  3. Наконец, отправьте электронное письмо или прекратите действие, или сделайте все, что хотите.

05.11.2018
  • спасибо за совет, в итоге я сделал что-то подобное, используя Python SDK и запустив скрипт с виртуальной машины, к сожалению, функции Azure не поддерживают Python, и вместо этого я использовал виртуальную машину с Python. Однако я следую тем же шагам, чтобы уловить это, было бы неплохо иметь критерии Azure Monitor с Running :). Спасибо, я отмечу вашу рекомендацию как ответ, пока не найду лучший. 05.11.2018
  • @SaulCruz Пожалуйста, кстати, как я знаю, функция azure поддерживает код Python. Обратитесь к моему предыдущему случаю: stackoverflow.com/questions/51141674/ 06.11.2018
  • Спасибо, да, я действительно пытался сделать это в прошлом, но я не уверен, что мне что-то не хватает, но я не могу найти язык Python после создания моего приложения-функции, единственные доступные стеки времени выполнения - это Java, JavaScript и .NET, и когда я выберу те, которые не могу найти на Python, я рассмотрю это еще раз и отредактирую ответ, чтобы предоставить дополнительную информацию. еще раз спасибо 06.11.2018

  • 2

    Я бы предложил простое решение: запрос Kusto для перечисления всех конвейеров со статусом «В очереди» и присоединение его по CorrelationId к тем, которые нас не интересуют - обычно «Успешно», «Неудачно». Вариант присоединения leftanti выполняет эту работу, «возвращая все записи с левой стороны, которые не имеют совпадений с правой». (как указано в документации MS). Следующим шагом будет установка желаемого значения тайм-аута - в приведенном ниже примере кода это 30 минут. Наконец, вы можете настроить правило оповещения на основе этого запроса и получать уведомление по электронной почте или все, что вам нужно.

    ADFPipelineRun | где Статус == "В очереди" | вид соединения = leftanti (ADFPipelineRun | где Статус в ("Не удалось", "Успешно")) на CorrelationId | где Начало ‹назад (30м)

    Я проверил это ненадолго, возможно, чего-то не хватает. Есть идея добавить другие статусы, которые нужно убрать из результата, например «Отменено».

    15.06.2020
  • У вас есть идея, как исключить отмененные прогоны? Похоже, что статус "Отменено" не отображается. 03.03.2021
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..