16#ifndef QGSDBQUERYLOG_H
17#define QGSDBQUERYLOG_H
99 static QAtomicInt sQueryId;
201 static bool sEnabled;
210class QgsDatabaseQueryLogWrapper
213 QgsDatabaseQueryLogWrapper(
const QString &query,
const QString &uri,
const QString &provider,
const QString &initiatorClass,
const QString &origin )
217 mEntry.origin = origin;
218 mEntry.initiatorClass = initiatorClass;
219 mEntry.provider = provider;
225 void setFetchedRows(
long long fetchedRows ) { mEntry.fetchedRows = fetchedRows; }
227 void setQuery(
const QString &query ) { mEntry.query = query; }
229 void setError(
const QString &error ) { mEntry.error = error; }
231 void setCanceled() { mEntry.canceled =
true; }
234 QgsDatabaseQueryLogEntry mEntry;
Encapsulates a logged database query.
quint64 finishedTime
Time when the query finished (in milliseconds since epoch), if available.
long long fetchedRows
Number of fetched/affected rows.
QString query
The logged database query (e.g. the SQL query).
QString provider
Provider key.
QString initiatorClass
The QGIS class which initiated the query.
QString origin
Code file location for the query origin.
quint64 startedTime
Time when the query started (in milliseconds since epoch).
bool canceled
Canceled flag for user canceled queries.
int queryId
Unique query ID.
QgsDatabaseQueryLogEntry(const QString &query=QString())
Constructor for QgsDatabaseQueryLogEntry.
QString error
Error reported by the provider, normally blank.
static void log(const QgsDatabaseQueryLogEntry &query)
Logs a database query as starting.
static bool enabled()
Returns true if logging is enabled.
static void setEnabled(bool enabled)
Enables query logging.
void queryFinished(const QgsDatabaseQueryLogEntry &query)
Emitted whenever a database query has finished executing.
static void finished(const QgsDatabaseQueryLogEntry &query)
Records that the database query has finished.
void queryStarted(const QgsDatabaseQueryLogEntry &query)
Emitted whenever a database query is started.
QgsDatabaseQueryLog(QObject *parent=nullptr)
Creates a new query log.
Q_DECLARE_METATYPE(QgsDatabaseQueryLogEntry)