Skip to content

system.metric_log table #6363

@alexey-milovidov

Description

@alexey-milovidov

If this system table is enabled in configuration, launch a thread that will wakeup with specified period (once a second by default) and insert a row with current values of ProfileEvents, CurrentMetrics and AsynchronousMetrics to SystemLog.

Try to align wakeup time to every period of wall clock time (to avoid time drift due to time spend in this thread). Time points can be lost if the system is overloaded.

It should allow to specify period less than a second. You can use milliseconds for period to avoid floating point values. (Note that microseconds are non-practical.)

The table will have the following columns:

event_date Date
event_time DateTime
milliseconds UInt32 -- useful for the case when period is less than a second

ProfileEvent_* UInt64 -- a column for every ProfileEvent
CurrentMetric_* Int64 -- a column for every CurrentMetrics
AsynchronousMetrics_* Float64 -- a column for every AsynchronousMetrics. Note that values will repeat for many consecutive rows.

The table will have huge number of columns - that's Ok.

Metadata

Metadata

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions