Documentation ¶
Overview ¶
Package opencensus - Provide functions for Opencensus integration
Index ¶
- Constants
- Variables
- func BackendFactory(bf proxy.BackendFactory) proxy.BackendFactory
- func CallChain(tag string, isBypass bool, url string) proxy.CallChain
- func HTTPRequestExecutor(cf transport.HTTPClientFactory) transport.HTTPRequestExecutor
- func IsBackendEnabled() bool
- func IsProxyEnabled() bool
- func IsRouterEnabled() bool
- func ProxyFactory(pf proxy.Factory) proxy.FactoryFunc
- func RegisterExporterFactories(ef ExporterFactory)
- func Setup(ctx context.Context, sConf config.ServiceConfig, vs ...*view.View) error
- type Config
- type EnabledLayers
- type ExporterFactory
Constants ¶
View Source
const ( // MWNamespace - Middleware 식별자 MWNamespace = "mw-opencensus" // ContextKey - Request trace 식별자 ContextKey = core.AppName + "-request-span" )
Variables ¶
View Source
var ( // DefaultViews - Opencensus Trace와 통합되기 위한 View들 정의 DefaultViews = []*view.View{ ochttp.ClientSentBytesDistribution, ochttp.ClientReceivedBytesDistribution, ochttp.ClientRoundtripLatencyDistribution, ochttp.ClientCompletedCount, ochttp.ServerRequestCountView, ochttp.ServerRequestBytesView, ochttp.ServerResponseBytesView, ochttp.ServerLatencyView, ochttp.ServerRequestCountByMethod, ochttp.ServerResponseCountByStatusCode, } )
Functions ¶
func BackendFactory ¶
func BackendFactory(bf proxy.BackendFactory) proxy.BackendFactory
BackendFactory - Opencensus Trace와 연동되는 Backend Call chain 구성을 위한 팩토리
func HTTPRequestExecutor ¶
func HTTPRequestExecutor(cf transport.HTTPClientFactory) transport.HTTPRequestExecutor
HTTPRequestExecutor - Backend에 대한 Trace 가 활성화된 경우에 사용할 Opencensus의 Trace 정보를 사용하는 HTTP Request Executor 반환
func ProxyFactory ¶
func ProxyFactory(pf proxy.Factory) proxy.FactoryFunc
ProxyFactory - Opencensus Trace와 연동되는 Proxy Call chain 구성을 위한 팩토리
func RegisterExporterFactories ¶
func RegisterExporterFactories(ef ExporterFactory)
RegisterExporterFactories - Opencensus Exporter 팩토리들을 등록
Types ¶
type Config ¶
type Config struct { // 샘플링 비율 (기본값: 0, no sampling, 100 이면 전수 검사) SampleRate int `yaml:"sample_rate"` // Exporter로 데이터 처리를 위한 주기 ReportingPeriod time.Duration `yaml:"reporting_period"` // 레이어별 활성화 여부 EnabledLayers *EnabledLayers `yaml:"enabled_layers"` // 데이터 처리를 위한 Exporter 설정 Exporters struct { Jaeger *struct { // Jaeger 서버의 Endpoint Endpoint string `yaml:"endpoint"` // Jaeger 서버의 식별을 위한 서비스 명 ServiceName string `yaml:"service_name"` } `yaml:"jaeger"` } `yaml:"exporters"` }
Config - Opencencus 연동을 위한 설정 구조 정의
type EnabledLayers ¶
type EnabledLayers struct { // Router 활성화 여부 Router bool `yaml:"router"` // Proxy 활성화 여부 Proxy bool `yaml:"proxy"` // Backend 활성화 여부 Backend bool `yaml:"backend"` }
EnabledLayers - Opencensus와 연동하기 위한 레이어 활성화 구조
Click to show internal directories.
Click to hide internal directories.