cc-event-store's storage backends
Documentation of cc-event-store’s storage backends
Storage component
This component contains different backends for storing CCEvent
and CCLog
messages. The this in only a short term storage, so all backends have a notion of retention time to delete older entries.
Backends
Each backend uses it’s own configuration file entries. Check the backend-specific page for more information.
1 - Storage backend for Postgres
Toplevel postgresStorage
Storage backend for Postgres
Configuration
{
"type" : "postgres",
"server": "127.0.0.1",
"port": 5432,
"database_path" : "database_name",
"flags" : [
"open_flag=X"
],
"username" : "myuser",
"password" : "mypass",
"connection_timeout" : 1
}
type
: Has to be postgres
server
: IP or name of server (default localhost
)port
: Port number of server (default 5432
)database_path
: The backed connects to this databaseflags
: Flags when opening Postgres. For things like connect settings (sslmode=verify-full
)username
: If given, the database is opened with the given usernamepassword
: If given and username
is also given, use it to open the databaseconnection_timeout
: Timeout for connection in seconds (default 1
)
Storage
The Postgres backend stores CCEvents
and CCLog
messages in distict tables named <cluster>_events
and <cluster>_logs
respecively. It does not make use of distinct tables to hold specific and returning parts of CCEvents
and CCLog
messages (namely hostname
tag, type
tag and typeid
tag). The timestamps of the messages are stored as UNIX timestamps with precision in seconds.
2 - Storage backend for SQLite3
Toplevel sqliteStorage
Storage backend for SQLite3
Configuration
{
"type" : "sqlite",
"database_path" : "/path/for/databases",
"flags" : [
"open_flag=X"
],
"username" : "myuser",
"password" : "mypass"
}
type
: Has to be sqlite
database_path
: The backed creates tables based on the cluster names in this pathflags
: Flags when opening SQLite. For things like timeouts (_timeout=5000
), storage settings (_journal=WAL
), …username
: If given, the database is opened with the given usernamepassword
: If given and username
is also given, use it to open the database
Storage
The Sqlite backend stores CCEvents
and CCLog
messages in distict tables named <cluster>_events
and <cluster>_logs
respecively. It does not make use of distinct tables to hold specific and returning parts of CCEvents
and CCLog
messages (namely hostname
tag, type
tag and typeid
tag). The timestamps of the messages are stored as UNIX timestamps with precision in seconds.