حدث
إنشاء تطبيقات ووكلاء الذكاء الاصطناعي
١٧ رمضان، ٩ م - ٢١ رمضان، ١٠ ص
انضم إلى سلسلة الاجتماعات لإنشاء حلول الذكاء الاصطناعي قابلة للتطوير استنادا إلى حالات الاستخدام في العالم الحقيقي مع المطورين والخبراء الآخرين.
تسجيل الآنلم يعد هذا المتصفح مدعومًا.
بادر بالترقية إلى Microsoft Edge للاستفادة من أحدث الميزات والتحديثات الأمنية والدعم الفني.
تعمل القواعد في Prometheus على البيانات كما يتم جمعها. تم تكوينها كجزء من مجموعة قواعد Prometheus، والتي يتم تطبيقها على مقاييس Prometheus في مساحة عمل Azure Monitor.
هناك نوعان من قواعد Prometheus كما هو موضح في الجدول التالي.
النوع | الوصف |
---|---|
التنبيه | تتيح لك قواعد التنبيه إنشاء تنبيه Azure Monitor استنادا إلى نتائج استعلام Prometheus Query Language (Prom QL). تتم معالجة التنبيهات التي تم إطلاقها بواسطة قواعد تنبيه Azure Managed Prometheus وتشغيل الإعلامات بطريقة مشابهة لتنبيهات Azure Monitor الأخرى. |
التسجيل | تسمح لك قواعد التسجيل بالحساب المسبق للتعبيرات الشائعة المطلوبة أو واسعة النطاق حسابيا وتخزين نتائجها كملمجموعة جديدة من السلاسل الزمنية. يتم استيعاب السلاسل الزمنية التي تم إنشاؤها بواسطة قواعد التسجيل مرة أخرى إلى مساحة عمل Azure Monitor كمقاييس Prometheus جديدة. |
يمكن إنشاء مجموعات قواعد Azure Managed Prometheus وقواعد التسجيل وقواعد التنبيه وتكوينها باستخدام نوع مورد Azure Microsoft.AlertsManagement/prometheusRuleGroups، حيث يتم تعريف قواعد التنبيه وقواعد التسجيل كجزء من خصائص مجموعة القواعد. يتم تعريف مجموعات قواعد Prometheus مع نطاق مساحة عمل Azure Monitor معينة. يمكن إنشاء مجموعات قواعد Prometheus باستخدام قوالب Azure Resource Manager (ARM) أو API أو Azure CLI أو PowerShell.
تتبع مجموعات قواعد Prometheus المدارة من Azure بنية ومصطلحات مجموعات قواعد مصدر مفتوح Prometheus. أسماء القواعد، التعبير، عبارة 'for'، التسميات، التعليقات التوضيحية كلها مدعومة في إصدار Azure. يجب ملاحظة الاختلافات الرئيسية التالية بين مجموعات قواعد OSS وPrometheus المدارة من Azure:
ملاحظة
بالنسبة إلى مجموعات AKS أو ARC Kubernetes، يمكنك استخدام بعض قواعد التنبيهات الموصى بها. راجع قواعد التنبيه المحددة مسبقا هنا.
يمكنك اختياريا تقييد القواعد في مجموعة قواعد للاستعلام عن البيانات التي تنشأ من مجموعة معينة واحدة، عن طريق إضافة نطاق مجموعة إلى مجموعة القواعد الخاصة بك، و/أو باستخدام خاصية مجموعة clusterName
القواعد.
يجب تقييد القواعد بمجموعة واحدة إذا كانت مساحة عمل Azure Monitor تحتوي على كمية كبيرة من البيانات من مجموعات متعددة. في مثل هذه الحالة، هناك قلق من أن تشغيل مجموعة واحدة من القواعد على جميع البيانات قد يسبب مشكلات في الأداء أو التقييد. باستخدام نطاق نظام المجموعة، يمكنك إنشاء مجموعات قواعد متعددة، كل منها تم تكوينه بنفس القواعد، مع تغطية كل مجموعة لمجموعة مختلفة.
للحد من مجموعة القواعد الخاصة بك إلى نطاق نظام مجموعة باستخدام قالب ARM، يجب إضافة معرف مورد Azure لنظام المجموعة الخاص بك إلى قائمة نطاقات مجموعة القواعد[]. يجب أن تتضمن قائمة النطاقات معرف مورد مساحة عمل Azure Monitor. يتم دعم أنواع موارد نظام المجموعة التالية كنطاق نظام المجموعة:
بالإضافة إلى معرف نظام المجموعة، يمكنك تكوين خاصية clusterName لمجموعة القواعد الخاصة بك. يجب أن تتطابق الخاصية 'clusterName' مع التسمية cluster
التي تتم إضافتها إلى المقاييس عند استخراجها من مجموعة معينة. بشكل افتراضي، يتم تعيين هذه التسمية إلى الجزء الأخير (اسم المورد) من معرف نظام المجموعة الخاص بك. إذا قمت بتغيير هذه التسمية باستخدام إعداد "cluster_alias" في تكوين استخراج نظام المجموعة، يجب تضمين القيمة المحدثة في الخاصية "clusterName" لمجموعة القواعد. إذا كان الكشط يستخدم قيمة تسمية "نظام المجموعة" الافتراضية، تكون الخاصية 'clusterName' اختيارية.
فيما يلي مثال على كيفية تكوين مجموعة قواعد للحد من الاستعلام إلى مجموعة معينة:
{
"name": "sampleRuleGroup",
"type": "Microsoft.AlertsManagement/prometheusRuleGroups",
"apiVersion": "2023-03-01",
"location": "northcentralus",
"properties": {
"description": "Sample Prometheus Rule Group limited to a specific cluster",
"scopes": [
"/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.monitor/accounts/<azure-monitor-workspace-name>",
"/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.containerservice/managedclusters/<myClusterName>"
],
"clusterName": "<myCLusterName>",
"rules": [
{
...
}
]
}
}
إذا لم يتم تحديد كل من نطاق معرف نظام المجموعة ولم clusterName
يتم تحديدهما لمجموعة قواعد، فإن القواعد الموجودة في بيانات استعلام المجموعة من كافة المجموعات في مساحة العمل من كافة المجموعات.
يمكنك أيضا تقييد مجموعة القواعد الخاصة بك إلى نطاق نظام مجموعة باستخدام واجهة مستخدم المدخل.
لإنشاء مجموعة قواعد جديدة من الصفحة الرئيسية للمدخل:
لتحرير مجموعة قواعد جديدة من الصفحة الرئيسية للمدخل:
في علامة التبويب Scope لمجموعة القواعد:
في علامة التبويب تفاصيل مجموعة القواعد:
في علامة التبويب قواعد مجموعة القواعد، يمكنك مشاهدة قائمة قواعد التسجيل وقواعد التنبيه في المجموعة.
يمكنك إضافة قواعد تصل إلى حد 20 قاعدة في مجموعة واحدة.
يتم تقييم القواعد بالترتيب الذي تظهر به في المجموعة. يمكنك تغيير ترتيب القواعد باستخدام خيارات الانتقال لأعلى والانتقال لأسفل .
لإضافة قاعدة تسجيل جديدة:
يمكنك استخدام قالب Resource Manager لإنشاء وتكوين مجموعات قواعد Prometheus وقواعد التنبيه وقواعد التسجيل. تمكنك قوالب Resource Manager من إنشاء مجموعات القواعد وتكوينها برمجيا بطريقة متسقة وقابلة للتكرار عبر جميع بيئاتك.
الخطوات الأساسية على النحو التالي:
فيما يلي نموذج قالب ينشئ مجموعة قواعد Prometheus، بما في ذلك قاعدة تسجيل واحدة وقاعدة تنبيه واحدة. ينشئ هذا القالب موردا من النوع Microsoft.AlertsManagement/prometheusRuleGroups
. يقتصر نطاق هذه المجموعة على مجموعة AKS واحدة. يتم تنفيذ القواعد بالترتيب الذي تظهر به داخل مجموعة.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {},
"variables": {},
"resources": [
{
"name": "sampleRuleGroup",
"type": "Microsoft.AlertsManagement/prometheusRuleGroups",
"apiVersion": "2023-03-01",
"location": "northcentralus",
"properties": {
"description": "Sample Prometheus Rule Group",
"scopes": [
"/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.monitor/accounts/<azure-monitor-workspace-name>",
"/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.containerservice/managedclusters/<myClusterName>"
],
"enabled": true,
"clusterName": "<myCLusterName>",
"interval": "PT1M",
"rules": [
{
"record": "instance:node_cpu_utilisation:rate5m",
"expression": "1 - avg without (cpu) (sum without (mode)(rate(node_cpu_seconds_total{job=\"node\", mode=~\"idle|iowait|steal\"}[5m])))",
"labels": {
"workload_type": "job"
},
"enabled": true
},
{
"alert": "KubeCPUQuotaOvercommit",
"expression": "sum(min without(resource) (kube_resourcequota{job=\"kube-state-metrics\", type=\"hard\", resource=~\"(cpu|requests.cpu)\"})) / sum(kube_node_status_allocatable{resource=\"cpu\", job=\"kube-state-metrics\"}) > 1.5",
"for": "PT5M",
"labels": {
"team": "prod"
},
"annotations": {
"description": "Cluster has overcommitted CPU resource requests for Namespaces.",
"runbook_url": "https://github.com/kubernetes-monitoring/kubernetes-mixin/tree/master/runbook.md#alert-name-kubecpuquotaovercommit",
"summary": "Cluster has overcommitted CPU resource requests."
},
"enabled": true,
"severity": 3,
"resolveConfiguration": {
"autoResolved": true,
"timeToResolve": "PT10M"
},
"actions": [
{
"actionGroupID": "/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.insights/actiongroups/<action-group-name>"
}
]
}
]
}
}
]
}
تصف الجداول التالية كل خاصية من الخصائص في تعريف القاعدة.
تحتوي مجموعة القواعد على الخصائص التالية.
الاسم | مطلوبة | نوع | الوصف |
---|---|---|---|
name |
صواب | سلسلة | اسم مجموعة قواعد Prometheus |
type |
صواب | سلسلة | Microsoft.AlertsManagement/prometheusRuleGroups |
apiVersion |
صواب | سلسلة | 2023-03-01 |
location |
صواب | سلسلة | موقع المورد خارج المناطق المدعومة. |
properties.description |
خطأ | سلسلة | وصف مجموعة القواعد. |
properties.scopes |
صواب | string[] | يجب أن يتضمن معرف مساحة عمل Azure Monitor الهدف. يمكن أن يتضمن اختياريا معرف نظام مجموعة آخر، أيضا. |
properties.enabled |
خطأ | boolean | تمكين/تعطيل المجموعة. الوضع الافتراضي صحيح. |
properties.clusterName |
خطأ | سلسلة | يجب أن تتطابق مع التسمية cluster التي تمت إضافتها إلى المقاييس التي تم استخراجها من نظام المجموعة الهدف. بشكل افتراضي، قم بتعيين إلى الجزء الأخير (اسم المورد) من معرف نظام المجموعة الذي يظهر في النطاقات[]. |
properties.interval |
خطأ | سلسلة | الفاصل الزمني لتقييم المجموعة. الافتراضي = PT1M |
rules
يحتوي القسم على الخصائص التالية لقواعد التسجيل.
الاسم | مطلوبة | نوع | الوصف |
---|---|---|---|
record |
صواب | سلسلة | اسم قاعدة التسجيل. يتم استخدام هذا الاسم للسلسلة الزمنية الجديدة. |
expression |
صواب | سلسلة | تعبير PromQL لحساب قيمة السلسلة الزمنية الجديدة. |
labels |
صواب | سلسلة | تصنف قاعدة Prometheus أزواج قيم المفاتيح. تتم إضافة هذه التسميات إلى السلسلة الزمنية المسجلة. |
enabled |
خطأ | boolean | تمكين/تعطيل المجموعة. الوضع الافتراضي صحيح. |
rules
يحتوي القسم على الخصائص التالية لقواعد التنبيه.
الاسم | مطلوبة | نوع | الوصف | الملاحظات |
---|---|---|---|---|
alert |
خطأ | سلسلة | اسم قاعدة التنبيه | |
expression |
صواب | سلسلة | تعبير PromQL لتقييمه. | |
for |
خطأ | سلسلة | مهلة إطلاق التنبيه. القيم - PT1M وPT5M وما إلى ذلك. | |
labels |
خطأ | كائن | تسميات أزواج قيم المفاتيح | تسميات قاعدة تنبيه Prometheus. تتم إضافة هذه التسميات إلى التنبيهات التي تم تشغيلها بواسطة هذه القاعدة. |
rules.annotations |
خطأ | كائن | التعليقات التوضيحية لأزواج قيم المفاتيح لإضافتها إلى التنبيه. | |
enabled |
خطأ | boolean | تمكين/تعطيل المجموعة. الوضع الافتراضي صحيح. | |
rules.severity |
خطأ | integer | تنبيه الشدة. 0-4، الافتراضي هو 3 (معلوماتي) | |
rules.resolveConfigurations.autoResolved |
خطأ | boolean | عند التمكين، يتم حل التنبيه تلقائيا عندما لا يكون الشرط صحيحا. الافتراضي = صحيح | |
rules.resolveConfigurations.timeToResolve |
خطأ | سلسلة | تنبيه مهلة الدقة التلقائية. الافتراضي = "PT5M" | |
rules.action[].actionGroupId |
true | سلسلة | معرف واحد أو أكثر من معرفات موارد مجموعة الإجراءات. يتم تنشيط كل منها عند إطلاق تنبيه. |
إذا كان لديك ملف تكوين قواعد Prometheus (بتنسيق YAML)، يمكنك الآن تحويله إلى قالب ARM لمجموعة قواعد Azure Prometheus، باستخدام الأداة المساعدة az-prom-rules-converter. يمكن أن يحتوي ملف القواعد على تعريف مجموعة قواعد واحدة أو أكثر.
بالإضافة إلى ملف القواعد، يجب توفير الأداة المساعدة مع الخصائص الأخرى المطلوبة لإنشاء مجموعات قواعد Azure Prometheus، بما في ذلك: الاشتراك ومجموعة الموارد والموقع ومساحة عمل Azure Monitor المستهدفة ومعرف المجموعة الهدف والاسم ومجموعات الإجراءات (المستخدمة لقواعد التنبيه). تقوم الأداة المساعدة بإنشاء ملف قالب يمكن نشره مباشرة أو داخل أنبوب توزيع يوفر بعض هذه الخصائص كمعلمات. يتم استخدام الخصائص التي توفرها للأداة المساعدة لجميع مجموعات القواعد في القالب. على سبيل المثال، يتم إنشاء جميع مجموعات القواعد في الملف في نفس الاشتراك ومجموعة الموارد والموقع واستخدام نفس مساحة عمل Azure Monitor. إذا تم توفير مجموعة إجراءات كمعلمة للأداة المساعدة، يتم استخدام نفس مجموعة الإجراءات في جميع قواعد التنبيه في القالب. إذا كنت تريد تغيير هذا التكوين الافتراضي (على سبيل المثال، استخدام مجموعات إجراءات مختلفة في قواعد مختلفة) يمكنك تحرير القالب الناتج وفقا لاحتياجاتك، قبل نشره.
ملاحظة
يتم توفير أداة az-prom-convert-utility كأداة مجسمة. نوصي بمراجعة القالب الناتج والتحقق من تطابقه مع التكوين المقصود.
يمكنك استخدام Azure CLI لإنشاء وتكوين مجموعات قواعد Prometheus وقواعد التنبيه وقواعد التسجيل. تستخدم أمثلة التعليمات البرمجية التالية Azure Cloud Shell.
في portal، حدد Cloud Shell. في المطالبة، استخدم الأوامر التالية.
لإنشاء مجموعة قواعد Prometheus، استخدم az alerts-management prometheus-rule-group create
الأمر . يمكنك الاطلاع على وثائق مفصلة حول أمر إنشاء مجموعة قواعد Prometheus في az alerts-management prometheus-rule-group create
قسم أوامر Azure CLI لإنشاء مجموعات قواعد Prometheus وإدارتها.
مثال: إنشاء مجموعة قواعد Prometheus جديدة مع قواعد
az alerts-management prometheus-rule-group create -n TestPrometheusRuleGroup -g TestResourceGroup -l westus --enabled --description "test" --interval PT10M --scopes "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/testrg/providers/microsoft.monitor/accounts/testaccount" --rules [{"record":"test","expression":"test","labels":{"team":"prod"}},{"alert":"Billing_Processing_Very_Slow","expression":"test","enabled":"true","severity":2,"for":"PT5M","labels":{"team":"prod"},"annotations":{"annotationName1":"annotationValue1"},"resolveConfiguration":{"autoResolved":"true","timeToResolve":"PT10M"},"actions":[{"actionGroupId":"/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/testrg/providers/microsoft.insights/actionGroups/test-action-group-name1","actionProperties":{"key11":"value11","key12":"value12"}},{"actionGroupId":"/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/testrg/providers/microsoft.insights/actionGroups/test-action-group-name2","actionProperties":{"key21":"value21","key22":"value22"}}]}]
لإنشاء مجموعة قواعد Prometheus باستخدام PowerShell، استخدم الأمر cmdlet new-azprometheusrulegroup .
مثال: إنشاء تعريف مجموعة قواعد Prometheus مع القواعد.
$rule1 = New-AzPrometheusRuleObject -Record "job_type:billing_jobs_duration_seconds:99p5m"
$action = New-AzPrometheusRuleGroupActionObject -ActionGroupId /subscriptions/fffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/MyresourceGroup/providers/microsoft.insights/actiongroups/MyActionGroup -ActionProperty @{"key1" = "value1"}
$Timespan = New-TimeSpan -Minutes 15
$rule2 = New-AzPrometheusRuleObject -Alert Billing_Processing_Very_Slow -Expression "job_type:billing_jobs_duration_seconds:99p5m > 30" -Enabled $false -Severity 3 -For $Timespan -Label @{"team"="prod"} -Annotation @{"annotation" = "value"} -ResolveConfigurationAutoResolved $true -ResolveConfigurationTimeToResolve $Timespan -Action $action
$rules = @($rule1, $rule2)
$scope = "/subscriptions/fffffffff-ffff-ffff-ffff-ffffffffffff/resourcegroups/MyresourceGroup/providers/microsoft.monitor/accounts/MyAccounts"
New-AzPrometheusRuleGroup -ResourceGroupName MyresourceGroup -RuleGroupName MyRuleGroup -Location eastus -Rule $rules -Scope $scope -Enabled
يمكنك عرض مجموعات قواعد Prometheus وقواعدها المضمنة في مدخل Microsoft Azure بإحدى الطرق التالية:
يمكنك الآن عرض حالة صحة الموارد لمجموعة قواعد Prometheus في المدخل. يمكن أن يسمح لك هذا بالكشف عن المشكلات في مجموعات القواعد، مثل التكوين غير الصحيح أو مشاكل التحكم في الاستعلام
لتمكين قاعدة أو تعطيلها، حدد مجموعة القواعد في مدخل Microsoft Azure. حدد تمكين أو تعطيل لتغيير حالته.
حدث
إنشاء تطبيقات ووكلاء الذكاء الاصطناعي
١٧ رمضان، ٩ م - ٢١ رمضان، ١٠ ص
انضم إلى سلسلة الاجتماعات لإنشاء حلول الذكاء الاصطناعي قابلة للتطوير استنادا إلى حالات الاستخدام في العالم الحقيقي مع المطورين والخبراء الآخرين.
تسجيل الآنالتدريب
الوحدة النمطية
تكوين التنبيهات والاستجابات - Training
في هذه الوحدة، ستتعرف على كيفية قيام تنبيهات Azure Monitoring بإعلامك بشكل استباقي عندما تشير بيانات Azure Monitor إلى أنه قد تكون هناك مشكلة في البنية الأساسية أو التطبيقات قبل أن تصبح المشكلة مشكلة للمستخدمين.
الوثائق
نظرة عامة على Azure Monitor مع Prometheus - Azure Monitor
احصل على نظرة عامة على Azure Monitor مع Prometheus، والذي يوفر واجهات متوافقة مع Prometheus تسمى مساحات عمل Azure Monitor لتخزين بيانات القياس واستردادها.
قواعد التنبيه الموصى بها لمجموعات Kubernetes - Azure Monitor
توضح هذه المقالة كيفية تمكين قواعد التنبيهات القياسية الموصى بها لمجموعة Kubernetes في Azure Monitor.
توصيل Grafana بمقاييس Azure Monitor Prometheus - Azure Monitor
كيفية تكوين خدمة Azure Monitor المدارة لبيانات Prometheus وAzure المستضافة كمصدر بيانات ل Azure Managed Grafana وGrafana المدارة ذاتيا.