1#pragma once
2
3#include <ext/shared_ptr_helper.h>
4#include <Storages/System/IStorageSystemOneBlock.h>
5
6
7namespace DB
8{
9
10class Context;
11
12
13/** Implements `metrics` system table, which provides information about the operation of the server.
14 */
15class StorageSystemMetrics : public ext::shared_ptr_helper<StorageSystemMetrics>, public IStorageSystemOneBlock<StorageSystemMetrics>
16{
17 friend struct ext::shared_ptr_helper<StorageSystemMetrics>;
18public:
19 std::string getName() const override { return "SystemMetrics"; }
20
21 static NamesAndTypesList getNamesAndTypes();
22
23protected:
24 using IStorageSystemOneBlock::IStorageSystemOneBlock;
25
26 void fillData(MutableColumns & res_columns, const Context & context, const SelectQueryInfo & query_info) const override;
27};
28
29}
30