Başvuru · Mühendisler, Geliştiriciler için
Otomasyon sorunlarını giderme
İşlem akışı, alarm kuralı ve fonksiyon hatalarını, otomasyonun neden dağıtılamadığını ya da çalışmadığını ve neleri kontrol edeceğinizi anlatır.
İşlem akışları, alarm kuralları ve fonksiyonlar Edge Gateway'lerde çalışır. Sorunların çoğu üç gruptan birine girer: otomasyon Edge Gateway'e hiç ulaşmamıştır, Edge Gateway'e ulaşmıştır ama veri almaz ya da çalışır ama eylemi başarısız olur. Bu sayfa her durumu ayrı ayrı ele alır.
Çalışma durumu denetimlerindeki bulgular
| Bulgu | Anlamı | Ne yapılmalı |
|---|---|---|
| İşlem akışı yayınlandı ancak hiçbir yerde çalışmıyor | İşlem akışı hiçbir Edge Gateway'e atanmamış ya da hiçbir Edge Gateway'e gönderilmemiş. | Çalıştığı yer alanında Edge Gateway'leri seçin ve yeniden yayınlayın. |
| İşlem akışı hiçbir cihazı okumuyor | İşlem akışının girişi, atandığı Edge Gateway'lerdeki hiçbir cihazla eşleşmiyor. | Kaynağın Hangi veriler koşullarını ve Gerekli veri noktaları ayarını kontrol edin. |
| Kural, çözümlenebilen hiçbir veriyi okumuyor | Alarm kuralının koşuluyla eşleşen hiçbir veri noktası ya da cihaz yok. | Koşuldaki veri noktalarının ve cihazların var olduğunu ve adlarının yapılandırmadakiyle aynı yazıldığını kontrol edin. |
| Saha tarafı bu nesneyi reddetti | Edge Gateway yapılandırmayı reddetti. | Nesneyi açın, hatayı okuyun, düzeltin ve yeniden dağıtın. |
| Saha tarafında farklı bir sürüm çalışıyor | Edge Gateway'in çalıştırdığı sürüm, yapılandırılan sürümle aynı değil. | Yeniden dağıtın ya da değişikliği geri alın. |
| Her şey tek bir Edge Gateway'de çalışıyor | Birçok alarm kuralı, fonksiyon ve veri hedefi tek bir Edge Gateway'e bağlı. | Bu bir hata değil, risk uyarısıdır. |
İşlem akışları
Dağıtım durumları
Dağıtımlar sekmesinde her Edge Gateway için bir satır bulunur. Dağıtım sütunu şu değerlerden birini gösterir:
| Durum | Anlamı |
|---|---|
| İstendi | Yayınlandı. Merkez sunucu birazdan Edge Gateway'e gönderecek. |
| Bekliyor | Gönderildi. Edge Gateway ya da işlem akışının ihtiyaç duyduğu cihazlar bekleniyor (Cihazlar bekleniyor). |
| Etkin | Edge Gateway tam olarak bu revizyonu çalıştırıyor. |
| Başarısız | Edge Gateway revizyonu reddetti. Nedeni Son hata alanında yazar. |
| Sapma var | Edge Gateway bu revizyondan farklı bir şey çalıştırıyor (Çalışan plan farklı). Yeniden yayınlayın. |
| Devre dışı | İşlem akışı bu Edge Gateway'de durduruldu. |
İşlem akışının çalışma durumu şu değerlerden biridir: Sorunsuz, Eşitleniyor, Çevrim dışı (Edge Gateway rapor göndermeyi bıraktı), İlgilenilmesi gerekiyor ya da Çalışma kanıtı yok. Yaşam sinyali gecikti, Edge Gateway'in işlem akışının durumunu bir süredir göndermediğini; Hiç bildirim yok ise hiç göndermediğini gösterir. Her iki durumda da Edge Gateway'in çevrim içi olduğunu kontrol edin.
Hata metinleri
Hatalar tuvalde, Dağıtımlar sekmesinde ve Adım adım izleme sekmesinde kısa metinler olarak görünür:
| Metin | Anlamı | Ne yapılmalı |
|---|---|---|
İşlem akışı derlenemedi, Doğrulama başarısız | İşlem akışının tanımında hata var. Doğrula, hataları düğüm düğüm listeler. | Adı geçen düğümü düzeltin. |
Edge Gateway seçilmedi | Çalıştığı yer alanı boş. | Bir Edge Gateway seçin. |
Adımlar döngü oluşturuyor, Çok fazla adım, Çok fazla bağlantı, Tanım çok büyük | İşlem akışı sınırlarından biri aşıldı. | İşlem akışını birkaç parçaya bölün. |
Formül geçersiz, Formül çok karmaşık | Hesapla düğümündeki formül hatalı ya da çok uzun. | Adları ve parantezleri kontrol edin. |
Formül hesaplanamadı | Çalışma sırasında sıfıra bölme oluştu ya da bir değer eksik veya geçersiz. | Girişi bir Koşullu yönlendir düğümüyle denetleyin ya da hata çıkışını bir Hatalar düğümüne bağlayın. |
Giriş verisi geçersiz kalitede | Hesaplama yapan bir düğüme veri kalitesi Geçerli olmayan bir değer geldi. | Cihazın veri noktası hatalarını kontrol edin. |
İki giriş de bekleniyor | Birleştir düğümü iki değerden yalnızca birini aldı. | İşlem akışı başladıktan hemen sonra normaldir. İki cihazın da veri gönderdiğini kontrol edin. |
Geç gelen veri yok sayıldı | Zaman penceresinden daha eski bir okuma geldi. | Cihazın saatini ya da pencere ayarını kontrol edin. |
Dış eylemler devre dışı | Cihaza yaz, API çağır ya da Hedefe gönder düğümü Canlı modda, ancak Edge Gateway'de [Flows] EffectsEnabled = false ayarlı. | Bu ayarı o Edge Gateway'de true yapın ve Edge Gateway'i yeniden başlatın. |
Eylem hız sınırına ulaşıldı | Aynı eylem, En kısa aralık (ms) değerinden daha sık tetiklendi. | Aralığı büyütün ya da bir Tekrar bastırma düğümü ekleyin. |
Eylem kuyruğu dolu | Edge Gateway'in çalıştırabileceğinden fazla eylem birikti. | Eylem sayısını azaltın ya da [Flows] EffectQueueCapacity değerini artırın. |
Salt okunur adres, Yazma adresi bulunamadı, Cihaza yazılamadı, Desteklenmeyen yazma veri türü | Cihaza yaz başarısız oldu. | Veri noktasının var olduğunu, yazılabilir ve sayısal olduğunu kontrol edin. Cihaz da yazmaya izin vermelidir. |
API çağrısı başarısız, API zaman aşımı, API'ye ulaşılamıyor, API, HTTP <kod> yanıtı verdi | API çağır başarısız oldu. | REST API hedefini Denetle ile test edin. |
Veri hedefine gönderilemedi, Veri hedefi çalışmıyor, Gönderilecek veri yok | Hedefe gönder başarısız oldu. | Hedefte Denetle'yi çalıştırın. |
Bildirim kanalı bulunamadı | Bildirim düğümünde seçili kanal artık yok. | Var olan bir kanal seçin. |
Kontrol noktası deposu kullanılamıyor, Kontrol noktası çok büyük, Kontrol noktası deposu dolu | Edge Gateway, işlem akışının durumunu kaydedemiyor. | Edge Gateway'de disk alanı açın ve daha küçük pencereler kullanın. |
İşlem akışı çalışıyor ama hiçbir şey yapmıyor
- İşlem akışı Deneme modunda yayınlanmış. Deneme modunda işlem akışı, ne yapacağını Adım adım izleme sekmesine kaydeder, ancak eylemi gerçekleştirmez. Canlı yayınla'yı kullanın.
- Edge Gateway'de dış eylemler kapalı (
Dış eylemler devre dışı, yukarıdaki tabloya bakın). - Filtre ya da Koşullu yönlendir düğümü her şeyi yanlış (false) çıkışına gönderiyor. Adım adım izleme sekmesine bakın ya da Test sekmesinde örnek veriyle çalıştırın.
- Edge Gateway kapalıyken Zamanlama düğümü tetiklenmedi. Kaçırılan çalıştırmalar sonradan telafi edilmez.
Alarm kuralları
Alarm kuralları, izledikleri cihazın bağlı olduğu Edge Gateway'de çalışır. Hataları ayrı bir ekranda değil, Edge Gateway'in günlüğünde görünür. Sistem günlükleri ekranını açın ve şu mesajları arayın:
| Günlük mesajı | Anlamı |
|---|---|
Error while evaluating rule '<name>': ... ya da Error evaluating rule '<name>': ... | Koşul çalışma sırasında hata verdi; örneğin değer beklenenden farklı türde geldi. |
Failed to compile criteria for rule '<name>' ... | Koşul oluşturulamıyor. Veri noktası adlarını ve operatörleri kontrol edin. |
<action> limit reached for rule '<name>'. Next ... allowed at ... | Alarm kuralı, eylem sınırının izin verdiğinden daha sık tetiklendi. Fazla eylemler atlanır. |
Alarm kuralı hiç tetiklenmiyorsa cihazın bağlı olduğunu, koşuldaki veri noktasının tam olarak bu adla var olduğunu ve Edge Gateway'in çevrim içi olduğunu kontrol edin. Bkz. Alarm kuralları.
Alarm kurallarının gönderdiği bildirimler ulaşmıyorsa kanalı Test et ile deneyin (bkz. Bildirim kanalları). Başarısız bir gönderim, vazgeçilmeden önce yaklaşık bir saat boyunca yeniden denenir.
Fonksiyonlar
Derleme hataları
Derle düğmesi fonksiyonu derler ve hataları gösterir. Olası mesajlar:
| Mesaj | Anlamı |
|---|---|
Derleme başarılı. | Fonksiyon dağıtıma hazır. |
Compile Error ve altında CS0103 (line 12, column 9): The name 'x' does not exist in the current context gibi satırlar | Bir C# hatası. Satır ve sütun numarası hatanın yerini gösterir. |
Blacklisted namespace used: System.IO. Reason: For security reasons, direct filesystem access is not permitted. | Kod, fonksiyonlarda kullanılmasına izin verilmeyen bir namespace kullanıyor. Bkz. Functions SDK. |
Fonksiyon kodu ve adı boş olamaz. | Fonksiyonun adını ve kodunu girin. |
<ad> adlı bir fonksiyon zaten var. Farklı bir ad seçin. | Başka bir ad seçin. |
Unable to find the actor type in the compiled assembly. | Kodda FunctionBase sınıfından türeyen bir sınıf yok. |
Actor ctor failed: ... | Constructor bir exception fırlattı. Üç argümanı FunctionBase sınıfına olduğu gibi aktarın ve constructor içinde başka iş yapmayın. |
Dağıtım hataları
| Mesaj | Anlamı |
|---|---|
Function '<name>' deployed to <n> gateway(s): <names> | Fonksiyon dağıtıldı. |
Deployment timed out (no gateway confirmation), Gateway did not respond to deploy request | Edge Gateway çevrim dışı ya da meşgul. |
Failed to deploy to <n> gateway(s): <reasons> | Edge Gateway dağıtımı reddetti. Nedeni mesajın devamında yazar. |
The function is currently being processed. Please wait. | Bu fonksiyon için başka bir derleme ya da dağıtım sürüyor. |
Fonksiyon dağıtıldı ama hiçbir şey yapmıyor ya da durdu
- Fonksiyon hiçbir şeye abone değil. Aboneliği
base.OnStarted()çağrısından önce ekleyin. Bkz. Functions SDK. - Fonksiyonun dağıtımı çok sayıda exception sonrasında kaldırıldı. Fonksiyon
ExceptionThresholdPerFunctionkadar exception fırlatınca (varsayılan 10) Edge Gateway fonksiyonun dağıtımını kaldırır ve sınıra ulaşıldığını günlüğe yazar. Nedeni giderin ve fonksiyonu yeniden dağıtın. - Günlükte satır görünmüyor.
LogLevelPolicy, her düzey için yazılabilecek günlük satırı sayısını sınırlar. Sınır aşılınca bir uyarı yazılır ve süre penceresi dolana kadar sonraki satırlar atlanır. Save skipped: missing or invalid DeviceId in MetaData.Fonksiyon, cihaz ID'si olmayan bir okumayı kaydetmeye çalıştı.
Fonksiyonun günlük satırlarını fonksiyonun Günlükler sekmesinde ya da Sistem günlükleri ekranında okuyabilirsiniz.
Sonraki adımlar
- İşlem akışı düğümleri: her düğümün ayarları ve işlem akışı sınırları.
- Functions SDK: fonksiyon yazma, abonelikler ve izin verilen API'ler.
- Edge Gateway sorunlarını giderme: otomasyonun çalıştığı Edge Gateway bağlı değilse.
Bu sayfa işinize yaradı mı?
Proxus'u değerlendiriyor musunuz? 30 dakikalık teknik görüşmede kendi makinelerinizle görün.