İçeriğe geç

Log & Denetim

inSCADA, platform üzerindeki tüm önemli olayları otomatik olarak kaydeder. Loglar zaman serisi veritabanında tutulur ve tarih aralığına göre sorgulanabilir.

Menü: Logs → Log

Event Log

Her olay kaydı aşağıdaki bilgileri içerir:

AlanAçıklama
activityİşlem adı
msgLog mesajı
logSeveritySeviye: Information, Warning, Error
dttmZaman damgası
projectIdİlgili proje
OlaySeviyeAçıklama
Script hatasıErrorScript çalışma hataları ve stack trace
Bağlantı değişikliğiInformationBağlantı başlatma/durdurma
Yapılandırma değişikliğiInformationProje, değişken, alarm CRUD işlemleri
Kullanıcı işlemiInformationGiriş, çıkış, şifre değişikliği

Script’ler içinden manuel log kaydı oluşturulabilir:

ins.writeLog("INFO", "Otomasyon", "Vardiya değişimi tamamlandı");
// → OK
var end = ins.now();
var start = ins.getDate(end.getTime() - 3600000); // 1 saat
var logs = ins.getLogsByPage(start, end, 0, 10);

Yanıt:

[
{
"activity": "Script Test",
"dttm": 1774688982859,
"msg": "Documentation test log entry",
"projectId": 153,
"logSeverity": "Information"
}
]

Olay logları varsayılan olarak 14 gün tutulur. Bu süre InfluxDB retention policy (event_log_rp) ile belirlenir.


Menü: System → Auth Log

Tüm giriş denemeleri (başarılı ve başarısız) kaydedilir:

{
"msg": "inscada logged in successfully",
"ip": "0:0:0:0:0:0:0:1",
"username": "inscada",
"date": { "epochSecond": 1774689046 },
"isSuccessful": true
}
AlanAçıklama
usernameGiriş deneyen kullanıcı
ipİstemci IP adresi
isSuccessfulBaşarılı mı
msgDetay mesajı
dateZaman damgası
// Başarısız giriş denemelerini kontrol et
var attempts = ins.getLastAuthAttempts();
var failed = 0;
for (var i = 0; i < attempts.size(); i++) {
if (!attempts.get(i).isSuccessful) {
failed++;
}
}
if (failed > 5) {
ins.notify("error", "Güvenlik",
failed + " başarısız giriş denemesi!");
}

Giriş denemeleri 365 gün tutulur (auth_attempt_rp).


Menü: System → Auth Log → Online Users

Şu anda oturum açmış kullanıcıları gösterir. Yönetici, aktif oturumları sonlandırabilir.


Script’lerin log: true ayarı açıksa, her çalıştırma sonucu otomatik olarak loglanır:

  • Başarılı çalışma süresi
  • Hata durumunda hata mesajı ve stack trace
{
"activity": "test",
"msg": "Script test failed. Cause: TypeError: ins.getScripts is not a function",
"logSeverity": "Error"
}

ins.consoleLog() ile debug amaçlı log yazılabilir:

ins.consoleLog("Debug: power = " + power + " kW");

Bu loglar sunucu konsol çıktısında görünür (stdout).

Detaylı API: Log API →