Verfolgt die Synchronisationsstatistik.
In der folgenden Tabelle stellt die Beschreibung den SQL-Datentyp bereit. Wenn Sie Ihr Skript in Java oder .NET schreiben, müssen Sie den entsprechenden Datentyp benutzen. Weitere Hinweise finden Sie unter SQL-Java-Datentypen und SQL-.NET-Datentypen.
In SQL-Skripten können Sie Ereignisparameter mit ihrem Namen oder mit einem Fragezeichen angeben. Namen und Fragezeichen dürfen jedoch in einem Skript nicht gemischt verwendet werden. Wenn Sie Fragezeichen verwenden, müssen die Parameter in der nachfolgend gezeigten Reihenfolge stehen und sind nur dann optional, wenn keine nachfolgenden Parameter angegeben wurden (z.B. müssen Sie Parameter 1 verwenden, wenn Sie Parameter 2 verwenden möchten). Wenn Sie benannte Parameter verwenden, können Sie beliebige Teilmengen der Parameter in beliebiger Reihenfolge angeben.
Parametername für SQL-Skripten |
Beschreibung |
Reihenfolge |
---|---|---|
s.remote_id | VARCHAR(128). Die entfernte ID von MobiLink. Sie können die entfernte ID nur dann referenzieren, wenn Sie benannte Parameter verwenden. | Nicht anwendbar |
s.username |
VARCHAR(128). Der MobiLink-Benutzername |
1 |
s.warnings |
INTEGER. Die Anzahl der während der Synchronisaton ausgegebenen Warnungen. |
2 |
s.errors |
INTEGER. Anzahl der Fehler, die während der Synchronisation vorgekommen sind. |
3 |
s.deadlocks |
INTEGER. Gesamtzahl der Deadlocks in der konsolidierten Datenbank, die für die Synchronisation festgestellt wurden. |
4 |
s.synchronized_tables |
INTEGER. Anzahl der Client-Tabellen, die an der Synchronisation beteiligt waren. |
5 |
s.connection_retries |
INTEGER. Angabe, wie oft der MobiLink-Server versucht hat, eine Verbindung zur konsolidierten Datenbank herzustellen. |
6 |
Keine.
Mit dem Ereignis synchronization_statistics können Sie für jeden beliebigen Benutzer und für jede beliebige Verbindung diverse statistische Daten über die aktuelle Synchronisation sammeln. Das Verbindungsskript synchronization_statistics wird unmittelbar vor dem Festschreiben am Ende der letzten Synchronisationstransaktion aufgerufen.
Das folgende Beispiel fügt Synchronisationsstatisiken in die Tabelle sync_con_audit ein.
CALL ml_add_connection_script( 'ver1', 'synchronization_statistics', 'INSERT INTO sync_con_audit( ml_user, warnings, errors, deadlocks, synchronized_tables, connection_retries) VALUES ( {ml s.username}, {ml s.warnings}, {ml s.errors}, {ml s.deadlocks}, {ml s.synchronized_tables}, {ml s.connection_retries})' ) |
Nachdem statistische Daten in die Audit-Tabelle eingefügt wurden, können Sie sie zur Überwachung der Synchronisationen einsetzen und ggf. Optimierungen durchführen.
Der folgende Aufruf einer MobiLink-Systemprozedur registriert eine Java-Methode namens synchronizationStatisticsConnection als das Skript für das Verbindungsereignis synchronization_statistics, wenn die Skriptversion ver1 synchronisiert wird.
CALL ml_add_java_connection_script( 'ver1', 'synchronization_statistics', 'ExamplePackage.ExampleClass.synchronizationStatisticsConnection' ) |
Im Folgenden sehen Sie die Java-Beispielmethode synchronizationStatisticsConnection. Sie protokolliert einige der Statistiken im MobiLink-Nachrichtenlog. (Das Protokollieren von Statistiken im MobiLink-Nachrichtenlog ist zum Zeitpunkt der Entwicklung möglicherweise nützlich, verlangsamt aber einen Produktionsserver.)
public String synchronizationStatisticsConnection( String user, int warnings, int errors, int deadlocks, int synchronizedTables, int connectionRetries ) { java.lang.System.out.println( "synch statistics number of deadlocks: " + deadlocks ; return( null ); } |
Der folgende Aufruf einer MobiLink-Systemprozedur registriert eine .NET-Methode namens SyncStats als das Skript für das Verbindungsereignis synchronization_statistics, wenn die Skriptversion ver1 synchronisiert wird.
CALL ml_add_dnet_connection_script( 'ver1', 'synchronization_statistics', 'TestScripts.Test.SyncStats' ) |
Im Folgenden sehen Sie die .NET-Beispielmethode SyncStats. Sie protokolliert einige der Statistiken im MobiLink-Nachrichtenlog. (Das Protokollieren von Statistiken im MobiLink-Nachrichtenlog ist zum Zeitpunkt der Entwicklung möglicherweise nützlich, verlangsamt aber einen Produktionsserver.)
public string SyncStats( string user, int warnings, int errors, int deadLocks, int syncedTables, int connRetries ) { System.Console.WriteLine( "synch statistics number of deadlocks: " + deadlocks ; return( null ); } |
Kommentieren Sie diese Seite in DocCommentXchange. Senden Sie uns Feedback über diese Seite via E-Mail. |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |