SQLite
 sql >> Datenbank >  >> RDS >> SQLite

Abfragezeit in SQLite auf Android protokollieren

Sqlite für Android hat dafür eine eingebaute Unterstützung.

Von hier:

/**
 * Controls the printing of wall-clock time taken to execute SQL statements
 * as they are executed.
 *
 * Enable using "adb shell setprop log.tag.SQLiteTime VERBOSE".
 */
public static final boolean DEBUG_SQL_TIME =
        Log.isLoggable("SQLiteTime", Log.VERBOSE);

Um die Ablaufverfolgung der Ausführungszeit zu aktivieren, führen Sie daher Folgendes aus:

adb shell setprop log.tag.SQLiteTime VERBOSE

Sie müssen Ihre Anwendung neu starten, um neue Einstellungen neu zu laden**. Unmittelbar danach sehen Sie diese Protokolleinträge in logcat:

02-14 12:27:00.457 11936-12137/osom.info.dbtest I/Database:elapsedTime4Sql|/data/data/osom.info.dbtest/databases/test.db|1.000ms|UPDATE TestTable SET key=? WO _id=1

** Manchmal wird dies nicht ausreichen, also führen Sie adb shell stop aus und adb shell start .

Um das Drucken dieser Protokolle zu stoppen, starten Sie entweder das Gerät neu (diese Eigenschaft wird zwischen Neustarts nicht beibehalten) oder setzen Sie die Eigenschaft auf eine höhere Protokollebene, d. h.:

adb shell setprop log.tag.SQLiteTime ERROR