Documentation
¶
Index ¶
- Constants
- type Metrics
- type OracleMetricsImpl
- func (m *OracleMetricsImpl) AddProviderCountForMarket(market string, count int)
- func (m *OracleMetricsImpl) AddProviderTick(providerName, pairID string, success bool)
- func (m *OracleMetricsImpl) AddTick()
- func (m *OracleMetricsImpl) AddTickerTick(ticker string)
- func (m *OracleMetricsImpl) SetSlinkyBuildInfo()
- func (m *OracleMetricsImpl) UpdateAggregatePrice(pairID string, decimals uint64, price float64)
- func (m *OracleMetricsImpl) UpdatePrice(providerName, pairID string, decimals uint64, price float64)
Constants ¶
const ( // ProviderLabel is a label for the provider name. ProviderLabel = "provider" // PairIDLabel is the currency pair for which the metric applies. PairIDLabel = "id" // DecimalsLabel is the number of decimal points associated with the price. DecimalsLabel = "decimals" // OracleSubsystem is a subsystem shared by all metrics exposed by this package. OracleSubsystem = "side_car" // SuccessLabel is a label for a successful operation. SuccessLabel = "success" // Version is a label for the Slinky version. Version = "version" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Metrics ¶
type Metrics interface { // AddTick increments the number of ticks, this can represent a liveness counter. This // is incremented once every interval (which is defined by the oracle config). AddTick() // AddTickerTick increments the number of ticks for a given ticker. Specifically, this // is used to track the number of times a ticker was updated. AddTickerTick(ticker string) // UpdatePrice price updates the price for the given pairID for the provider. UpdatePrice(name, pairID string, decimals uint64, price float64) // UpdateAggregatePrice updates the aggregated price for the given pairID. UpdateAggregatePrice(pairID string, decimals uint64, price float64) // AddProviderTick increments the number of ticks for a given provider. Specifically, // this is used to track the number of times a provider included a price update that // was used in the aggregation. AddProviderTick(providerName, pairID string, success bool) // AddProviderCountForMarket increments the number of providers that were utilized // to calculate the final price for a given market. AddProviderCountForMarket(market string, count int) // SetSlinkyBuildInfo sets the build information for the Slinky binary. SetSlinkyBuildInfo() }
Metrics is an interface that defines the API for oracle metrics.
func NewMetrics ¶
func NewMetrics() Metrics
NewMetrics returns a Metrics implementation that exposes metrics to Prometheus.
func NewMetricsFromConfig ¶
func NewMetricsFromConfig(config config.MetricsConfig) Metrics
NewMetricsFromConfig returns an oracle Metrics implementation based on the provided config.
func NewNopMetrics ¶
func NewNopMetrics() Metrics
NewNopMetrics returns a Metrics implementation that does nothing.
type OracleMetricsImpl ¶
type OracleMetricsImpl struct {
// contains filtered or unexported fields
}
OracleMetricsImpl is a Metrics implementation that does nothing.
func (*OracleMetricsImpl) AddProviderCountForMarket ¶
func (m *OracleMetricsImpl) AddProviderCountForMarket(market string, count int)
AddProviderCountForMarket increments the number of providers that were utilized to calculate the final price for a given market.
func (*OracleMetricsImpl) AddProviderTick ¶
func (m *OracleMetricsImpl) AddProviderTick(providerName, pairID string, success bool)
AddProviderTick increments the number of ticks for a given provider. Specifically, this is used to track the number of times a provider included a price update that was used in the aggregation.
func (*OracleMetricsImpl) AddTick ¶
func (m *OracleMetricsImpl) AddTick()
AddTick increments the total number of ticks that have been processed by the oracle.
func (*OracleMetricsImpl) AddTickerTick ¶
func (m *OracleMetricsImpl) AddTickerTick(ticker string)
AddTickerTick increments the number of ticks for a given ticker. Specifically, this is used to track the number of times a ticker was updated.
func (*OracleMetricsImpl) SetSlinkyBuildInfo ¶
func (m *OracleMetricsImpl) SetSlinkyBuildInfo()
SetSlinkyBuildInfo sets the build information for the Slinky binary. The version exported is determined by the build time version in accordance with the build pkg.
func (*OracleMetricsImpl) UpdateAggregatePrice ¶
func (m *OracleMetricsImpl) UpdateAggregatePrice( pairID string, decimals uint64, price float64, )
UpdateAggregatePrice updates the aggregated price for the given pairID.
func (*OracleMetricsImpl) UpdatePrice ¶
func (m *OracleMetricsImpl) UpdatePrice( providerName, pairID string, decimals uint64, price float64, )
UpdatePrice price updates the price for the given pairID for the provider.