Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Функция — это запрос журнала в Azure Monitor, который можно использовать в других запросах журнала, как будто это команда. Вы можете использовать функции для предоставления решений для разных клиентов, а также повторного использования логики запросов в собственной среде. В этой статье описывается, как использовать функции и как создавать собственные.
Требуемые разрешения
| Действие | Требуемые разрешения |
|---|---|
| Просмотр или использование функций |
Microsoft.OperationalInsights/workspaces/query/*/read разрешения для рабочей области Log Analytics, как предусмотрено встроенной ролью Читатель Log Analytics, например. |
| Создание или изменение функций |
microsoft.operationalinsights/workspaces/savedSearches/write разрешения для рабочей области Log Analytics, как, например, указано встроенной ролью участника Log Analytics Contributor. |
Типы функций
Существует два типа функций в Azure Monitor:
Функции решения Solution: В Azure Monitor включены предварительно созданные функции. Эти функции доступны во всех Log Analytics рабочих областях и не могут быть изменены.
функции Workspace: Эти функции устанавливаются в определенной рабочей области Log Analytics. Их можно изменить и контролировать пользователем.
Функции представления
Функции решения и функции рабочей области можно просмотреть на вкладке Functions в левой панели текущей рабочей области Log Analytics. Используйте фильтр для фильтрации функций, включенных в список. Используйте Группировать по, чтобы изменить группировку. Введите строку в поле поиска , чтобы найти определенную функцию. Наведите указатель мыши на функцию, чтобы просмотреть сведения о ней, включая описание и параметры.
Использование функции
Используйте функцию в запросе, введя его имя со значениями для всех параметров, аналогичных типу команды. Выходные данные функции можно возвратить в виде результатов или предать другой команде.
Чтобы добавить функцию в текущий запрос, дважды щелкните ее имя или наведите на нее указатель мыши и выберите пункт Использовать в редакторе. Функции рабочей области также будут отображаться в IntelliSense при вводе запроса.
Если запрос требует параметров, предоставьте их с помощью синтаксиса function_name(param1,param2,...).
Создание функции
Чтобы создать функцию из текущего запроса в редакторе, нажмите кнопку "Сохранить>как функцию".
Создайте функцию с Log Analytics на портале Azure, выбрав Save и предоставив сведения в следующей таблице:
| Настройка | Описание |
|---|---|
| Имя функции | Имя для функции. Имя может не содержать пробел или какие-либо специальные символы. Он также может не начинаться с подчеркивания (_), так как этот символ зарезервирован для функций решения. |
| Устаревшая категория | Определяемая пользователем категория помогает фильтровать и группировать функции. |
| Сохранить как группу компьютеров | Сохранение запроса в виде группы компьютеров. |
| Параметры | Добавьте параметры для всех переменных в функции, при использовании которых требуется указывать значения. Дополнительные сведения см. в разделе "Параметры функции". |
Параметры функции
Можно добавить параметры в функцию, чтобы вы могли предоставлять значения для определенных переменных при вызове. В результате одна и та же функция может использоваться в разных запросах, каждая из которых предоставляет разные значения для параметров. Параметры определяются следующими свойствами:
| Настройка | Описание |
|---|---|
| Тип | Тип данных для значения. |
| Имя. | Имя для параметра. Это имя должно использоваться в запросе для замены значения параметра. |
| Значение по умолчанию | Значение, которое необходимо использовать для параметра, если не указано другое значение. |
Параметры упорядочены по мере их создания. Параметры, не имеющие значения по умолчанию, размещаются перед параметрами, имеющими значение по умолчанию.
Работа с кодом функции
Вы можете просмотреть код функции, чтобы получить представление о том, как он работает, либо чтобы изменить его для рабочей области. Чтобы добавить код функции в текущий запрос в редакторе, щелкните Загрузить код функции.
Если добавить код функции в пустой запрос или первую строку существующего запроса, имя функции добавляется на вкладку. Функция рабочей области позволяет изменять сведения о функции.
Изменение функции
Измените свойства или код функции, создав новый запрос. Наведите указатель мыши на имя функции и выберите код функции Load. Внесите изменения в код и нажмите кнопку "Сохранить". Затем выберите "Изменить сведения о функции". Внесите изменения в свойства и параметры функции и нажмите кнопку "Сохранить".
Пример
В следующем примере функции возвращаются все события в журнале действий Azure с определенной даты и соответствующие определенной категории.
Начните со следующего запроса с помощью жестко закодированных значений, чтобы убедиться, что запрос работает должным образом.
AzureActivity
| where CategoryValue == "Administrative"
| where TimeGenerated > todatetime("2021/04/05 5:40:01.032 PM")
Затем замените жестко закодированные значения именами параметров. Затем сохраните функцию, нажав кнопку "Сохранить>как функцию".
AzureActivity
| where CategoryValue == CategoryParam
| where TimeGenerated > DateParam
Укажите следующие значения свойств функции:
| Свойство | Значение |
|---|---|
| Имя функции | АктивностьAzureПоКатегории |
| Устаревшая категория | Демонстрационные функции |
Перед сохранением функции определите следующие параметры:
| Тип | Имя. | Значение по умолчанию |
|---|---|---|
| строка | ПараметрКатегории | Административное |
| дата и время | DateParam |
Создайте запрос и просмотрите новую функцию, наведя на нее указатель мыши. Просмотрите порядок параметров. Они должны быть указаны в этом порядке при использовании функции.
Выберите "Использовать в редакторе ", чтобы добавить новую функцию в запрос. Затем добавьте значения для параметров. Не нужно указывать значение, CategoryParam так как оно имеет значение по умолчанию.
Следующие шаги
См. Операции со строками для получения дополнительной информации о том, как составлять запросы к журналам Azure Monitor.