Azure Панель управления Webjobs? - PullRequest
0 голосов
/ 19 января 2020

Мне интересно, есть ли какие-нибудь решения для функциональности, подобной «Панели управления», для Azure Webjobs? У нас есть веб-приложение, в котором есть несколько разных веб-заданий. Например, у нас есть метод ежедневной очистки базы данных, а также метод отправки уведомлений о выставлении счетов. У нас также есть методы, которые получают данные из различных сторонних систем каждые 5 минут. Всего около десятка разных маленьких рабочих мест тут и там. Большинство из них запускаются с помощью триггера CRON.

Я хотел бы иметь своего рода «панель управления / панель управления», где я мог бы быстро увидеть все функции во всех веб-заданиях (хотя я мог легко перемещать все функции до 1 веб-работы). Он будет показывать время последнего запуска, состояние последнего запуска, время следующего запуска и иметь возможность «приостановить» выполнение функции (а также возобновить). Я знаю, что могу сделать все это, буквально остановив весь WebJob в Azure, но затем он останавливает другие функции, которые я, возможно, не хочу. Я также не хочу иметь 20 веб-заданий с 1 функцией. Какие-либо решения, которые были разработаны? Есть ли панель инструментов, которая работает с Azure функциями?

Спасибо!

Ответы [ 3 ]

1 голос
/ 20 января 2020

Во-первых, вам не нужно иметь все функции в одном файле Functions.cs, у вас может быть несколько веб-заданий, и в одном веб-задании может быть несколько файлов функций (Functions.cs, Function1.cs et c).

enter image description here

Тогда, если у вас есть набор функций в одном веб-задании, вы можете управлять только одним целым веб-заданием. Если ваша веб-работа непрерывна, вы можете остановить ее на портале или убить процесс в куду. Тогда ваше веб-задание будет остановлено или находится в состоянии ожидания перезапуска.

enter image description here

Если вы все еще хотите управлять каждой функцией в одном веб-задании, предположим, что вам нужно попробуйте функцию Azure.

1 голос
/ 20 января 2020

Да Azure имеет панель управления для веб-заданий.

Открыть URL-адрес https://YOUR_APP_NAME.scm.azurewebsites.net / -> Инструменты -> Панель управления веб-заданиями

Или открыть приложение - > В меню поиска расширенные инструменты Advanced tools

0 голосов
/ 20 января 2020

В рамках проекта Kudu - Kudu является движущей силой развертывания git / hg, веб-заданий и различных других функций на Azure веб-сайтах, поэтому доступен API веб-заданий. Вы можете получить более подробную информацию здесь - WebJobs API Wiki .

Вы можете получить подробную информацию обо всех веб-заданиях, используя метод - GET /api/webjobs, ответ содержит статус веб-заданий. Я использую PowerShell для мониторинга своих веб-заданий. Вот некоторый псевдо-код, который поможет вам начать работу.

$authHeader = "Basic 3946239864237492789f9df987d7f7s97f987s8d977sd978979f8s77f9797w9e7987e="

$fullAuthHeader = @{
    Authorization = $authHeader
}

$response = Invoke-WebRequest -Uri https://yoursite.scm.azurewebsites.net/api/triggeredwebjobs/$schedulerEntry -Headers $fullAuthHeader -Method GET -UseBasicParsing
$output = $response.Content | ConvertFrom-Json

* * * * * * * * * * * * * * * * * * * * * * * * * * * * *.

...