Seastar
High performance C++ framework for concurrent servers
Classes | Namespaces | Typedefs | Functions
metrics_api.hh File Reference

Detailed Description

header file for metric API layer (like promehteus or collectd)

#include <seastar/core/metrics.hh>
#include <unordered_map>
#include <seastar/core/sharded.hh>
#include <boost/functional/hash.hpp>

Go to the source code of this file.

Classes

struct  std::hash< seastar::metrics::impl::labels_type >
 
class  seastar::metrics::impl::metric_id
 
struct  std::hash< seastar::metrics::impl::metric_id >
 
struct  seastar::metrics::impl::metric_family_info
 holds metadata information of a metric family More...
 
struct  seastar::metrics::impl::metric_info
 holds metric metadata More...
 
class  seastar::metrics::impl::metric_groups_impl
 
class  seastar::metrics::impl::registered_metric
 
class  seastar::metrics::impl::metric_family
 
struct  seastar::metrics::impl::metric_family_metadata
 holds a metric family metadata More...
 
struct  seastar::metrics::impl::values_copy
 
struct  seastar::metrics::impl::config
 
class  seastar::metrics::impl::impl
 

Namespaces

 seastar
 Seastar API namespace.
 
 seastar::metrics
 metrics creation and registration
 

Typedefs

using seastar::metrics::impl::labels_type = std::map< sstring, sstring >
 
using seastar::metrics::impl::metrics_registration = std::vector< metric_id >
 
using seastar::metrics::impl::register_ref = shared_ptr< registered_metric >
 
using seastar::metrics::impl::metric_instances = std::map< labels_type, register_ref >
 
using seastar::metrics::impl::value_map = std::map< sstring, metric_family >
 
using seastar::metrics::impl::metric_metadata_vector = std::vector< metric_info >
 
using seastar::metrics::impl::value_vector = std::vector< metric_value >
 
using seastar::metrics::impl::metric_metadata = std::vector< metric_family_metadata >
 
using seastar::metrics::impl::metric_values = std::vector< value_vector >
 
using seastar::metrics::impl::values_reference = shared_ptr< values_copy >
 

Functions

const value_map & seastar::metrics::impl::get_value_map ()
 
foreign_ptr< values_reference > seastar::metrics::impl::get_values ()
 
shared_ptr< impl > seastar::metrics::impl::get_local_impl ()
 
void seastar::metrics::impl::unregister_metric (const metric_id &id)
 
std::unique_ptr< metric_groups_def > seastar::metrics::impl::create_metric_groups ()
 initialize metric group More...
 
future seastar::metrics::configure (const boost::program_options::variables_map &opts)
 set the metrics configuration
 
boost::program_options::options_description seastar::metrics::get_options_description ()
 get the metrics configuration desciprtion
 

Function Documentation

◆ create_metric_groups()

std::unique_ptr<metric_groups_def> seastar::metrics::impl::create_metric_groups ( )

initialize metric group

Create a metric_group_def. No need to use it directly.