Ermöglicht den Zugriff auf Synchronisationsstatistiken für Download-Vorgänge.
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. Siehe 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. In SQL-Skripten können Sie Ereignisparameter mit ihrem Namen oder mit einem Fragezeichen angeben. Die Verwendung von Fragezeichen ist veraltet und es wird empfohlen, benannte Parameter zu verwenden. Sie können nicht Namen und Fragezeichen in einem Skript mischen. 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 (veraltet für SQL) |
---|---|---|
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 wie er in der Definition SYNCHRONIZATION USER angegeben wurde. |
1 |
s.warnings |
INTEGER. Die Anzahl der ausgegebenen Warnungen. |
2 |
s.errors |
INTEGER. Die Anzahl der eingetretenen Fehler, einschließlich der bearbeiteten Fehler. |
3 |
s.fetched_rows |
INTEGER. Die Anzahl der Zeilen, die vom Skript download_cursor abgerufen wurden. |
4 |
s.deleted_rows |
INTEGER. Die Anzahl der Zeilen, die vom Skript download_delete_cursor abgerufen wurden. |
5 |
s.filtered_rows |
INTEGER. Die Anzahl der Zeilen aus dem Parameter fetched_rows, die tatsächlich an die entfernte Datenbank gesendet wurden. Daraus ist die Download-Filterung der Upload-Werte ersichtlich. |
6 |
s.bytes |
INTEGER. Die Anzahl der per Download an die entfernte Datenbank übertragenen Bytes. |
7 |
Keine.
Mit dem Ereignis download_statistics können Sie für jeden beliebigen Benutzer statistische Daten zu Download-Vorgängen sammeln. Das Verbindungsskript download_statistics wird unmittelbar vor dem Festschreiben am Ende der Download-Transaktion aufgerufen.
Abhängig von der Befehlszeile werden nicht alle Warnungen protokolliert. Die Anzahl der an dieses Skript übergebenen Warnungen ist die Anzahl der Warnungen, die protokolliert würden, wenn keine Warnungen deaktiviert wären. Diese Zahl kann höher sein als die Anzahl der protokollierten Warnungen.
Das folgende Beispiel fügt Synchronisationsstatisiken in die Tabelle download_audit ein.
CALL ml_add_connection_script( 'ver1', 'download_statistics', 'INSERT INTO download_audit( user_name, warnings, errors, fetched_rows, deleted_rows, filtered_rows, bytes ) VALUES ( {ml s.username}, {ml s.warnings}, {ml s.errors}, {ml s.fetched_rows}, {ml s.deleted_rows}, {ml s.filtered_rows}, {ml s.bytes})') |
Nachdem wesentliche 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 downloadStatisticsConnection als das Skript für das Ereignis download_statistics, wenn die Skriptversion ver1 synchronisiert wird.
CALL ml_add_java_connection_script( 'ver1', 'download_statistics', 'ExamplePackage.ExampleClass.downloadStatisticsConnection' ) |
Im Folgenden sehen Sie die Java-Beispielmethode downloadStatisticsConnection. Sie gibt die Anzahl der Zeilen aus, die in das MobiLink-Nachrichtenlog geschrieben wurden. (Das Schreiben der Anzahl der abgerufenen Zeilen in das MobiLink-Nachrichtenlog ist zum Zeitpunkt der Entwicklung möglicherweise nützlich, verlangsamt aber einen Produktionsserver.)
package ExamplePackage; public class ExampleClass { String _curUser = null; public String downloadStatisticsConnection( String user, int warnings, int errors, int fetchedRows, int deletedRows, int filteredRows, int bytes ) { java.lang.System.out.println( "download connection stats fetchedRows: " + fetchedRows ); return ( null ); }} |
Der folgende Aufruf einer MobiLink-Systemprozedur registriert eine .NET-Methode namens DownloadStats als das Skript für das Verbindungsereignis download_statistics, wenn die Skriptversion ver1 synchronisiert wird.
CALL ml_add_dnet_connection_script( 'ver1', 'download_statistics', 'TestScripts.Test.DownloadStats' ) |
Im Folgenden sehen Sie die .NET-Beispielmethode DownloadStats. Sie gibt die Anzahl der Zeilen aus, die in das MobiLink-Nachrichtenlog geschrieben wurden. (Das Schreiben der Anzahl der abgerufenen Zeilen in das MobiLink-Nachrichtenlog ist zum Zeitpunkt der Entwicklung möglicherweise nützlich, verlangsamt aber einen Produktionsserver.)
namespace TestScripts { public class Test { string _curUser = null; public string DownloadStats( string user, int warnings, int errors, int deletedRows, int fetchedRows, int downloadRows, int filteredRows, int bytes ) { System.Console.WriteLine( "download connection stats fetchedRows: " + fetchedRows ); return ( null ); }}} |
![]() |
Kommentieren Sie diese Seite in DocCommentXchange.
|
Copyright © 2012, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.1 |