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.
17 lines
1.2 KiB
VB.net
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 |