Yeni: Yapay zekâ güvenlik duvarı her modülü izliyor ve her olayı sade bir dille açıklıyor. Nasıl çalıştığını görün

Cihaz profillerinde alarm kuralları

Threshold ve offline alarm kurallarını cihaz profili başına bir kez tanımlayın – form, JSON modu, kaydetme, sürümler, sınırlar ve bir kuralın her parçası.

Alarm kuralları bir cihaz profili üzerinde tanımlanır ve o profildeki her cihaza uygulanır. Bir kural, koşulu sağlandığında bir alarm açar ve koşul sona erdiğinde alarmı kapatır. Kurallar, profilin cihazlarından gelen her mesaj için kök akışın alarm adımında çalışır.

Kuralları aç

  1. Device Profiles bölümünü açın ve bir profil açın.
  2. Alarm rules sekmesini açın.

Profilin kurallarını; türlerini, Threshold veya Device offline olan çeşitlerini, kısa koşul açıklamalarını ve bir Enabled anahtarını görürsünüz. View alarms and alarm rules yetkisi olan herkes bunları görür; değiştirmek için Edit the alarm rules of device profiles yetkisi gerekir (varsayılan olarak Admin). Bu yetki yoksa sekmede “You can view the rules but not change them.” yazar.

Kural ekleyin veya değiştirin

  1. Add rule düğmesine tıklayıp Threshold rule veya Device offline rule seçin ya da bir kuralda Edit düğmesine tıklayın.
  2. Çekmeceyi doldurun (aşağıya bakın). Üstteki Form ve JSON arasında geçiş yapabilirsiniz.
  3. Add to list (yeni kural) veya Update the list düğmesine tıklayın.
  4. Diğer kurallar için tekrarlayın. Sekmede “n rules changed and not saved yet: nothing applies until you save.” mesajı görünür.
  5. Save rules düğmesine tıklayın. Discard kaydedilmemiş değişiklikleri atar.

Kaydetme, profilin tüm kural setini değiştirir. Tanımı veya anahtarı değişen bir kural yeni bir sürüm alır; değişmeyen bir kural sürümünü ve durumunu korur. Yeni kurallar yaklaşık iki saniye içinde tüm çalışanlara ulaşır. Aynı profili aynı anda başka biri kaydederse “The alarm rules changed at the same time; try again.” uyarısı alırsınız.

Threshold kuralı: form

AlanAyarladığınız değer
TypeAlarmın adı. Harfler, rakamlar ve _ . : -, en fazla 128 karakter, profil içinde benzersiz. Cihaz ve tür başına bir açık alarm bulunur. Yeni kural high_value ile başlar.
Alarm titleİnsanların gördüğü metin, en fazla 300 karakter. Yer tutucular: {{device.name}}, {{value}}, {{key}}, {{threshold}}, {{severity}}, {{type}}. Yeni kural {{device.name}}: {{value}} ile başlar.
EnabledAçık veya kapalı.
SeverityHer önem derecesi için bir satır: önem derecesi, ardından Key, Operator ve Value. Add a severity bir satır ekler (en fazla beş, her önem derecesi bir kez). Doğru olan en yüksek satır kazanır.
KeyBir telemetri anahtarı. Kutu, profilin tanımlı anahtarlarını sunar ve serbest metin kabul eder.
Operator>, >=, <, <=, ==, !=.
ValueBir sayı, true veya false, bir metin ya da cihaz başına bir sınır için attribute:<name>.
Only from topicAdvanced altında: yalnızca bu MQTT konusundan gelen mesajları karşılaştırır. Boş = herhangi bir konu.
How long the condition must holdCount in altında Readings in a row veya Seconds (device time) seçin, ardından yükseltme ve temizleme sayılarını girin (1 ile 86.400 arası).
Hysteresis (clear margin)Temizleme tarafında mutlak bir pay.
RunbookAlarmla birlikte gösterilen metin: neyin kontrol edileceği ve ne yapılacağı (en fazla 10.000 karakter).

Koşullar, debounce ve histerezis ayrıntıları: Alarm conditions reference ve Debounce, hysteresis and dampening.

Device offline kuralı: form

AlanAyarladığınız değer
Alarm titleVarsayılan {{device.name}} is offline.
Open after (seconds offline)10 ile 604.800 (7 gün). Varsayılan 600.
SeverityVarsayılan Warning.
Runbook, EnabledYukarıdakiyle aynı.

Türü her zaman device_offline olduğundan, bir profilde en fazla bir tane bulunur. Bkz. Offline alarms.

Yalnızca JSON modunda görünenler

Form yaygın yapıyı kapsar. Bu parçalar yalnızca JSON modunda bulunur:

ParçaJSON alanıSayfa
Birleşik koşullar (all/any ile birden çok karşılaştırma)severities[].condition ile all / anyAlarm conditions reference
Açık bir temizleme koşuluclearClear conditions and late readings
Dampening ayarlarıdampeningDebounce, hysteresis and dampening
Bildirimler: alıcılar, kanallar, en düşük önem derecesi, hatırlatmalarnotifyAlarm notifications in depth
Sıra dışı okumaların yeniden oynatılmasıevaluateBackfillClear conditions and late readings

Form, diğer alanları düzenlediğinizde bu parçaları korur. Birleşik koşullu bir kural, “This rule uses combined conditions or other settings the form does not show: edit it as JSON.” notuyla JSON modunda açılır. JSON modu katıdır: Hermetry’nin tanımadığı bir alan reddedilir, bu yüzden kayıtlı bir kural asla yok sayılan bir ayar taşımaz.

Eksiksiz bir kural

{
  "type": "high_temperature",
  "title": "{{device.name}}: {{value}} °C",
  "severities": [
    { "severity": "CRITICAL", "condition": { "key": "temperature", "op": ">", "value": 90 } },
    { "severity": "MAJOR", "condition": { "key": "temperature", "op": ">", "value": { "attribute": "max_temp" } } }
  ],
  "debounce": { "mode": "duration", "raise": 60, "clear": 120 },
  "hysteresis": 2,
  "notify": {
    "recipients": [ { "kind": "role", "role": "ADMIN" }, { "kind": "email", "email": "oncall@example.com" } ],
    "minSeverity": "MAJOR",
    "repeatEverySec": 1800
  },
  "runbook": "Check the cooling fan and the door seal. Clear with a note when fixed.",
  "enabled": true
}

Kuralların kontrol ettiği anahtarlar

Kaydettiğinizde her koşul anahtarı bir telemetri anahtarı olmalıdır: boşluk içermemeli ve salt sayı olmamalıdır (“A key names a telemetry key: no spaces and not a number.”). Kayıt numarası 40001 gibi sayıya benzeyen bir anahtar, profilde tanımlıysa kabul edilir. Profilin tanımlamadığı bir anahtar yalnızca uyarıdır: “Not a telemetry key of this profile: … The rule fires only on devices that send these keys; save is still possible.”

Kaldırma, devre dışı bırakma ve yeniden adlandırma

  • Remove “Remove type?” diye sorar ve “When you save, its open alarms are resolved.” uyarısını gösterir. Açık alarmlar, kaydettiğinizde kapatılır.
  • Bir kuralı kapatmak, değerlendirmesini durdurur. Kuralın zaten açtığı bir alarm, siz elle temizleyene veya kuralı yeniden açana kadar açık kalır.
  • Profildeki bir telemetri anahtarını yeniden adlandırırsanız, profil eski anahtarı okuyan alarm kurallarını listeler ve tek adımda yeni anahtara yazabilir. Yeniden yazılan her kural yeni bir sürüm alır.
  • Alarm kuralları bulunan bir profil, kurallar kaldırılana kadar silinemez; silme işlemi bunları listeler.

Sınırlar

SınırDeğer
Profil başına kural50
Kural başına önem derecesi5 (her biri bir kez)
Koşul başına karşılaştırma16
all/any gruplarının iç içe geçmesi4 düzey
Type128 karakter, A-Z a-z 0-9 _ . : -
Title300 karakter
Runbook10.000 karakter
Key128 karakter
Metin değeri256 karakter
Debounce yükseltme ve temizleme1 ile 86.400 arası
Alıcılar20
Çevrimdışı gecikmesi10 sn ile 7 gün

Eşiklerin ötesi

Alarm kuralları, bir değeri sabit bir sayı veya bir cihaz özniteliğiyle karşılaştırır. Hesaplama yapamazlar (“setpoint + 10” gibi), bir takvimi izleyemezler veya iki cihazı karşılaştıramazlar. Bunun için, her ikisi de aynı yaşam döngüsüyle alarm açıp kapatabilen bir Rules-card rule veya bir flow kullanın. Hazır örnekler: Alarm rule cookbook.