Verfolgt die statistischen Zeitdaten nach Benutzern und Ereignissen.
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 verwenden. Siehe SQL-Java-Datentypen und SQL-.NET-Datentypen.
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 unten gezeigten Reihenfolge stehen und sind nur dann optional, wenn keine nachfolgenden Parameter angegeben wurden. (Sie müssen beispielsweise 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. |
1 |
s.event_name |
VARCHAR(128). Das Ereignis, dessen Statistik protokolliert wird. |
2 |
s.number_of_calls |
INTEGER. Gibt an, wie häufig das Skript aufgerufen wurde. |
3 |
s.minimum_time |
INTEGER. ms. Die kürzeste Zeit, die zum Ausführen eines Skripts während dieser Synchronisation benötigt wird. |
4 |
s.maximum_time |
INTEGER. ms. Die längste Zeit, die zum Ausführen eines Skripts während dieser Synchronisation benötigt wird. |
5 |
s.total_time |
INTEGER. ms. Die Gesamtzeit, die zum Ausführen aller Skripten während der Synchronisation benötigt wird. (Dies ist nicht identisch mit der Länge/Dauer der Synchronisation.) |
6 |
s.script_version | VARCHAR(128). Optionaler IN-Parameter, mit dem angegeben wird, dass der MobiLink-Server die bei der aktuellen Synchronisation verwendete Skriptversionszeichenfolge an diesen Parameter übergibt. Fragezeichen können nicht verwendet werden, um diesen Parameter anzugeben. | Nicht anwendbar |
Keine.
Mit dem Ereignis time_statistics können Sie statistische Zeitdaten für eine Synchronisation sammeln. Die statistischen Daten werden nur für die Ereignisse gesammelt, für die es entsprechende Skripten gibt. Mit dem Skript werden in Fällen, in denen ein Einzelereignis mehrmals eintritt, Aggregatdaten gesammelt.
Das folgende Beispiel fügt statistische Informationen in die Tabelle time_statistics ein.
CALL ml_add_connection_script( 'ver1', 'time_statistics', 'INSERT INTO time_statistics ( id, ml_user, event_name, number_of_calls, minimum_time, maximum_time, total_time) VALUES ( ts_id.nextval, {ml s.username}, {ml s.event_name}, {ml s.number_of_calls}, {ml s.minimum_time}, {ml s.maximum_time}, {ml s.total_time} ) ' ) |
Der folgende Aufruf einer MobiLink-Systemprozedur registriert eine Java-Methode namens timeStatisticsConnection als das Skript für das Verbindungsereignis time_statistics, wenn die Skriptversion ver1 synchronisiert wird.
CALL ml_add_java_connection_script( 'ver1', 'time_statistics', 'ExamplePackage.ExampleClass.timeStatisticsConnection' ) |
Im Folgenden sehen Sie die Java-Beispielmethode timeStatisticsConnection. Sie gibt Statistiken für das Ereignis prepare_for_download aus. (Das Ausgeben von Statistiken im MobiLink-Meldungslog ist während der Entwicklung möglicherweise nützlich, verlangsamt aber einen Produktionsserver.)
package ExamplePackage; public class ExampleClass { public void timeStatisticsConnection( String username, String eventName, int numberOfCalls, int minimumTime, int maximumTime, int totalTime ) { if( eventName.equals( "prepare_for_download") ) { System.out.println( "prepare_for_download num_calls: " + numberOfCalls + " total_time: " + totalTime ); } } } |
Der folgende Aufruf einer MobiLink-Systemprozedur registriert eine .NET-Methode namens TimeStats als das Skript für das Verbindungsereignis time_statistics, wenn die Skriptversion ver1 synchronisiert wird.
CALL ml_add_dnet_connection_script( 'ver1', 'time_statistics', 'TestScripts.Test.TimeStats' ) |
Im Folgenden sehen Sie die .NET-Beispielmethode TimeStats. Sie gibt Statistiken für das Ereignis prepare_for_download aus. (Das Ausgeben von Statistiken im MobiLink-Meldungslog ist während der Entwicklung möglicherweise nützlich, verlangsamt aber einen Produktionsserver.)
namespace TestScripts { public class test { public void TimeStats( string user, string eventName, int numberOfCalls, int minimumTime, int maximumTime, int totTime ) { if( eventName == "prepare_for_download" ) { System.Console.WriteLine( "prepare_for_download num_calls: " + numberOfCalls + "total_time: " + totTime ); } } } } |
![]() |
Kommentieren Sie diese Seite in DocCommentXchange.
|
Copyright © 2013, SAP AG oder ein SAP-Konzernunternehmen. - SAP Sybase SQL Anywhere 16.0 |