DBCollector

DBCollector use SessionManager for config the db engine and create sessions.

class duetector.collectors.db.DBCollector(config: dict[str, Any] | None = None, *args, **kwargs)[source]

Bases: Collector

A collector using database, sqlite by default.

Every tracker will create a table in database, see SessionManager.get_tracking_model

Config:
  • db: A SessionManager config

_emit(t: Tracking)[source]

Emit a tracking to collector, should be implemented by subclasses

default_config = {'backend_args': {'max_workers': 10}, 'db': {'engine': {'url': 'sqlite:///duetector-dbcollector.sqlite3'}, 'table_prefix': 'duetector_tracking'}, 'disabled': False, 'statis_id': ''}

Default config for Collector

summary() dict[source]

Get summary of current collector, should be implemented by subclasses