Files
Monorepo/Service.EDMIService/Messages/GetServiceStatus.vb
Developer01 8220852e56 Verbesserung von Performance und Monitoring
Neue Performance-Metriken in `EDMIService` hinzugefügt, inkl. Felder für Job-Dauer, langsame Queries und Timestamps. `ServiceStatusResponse` um diese Metriken erweitert.
`DatatableJob` optimiert: `<DisallowConcurrentExecution>` hinzugefügt, Logging für langsame Queries (>10s) und Jobs (>30s) verbessert, sowie Gesamt-Dauer-Messung integriert.
`Scheduler` nutzt nun dedizierte MSSQL-Instanz zur Entkopplung von Datenbankoperationen. Thread-Pool-Größe reduziert und gestaffeltes Starten von INIT-Jobs eingeführt.
Connection-Strings in `WindowsService` angepasst: `ApplicationName` spezifisch gesetzt und `MaxPoolSize` erhöht. Allgemeine Logging-Verbesserungen für bessere Skalierbarkeit und Stabilität.
2026-10-13 12:04:13 +02:00

17 lines
1.2 KiB
VB.net

Imports System.Runtime.Serialization
Namespace Messages
<DataContract(Name:="ServiceStatusResponse", [Namespace]:="http://schemas.datacontract.org/2004/07/DigitalData.Services.EDMIService.Messages")>
Public Class ServiceStatusResponse
<DataMember(Order:=1)> Public Property ActiveSessionCount As Integer
<DataMember(Order:=2)> Public Property ActiveUsers As List(Of String)
<DataMember(Order:=3)> Public Property ActiveSessions As Dictionary(Of String, String)
<DataMember(Order:=4)> Public Property Timestamp As DateTime
<DataMember(Order:=5)> Public Property RecentUsers As List(Of String) = New List(Of String)()
<DataMember(Order:=6)> Public Property LastJobDurationMs As Long = 0
<DataMember(Order:=7)> Public Property LastJobName As String = String.Empty
<DataMember(Order:=8)> Public Property LastJobTimestamp As DateTime = DateTime.MinValue
<DataMember(Order:=9)> Public Property SlowQueryCount As Integer = 0 ' Queries > 10s seit Service-Start
<DataMember(Order:=10)> Public Property CachedTablesSnapshotAge As Integer = 0 ' Sekunden seit letztem Snapshot
End Class
End Namespace