Logging
This guide assumes familiarity with:
- Quick start with Waddler - read here
To enable default query logging, just pass { logger: true }
to the waddler
initialization function:
import { waddler } from 'waddler/...'; // driver specific
const db = waddler({ logger: true });
You can also create a custom logger:
import { Logger } from 'waddler';
import { waddler } from 'waddler/...'; // driver specific
class MyLogger implements Logger {
logQuery(query: string, params: unknown[]): void {
console.log({ query, params });
}
}
const db = waddler({ logger: new MyLogger() });
metadata
duckdb-neo
// metadata type
type metadataType = {
get returnType(): ResultReturnType;
get statementType(): StatementType;
get columnCount(): number;
get rowsChanged(): number;
}
// where ResultReturnType is
enum ResultType {
INVALID = 0,
CHANGED_ROWS = 1,
NOTHING = 2,
QUERY_RESULT = 3,
}
// and StatementType is
enum StatementType {
INVALID = 0,
SELECT = 1,
INSERT = 2,
UPDATE = 3,
EXPLAIN = 4,
DELETE = 5,
PREPARE = 6,
CREATE = 7,
EXECUTE = 8,
ALTER = 9,
TRANSACTION = 10,
COPY = 11,
ANALYZE = 12,
VARIABLE_SET = 13,
CREATE_FUNC = 14,
DROP = 15,
EXPORT = 16,
PRAGMA = 17,
VACUUM = 18,
CALL = 19,
SET = 20,
LOAD = 21,
RELATION = 22,
EXTENSION = 23,
LOGICAL_PLAN = 24,
ATTACH = 25,
DETACH = 26,
MULTI = 27,
}
// metadata example
{ columnCount: 1, returnType: 3, rowsChanged: 0, statementType: 1 }