Как получить оценки Azure Advisor из обозревателя графов ресурсов Azure?
В частности, меня интересуют общие показатели стоимости, надежности, эффективности работы и производительности.
Я знаю, что могу получить оценку безопасности следующим образом:
SecurityResources
| where type == 'microsoft.security/securescores'
| where subscriptionId == "MY-SUBSCRIPTION-ID"
| project percentageScore=properties.score.percentage
Я также знаю, что можно запросить оценку через Management REST API вот так, но я действительно хочу этого избежать.
@Арко, это не работает. Столбец свойств имеет категорию и влияние, но не оценку. Мне также нужен общий балл, а не балл за рекомендацию.
свойство score
не существует непосредственно в properties.extendedProperties
. В качестве обходного пути вы можете использовать следующий KQL-запрос запрос начинается с фильтрации ресурсов типа microsoft.advisor/recommendations
. затем классифицирует оценку следующим образом High
рекомендации по воздействию получают оценку 1.0
. Рекомендации по воздействию Medium
получают оценку 0.5
. Low
рекомендациям по воздействию присваивается балл 0.1
, а затем суммируются средние баллы по воздействию для каждой категории. Посмотрите, сработает ли это для вас.
Хорошо, я понимаю, к чему вы клоните. Как вы пришли к значениям воздействия? Я думаю, что Microsoft рассчитывает балл совершенно по-другому. Я предполагаю, но думаю, что каждая рекомендация имеет оценку, основанную на влиянии и количестве затронутых ресурсов. Затем они суммируют все баллы по категории и подсчитывают общий балл по категории. Но это еще не все. Если вы посмотрите на скриншот, то увидите, что некоторые оценки соответствуют 100%, хотя есть средняя рекомендация. Правильным решением не может быть подсчет очков самостоятельно. Должен быть способ это найти.
Значения я выбрал вручную в демонстрационных целях, чтобы присвоить числовые веса различным уровням воздействия. Я искал то же самое и нашел предложения Azure Learn.microsoft.com/en-us/rest/api/advisor для этого. Используя запрос KQL, это то, что мне удалось получить помимо того, которым я уже поделился выше.
Поэтому, к сожалению, невозможно получить оценки Azure Advisor из графа ресурсов Azure.
На данный момент лучший способ сделать это — вызвать REST API управления Azure.
Вот пример. Я пропустил аутентификацию. Вам нужно получить токен и добавить его в заголовок аутентификации:
https://management.azure.com/subscriptions/{SUBSCRIPTION_ID}/providers/Microsoft.Advisor/advisorScore?api-version=2023-01-01
Пожалуйста, проверьте это — Запрос данных советника в Resource Graph Explorer (Azure Resource Graph) и попробуйте этот пример один раз —
AdvisorResources | where type == 'microsoft.advisor/recommendations' | extend category=tostring(properties.category), impact=tostring(properties.impact), score=properties.score | summarize count() by category, impact, score
он должен вернуть количество рекомендаций по категориям, влиянию и оценке. попробуй