Documentation ¶
Index ¶
- Constants
- Variables
- func AppendCHAttr(b []byte, attr tql.Attr) []byte
- func AppendCHColumn(b []byte, expr *tql.Column, dur time.Duration) ([]byte, error)
- func AppendCHExpr(b []byte, expr tql.Expr, dur time.Duration) ([]byte, error)
- func AppendFilter(filter tql.Filter, dur time.Duration) ([]byte, error)
- func AppendWhereHaving(ast *tql.Where, dur time.Duration) ([]byte, []byte, error)
- func BuildSpanIndexQuery(db *ch.DB, f *SpanFilter, dur time.Duration) (*ch.SelectQuery, *orderedmap.OrderedMap[string, *ColumnInfo])
- func DecodeSpanFilter(req bunrouter.Request, f *SpanFilter) error
- func Init(ctx context.Context, app *bunapp.App)
- func IsIndexedAttr(attrKey string) bool
- func NewSpanIndexQuery(db *ch.DB) *ch.SelectQuery
- func SelectAttrKeys(ctx context.Context, app *bunapp.App, f *SpanFilter) ([]string, error)
- func SelectSpan(ctx context.Context, app *bunapp.App, span *Span) error
- func SplitTypeSystem(s string) (string, string)
- type AttrHandler
- type AttrKeyItem
- type AttrMap
- func (m AttrMap) Clone() AttrMap
- func (m AttrMap) Delete(key string)
- func (m AttrMap) Duration(key string) time.Duration
- func (m AttrMap) Exists(key string) bool
- func (m AttrMap) Get(key string) (any, bool)
- func (m AttrMap) GetAsLCString(key string) string
- func (m AttrMap) GetString(key string) string
- func (m AttrMap) HostName() string
- func (m AttrMap) Int64(key string) int64
- func (m AttrMap) Merge(other AttrMap)
- func (m AttrMap) PutString(key, val string)
- func (m AttrMap) ServiceName() string
- func (m AttrMap) ServiceNameOrUnknown() string
- func (m AttrMap) SetClashingKeys(key string, value any)
- func (m AttrMap) SetDefault(key string, value any)
- func (m AttrMap) Text(key string) string
- func (m AttrMap) Time(key string) time.Time
- func (m AttrMap) Uint64(key string) uint64
- type AttrName
- type AttrValueItem
- type CloudwatchLog
- type CloudwatchLogEvent
- type ColumnInfo
- type EdgeType
- type GroupHandler
- type Int64OrString
- type KinesisEvent
- type KinesisEventRecord
- type KinesisHandler
- type LogsServiceServer
- type PublicHandler
- type PublicSpan
- type PublicSpanFilter
- type SavedView
- type SavedViewDetails
- type SavedViewHandler
- func (h *SavedViewHandler) Create(w http.ResponseWriter, req bunrouter.Request) error
- func (h *SavedViewHandler) Delete(w http.ResponseWriter, req bunrouter.Request) error
- func (h *SavedViewHandler) List(w http.ResponseWriter, req bunrouter.Request) error
- func (h *SavedViewHandler) Pin(w http.ResponseWriter, req bunrouter.Request) error
- func (h *SavedViewHandler) Unpin(w http.ResponseWriter, req bunrouter.Request) error
- type SentryBreadcrumb
- type SentryEnvelopeHeader
- type SentryEvent
- type SentryException
- type SentryFrame
- type SentryHandler
- type SentryItemHeader
- type SentryMechanism
- type SentryPackage
- type SentryRequest
- type SentrySpan
- type SentryStacktrace
- type SentryThread
- type SentryTime
- type ServiceGraphEdge
- type ServiceGraphEdgeKey
- type ServiceGraphEdgeNode
- type ServiceGraphHandler
- type ServiceGraphLink
- type ServiceGraphProcessor
- type ServiceGraphStats
- type ServiceGraphStore
- type Span
- func (s *Span) AddChild(child *Span)
- func (s *Span) AddEvent(event *SpanEvent)
- func (s *Span) EndTime() time.Time
- func (s *Span) Event() *SpanEvent
- func (s *Span) EventOrSpanName() string
- func (s *Span) IsError() bool
- func (s *Span) IsEvent() bool
- func (s *Span) TreeEndTime() time.Time
- func (s *Span) TreeStartEndTime() (time.Time, time.Time)
- func (s *Span) UpdateDurationSelf(child *Span, prevEndTime time.Time)
- func (s *Span) Walk(fn func(child, parent *Span) error) error
- type SpanData
- type SpanEvent
- type SpanFilter
- type SpanHandler
- func (h *SpanHandler) GroupStats(w http.ResponseWriter, req bunrouter.Request) error
- func (h *SpanHandler) ListGroups(w http.ResponseWriter, req bunrouter.Request) error
- func (h *SpanHandler) ListSpans(w http.ResponseWriter, req bunrouter.Request) error
- func (h *SpanHandler) Percentiles(w http.ResponseWriter, req bunrouter.Request) error
- func (h *SpanHandler) Timeseries(w http.ResponseWriter, req bunrouter.Request) error
- type SpanIndex
- type SpanLink
- type SpanProcessor
- type SystemHandler
- type TraceHandler
- type TraceInfo
- type TraceServiceServer
- type TypeFilter
- type VectorHandler
- type ZipkinAnnotation
- type ZipkinEndpoint
- type ZipkinHandler
- type ZipkinSpan
Constants ¶
View Source
const ( SpanTypeFuncs = "funcs" SpanTypeHTTPServer = "httpserver" SpanTypeHTTPClient = "httpclient" SpanTypeDB = "db" SpanTypeRPC = "rpc" SpanTypeMessaging = "messaging" SpanTypeFAAS = "faas" EventTypeLog = "log" EventTypeMessage = "message" EventTypeOther = "other-events" )
View Source
const ( SystemUnknown = "unknown" SystemAll = "all" SystemEventsAll = "events:all" SystemSpansAll = "spans:all" SystemLogAll = "log:all" SystemLogError = "log:error" SystemLogFatal = "log:fatal" SystemLogPanic = "log:panic" )
View Source
const ( StatusCodeUnset = "unset" StatusCodeError = "error" StatusCodeOK = "ok" )
View Source
const ( SpanKindInternal = "internal" SpanKindServer = "server" SpanKindClient = "client" SpanKindProducer = "producer" SpanKindConsumer = "consumer" )
View Source
const ( InternalSpanKind = "internal" ServerSpanKind = "server" ClientSpanKind = "client" ProducerSpanKind = "producer" ConsumerSpanKind = "consumer" )
View Source
const ( OKStatusCode = "ok" ErrorStatusCode = "error" )
Variables ¶
View Source
var ( EventTypes = []string{EventTypeMessage, EventTypeOther} LogAndEventTypes = []string{EventTypeLog, EventTypeMessage, EventTypeOther} ErrorTypes = []string{EventTypeLog} ErrorSystems = []string{SystemLogError, SystemLogFatal, SystemLogPanic} )
Functions ¶
func AppendCHColumn ¶
func AppendWhereHaving ¶
func BuildSpanIndexQuery ¶ added in v1.7.0
func BuildSpanIndexQuery( db *ch.DB, f *SpanFilter, dur time.Duration, ) (*ch.SelectQuery, *orderedmap.OrderedMap[string, *ColumnInfo])
func DecodeSpanFilter ¶
func DecodeSpanFilter(req bunrouter.Request, f *SpanFilter) error
func IsIndexedAttr ¶
func NewSpanIndexQuery ¶
func NewSpanIndexQuery(db *ch.DB) *ch.SelectQuery
func SelectAttrKeys ¶ added in v1.7.0
func SplitTypeSystem ¶
Types ¶
type AttrHandler ¶
func NewAttrHandler ¶
func NewAttrHandler(app *bunapp.App) *AttrHandler
func (*AttrHandler) AttrKeys ¶
func (h *AttrHandler) AttrKeys(w http.ResponseWriter, req bunrouter.Request) error
func (*AttrHandler) AttrValues ¶
func (h *AttrHandler) AttrValues(w http.ResponseWriter, req bunrouter.Request) error
type AttrKeyItem ¶
type AttrMap ¶
func (AttrMap) GetAsLCString ¶ added in v1.7.2
func (AttrMap) ServiceName ¶
func (AttrMap) ServiceNameOrUnknown ¶
func (AttrMap) SetClashingKeys ¶
func (AttrMap) SetDefault ¶
type AttrValueItem ¶
type AttrValueItem struct { Value string `json:"value"` Count uint64 `json:"count"` Hint string `json:"hint"` }
func SelectAttrValues ¶ added in v1.7.0
func SelectAttrValues( ctx context.Context, app *bunapp.App, f *SpanFilter, attrKey string, ) ([]*AttrValueItem, bool, error)
type CloudwatchLog ¶
type CloudwatchLogEvent ¶
type ColumnInfo ¶
type GroupHandler ¶
func NewGroupHandler ¶
func NewGroupHandler(app *bunapp.App) *GroupHandler
func (*GroupHandler) ShowSummary ¶
func (h *GroupHandler) ShowSummary(w http.ResponseWriter, req bunrouter.Request) error
type Int64OrString ¶
type Int64OrString int64
func (*Int64OrString) UnmarshalJSON ¶
func (n *Int64OrString) UnmarshalJSON(b []byte) error
type KinesisEvent ¶
type KinesisEvent struct { RequestID string `json:"requestId"` Records []KinesisEventRecord `json:"records"` }
type KinesisEventRecord ¶
type KinesisEventRecord struct {
Data []byte `json:"data"`
}
type KinesisHandler ¶
func NewKinesisHandler ¶
func NewKinesisHandler(app *bunapp.App, sp *SpanProcessor) *KinesisHandler
func (*KinesisHandler) Logs ¶
func (h *KinesisHandler) Logs(w http.ResponseWriter, req bunrouter.Request) error
type LogsServiceServer ¶
type LogsServiceServer struct { collectorlogspb.UnimplementedLogsServiceServer *bunapp.App // contains filtered or unexported fields }
func NewLogsServiceServer ¶
func NewLogsServiceServer(app *bunapp.App, sp *SpanProcessor) *LogsServiceServer
func (*LogsServiceServer) Export ¶
func (s *LogsServiceServer) Export( ctx context.Context, req *collectorlogspb.ExportLogsServiceRequest, ) (*collectorlogspb.ExportLogsServiceResponse, error)
func (*LogsServiceServer) ExportHTTP ¶
func (s *LogsServiceServer) ExportHTTP(w http.ResponseWriter, req bunrouter.Request) error
type PublicHandler ¶ added in v1.7.0
func NewPublicHandler ¶ added in v1.7.0
func NewPublicHandler(app *bunapp.App) *PublicHandler
func (*PublicHandler) Groups ¶ added in v1.7.0
func (h *PublicHandler) Groups(w http.ResponseWriter, req bunrouter.Request) error
func (*PublicHandler) Spans ¶ added in v1.7.0
func (h *PublicHandler) Spans(w http.ResponseWriter, req bunrouter.Request) error
type PublicSpan ¶ added in v1.7.0
type PublicSpan struct { ID idgen.SpanID `json:"id"` ParentID idgen.SpanID `json:"parentId"` TraceID idgen.TraceID `json:"traceId"` Standalone bool `json:"standalone,omitempty"` Type string `json:"type"` System string `json:"system"` Operation string `json:"-"` GroupID uint64 `json:"groupId,string"` Kind string `json:"kind"` Name string `json:"name"` EventName string `json:"eventName,omitempty"` DisplayName string `json:"displayName"` Time time.Time `json:"time"` Duration int64 `json:"duration"` StatusCode string `json:"statusCode"` StatusMessage string `json:"statusMessage,omitempty"` Attrs AttrMap `json:"attrs"` Events []*SpanEvent `json:"events"` Links []*SpanLink `json:"links"` }
type PublicSpanFilter ¶ added in v1.7.0
type SavedView ¶
type SavedView struct { bun.BaseModel `bun:"saved_views,alias:v"` ID uint64 `json:"id" bun:",pk,autoincrement"` UserID uint64 `json:"userId"` ProjectID uint32 `json:"projectId"` Name string `json:"name"` Route string `json:"route"` Params map[string]any `json:"params"` Query map[string]any `json:"query"` Pinned bool `json:"pinned"` CreatedAt time.Time `json:"createdAt" bun:",nullzero,notnull,default:now()"` }
type SavedViewDetails ¶
type SavedViewHandler ¶
func NewSavedViewHandler ¶
func NewSavedViewHandler(app *bunapp.App) *SavedViewHandler
func (*SavedViewHandler) Create ¶
func (h *SavedViewHandler) Create(w http.ResponseWriter, req bunrouter.Request) error
func (*SavedViewHandler) Delete ¶
func (h *SavedViewHandler) Delete(w http.ResponseWriter, req bunrouter.Request) error
func (*SavedViewHandler) List ¶
func (h *SavedViewHandler) List(w http.ResponseWriter, req bunrouter.Request) error
func (*SavedViewHandler) Pin ¶
func (h *SavedViewHandler) Pin(w http.ResponseWriter, req bunrouter.Request) error
func (*SavedViewHandler) Unpin ¶
func (h *SavedViewHandler) Unpin(w http.ResponseWriter, req bunrouter.Request) error
type SentryBreadcrumb ¶
type SentryEnvelopeHeader ¶
type SentryEnvelopeHeader struct {
DSN string `json:"dsn"`
}
type SentryEvent ¶
type SentryEvent struct { Breadcrumbs json.RawMessage `json:"breadcrumbs"` Contexts map[string]map[string]any `json:"contexts"` Dist string `json:"dist"` Environment string `json:"environment"` EventID string `json:"event_id"` Extra map[string]any `json:"extra"` Fingerprint []string `json:"fingerprint"` Level string `json:"level"` Message string `json:"message"` Platform string `json:"platform"` Release string `json:"release"` SDK struct { Name string `json:"name"` Version string `json:"version"` Integrations []string `json:"integrations"` Packages []SentryPackage `json:"packages"` } `json:"sdk"` ServerName string `json:"server_name"` Threads []SentryThread `json:"threads"` Tags map[string]string `json:"tags"` Timestamp SentryTime `json:"timestamp"` Transaction string `json:"transaction"` User struct { ID string `json:"id"` Email string `json:"email"` IPAddress string `json:"ip_address"` Username string `json:"username"` Name string `json:"name"` Segment string `json:"segment"` Data map[string]string `json:"data"` } `json:"user"` Logger string `json:"logger"` Modules map[string]string `json:"modules"` Request *SentryRequest `json:"request"` Exception json.RawMessage `json:"exception"` Type string `json:"type"` StartTime SentryTime `json:"start_timestamp"` Spans []SentrySpan `json:"spans"` TransactionInfo struct { Source string `json:"source"` } `json:"transaction_info"` }
type SentryException ¶
type SentryException struct { Type string `json:"type"` // used as the main issue title Value string `json:"value"` // used as the main issue subtitle Module string `json:"module"` ThreadID string `json:"thread_id"` Stacktrace *SentryStacktrace `json:"stacktrace"` Mechanism *SentryMechanism `json:"mechanism"` }
type SentryFrame ¶
type SentryFrame struct { Function string `json:"function"` Symbol string `json:"symbol"` // Module is, despite the name, the Sentry protocol equivalent of a Go // package's import path. Module string `json:"module"` Filename string `json:"filename"` AbsPath string `json:"abs_path"` Lineno int `json:"lineno"` Colno int `json:"colno"` PreContext []string `json:"pre_context"` ContextLine string `json:"context_line"` PostContext []string `json:"post_context"` InApp bool `json:"in_app"` Vars map[string]any `json:"vars"` // Package and the below are not used for Go stack trace frames. In // other platforms it refers to a container where the Module can be // found. For example, a Java JAR, a .NET Assembly, or a native // dynamic library. They exists for completeness, allowing the // construction and reporting of custom event payloads. Package string `json:"package"` InstructionAddr string `json:"instruction_addr"` AddrMode string `json:"addr_mode"` SymbolAddr string `json:"symbol_addr"` ImageAddr string `json:"image_addr"` Platform string `json:"platform"` StackStart bool `json:"stack_start"` }
func (*SentryFrame) AppendString ¶
func (f *SentryFrame) AppendString(b []byte) []byte
type SentryHandler ¶
func NewSentryHandler ¶
func NewSentryHandler(app *bunapp.App, sp *SpanProcessor) *SentryHandler
func (*SentryHandler) Envelope ¶
func (h *SentryHandler) Envelope(w http.ResponseWriter, req bunrouter.Request) error
func (*SentryHandler) Store ¶
func (h *SentryHandler) Store(w http.ResponseWriter, req bunrouter.Request) error
type SentryItemHeader ¶
type SentryMechanism ¶
type SentryPackage ¶
type SentryRequest ¶
type SentrySpan ¶
type SentrySpan struct { TraceID string `json:"trace_id"` SpanID string `json:"span_id"` ParentSpanID string `json:"parent_span_id"` Name string `json:"name"` Op string `json:"op"` Description string `json:"description"` Status uint8 `json:"status"` Tags map[string]string `json:"tags"` StartTime SentryTime `json:"start_timestamp"` EndTime SentryTime `json:"timestamp"` Data map[string]any `json:"data"` }
type SentryStacktrace ¶
type SentryStacktrace struct { Frames []SentryFrame `json:"frames"` FramesOmitted []uint `json:"frames_omitted"` }
func (*SentryStacktrace) String ¶
func (s *SentryStacktrace) String() string
type SentryThread ¶
type SentryThread struct { ID string `json:"id"` Name string `json:"name"` Stacktrace *SentryStacktrace `json:"stacktrace"` Crashed bool `json:"crashed"` Current bool `json:"current"` }
type SentryTime ¶
func (*SentryTime) UnmarshalJSON ¶
func (t *SentryTime) UnmarshalJSON(b []byte) error
type ServiceGraphEdge ¶
type ServiceGraphEdge struct { ch.CHModel `ch:"service_graph_edges,insert:service_graph_edges_buffer,alias:e"` ProjectID uint32 Type EdgeType Time time.Time `ch:"type:DateTime"` ClientName string `ch:",lc"` ServerName string `ch:",lc"` ServerAttr string `ch:",lc"` DeploymentEnvironment string `ch:",lc"` ServiceNamespace string `ch:",lc"` ClientDurationMin float32 ClientDurationMax float32 ClientDurationSum float32 ServerDurationMin float32 ServerDurationMax float32 ServerDurationSum float32 Count uint32 ErrorCount uint32 }
func (*ServiceGraphEdge) SetClientDuration ¶
func (e *ServiceGraphEdge) SetClientDuration(span *SpanIndex)
func (*ServiceGraphEdge) SetServerDuration ¶
func (e *ServiceGraphEdge) SetServerDuration(span *SpanIndex)
type ServiceGraphEdgeKey ¶
type ServiceGraphEdgeNode ¶
type ServiceGraphEdgeNode struct { ServiceGraphEdge // contains filtered or unexported fields }
func (*ServiceGraphEdgeNode) Expired ¶
func (e *ServiceGraphEdgeNode) Expired() bool
func (*ServiceGraphEdgeNode) IsComplete ¶
func (e *ServiceGraphEdgeNode) IsComplete() bool
type ServiceGraphHandler ¶
func NewServiceGraphHandler ¶
func NewServiceGraphHandler(app *bunapp.App) *ServiceGraphHandler
func (*ServiceGraphHandler) List ¶
func (h *ServiceGraphHandler) List(w http.ResponseWriter, req bunrouter.Request) error
type ServiceGraphLink ¶
type ServiceGraphLink struct { Type string `json:"type"` ClientName string `json:"clientName"` ServerName string `json:"serverName"` ServerAttr string `json:"serverAttr"` ServiceGraphStats }
type ServiceGraphProcessor ¶
type ServiceGraphProcessor struct {
// contains filtered or unexported fields
}
func NewServiceGraphProcessor ¶
func NewServiceGraphProcessor(app *bunapp.App) *ServiceGraphProcessor
func (*ServiceGraphProcessor) ProcessSpan ¶
func (p *ServiceGraphProcessor) ProcessSpan( ctx context.Context, span *SpanIndex, ) error
type ServiceGraphStats ¶
type ServiceGraphStats struct { DurationMin float32 `json:"durationMin"` DurationMax float32 `json:"durationMax"` DurationSum float64 `json:"durationSum"` DurationAvg float64 `json:"durationAvg"` Count uint64 `json:"count"` Rate float64 `json:"rate"` ErrorCount uint64 `json:"errorCount"` ErrorRate float64 `json:"errorRate"` }
type ServiceGraphStore ¶
type ServiceGraphStore struct {
// contains filtered or unexported fields
}
func NewServiceGraphStore ¶
func NewServiceGraphStore( size int, ttl time.Duration, onComplete func(ctx context.Context, edge *ServiceGraphEdge), onExpired func(ctx context.Context, edge *ServiceGraphEdge), ) *ServiceGraphStore
func (*ServiceGraphStore) WithEdge ¶
func (s *ServiceGraphStore) WithEdge( ctx context.Context, key ServiceGraphEdgeKey, update func(edge *ServiceGraphEdge), ) (isNew bool, err error)
type Span ¶
type Span struct { ID idgen.SpanID `json:"id" msgpack:"-" ch:"id"` ParentID idgen.SpanID `json:"parentId,omitempty" msgpack:"-"` TraceID idgen.TraceID `json:"traceId" msgpack:"-" ch:"type:UUID"` Standalone bool `json:"standalone,omitempty" ch:"-"` ProjectID uint32 `json:"projectId" msgpack:"-"` Type string `json:"-" msgpack:"-" ch:",lc"` System string `json:"system" ch:",lc"` GroupID uint64 `json:"groupId,string"` Kind string `json:"kind" ch:",lc"` Name string `json:"name" ch:",lc"` EventName string `json:"eventName,omitempty" ch:",lc"` DisplayName string `json:"displayName"` Time time.Time `json:"time" msgpack:"-"` Duration time.Duration `json:"duration"` DurationSelf time.Duration `json:"durationSelf" msgpack:"-" ch:"-"` StartPct float32 `json:"startPct" msgpack:"-" ch:"-"` EndPct float32 `json:"endPct" msgpack:"-" ch:"-"` StatusCode string `json:"statusCode" ch:",lc"` StatusMessage string `json:"statusMessage"` Attrs AttrMap `json:"attrs" ch:"-"` Events []*SpanEvent `json:"events,omitempty" ch:"-"` Links []*SpanLink `json:"links,omitempty" ch:"-"` Children []*Span `json:"children,omitempty" msgpack:"-" ch:"-"` // contains filtered or unexported fields }
func SelectTraceSpans ¶
func (*Span) EventOrSpanName ¶
func (*Span) TreeEndTime ¶
func (*Span) UpdateDurationSelf ¶
type SpanData ¶
type SpanFilter ¶
type SpanFilter struct { org.OrderByMixin urlstruct.Pager TypeFilter Query string Search string SearchTokens []chquery.Token `urlstruct:"-"` Column []string AttrKey string SearchInput string QueryParts []*tql.QueryPart `urlstruct:"-"` }
func (*SpanFilter) UnmarshalValues ¶
type SpanHandler ¶
func NewSpanHandler ¶
func NewSpanHandler(app *bunapp.App) *SpanHandler
func (*SpanHandler) GroupStats ¶
func (h *SpanHandler) GroupStats(w http.ResponseWriter, req bunrouter.Request) error
func (*SpanHandler) ListGroups ¶
func (h *SpanHandler) ListGroups(w http.ResponseWriter, req bunrouter.Request) error
func (*SpanHandler) ListSpans ¶
func (h *SpanHandler) ListSpans(w http.ResponseWriter, req bunrouter.Request) error
func (*SpanHandler) Percentiles ¶
func (h *SpanHandler) Percentiles(w http.ResponseWriter, req bunrouter.Request) error
func (*SpanHandler) Timeseries ¶
func (h *SpanHandler) Timeseries(w http.ResponseWriter, req bunrouter.Request) error
type SpanIndex ¶
type SpanIndex struct { ch.CHModel `ch:"table:spans_index,insert:spans_index_buffer,alias:s"` *Span DisplayName string Count float32 LinkCount uint8 EventCount uint8 EventErrorCount uint8 EventLogCount uint8 AllKeys []string `ch:"type:Array(LowCardinality(String))"` StringKeys []string `ch:"type:Array(LowCardinality(String))"` StringValues []string TelemetrySDKName string `ch:",lc"` TelemetrySDKLanguage string `ch:",lc"` TelemetrySDKVersion string `ch:",lc"` TelemetryAutoVersion string `ch:",lc"` OtelLibraryName string `ch:",lc"` OtelLibraryVersion string `ch:",lc"` DeploymentEnvironment string `ch:",lc"` ServiceName string `ch:",lc"` ServiceVersion string `ch:",lc"` ServiceNamespace string `ch:",lc"` HostName string `ch:",lc"` ClientAddress string `ch:",lc"` ClientSocketAddress string `ch:",lc"` ClientSocketPort int32 URLScheme string `attr:"url.scheme" ch:",lc"` URLFull string `attr:"url.full"` URLPath string `attr:"url.path" ch:",lc"` HTTPRequestMethod string `ch:",lc"` HTTPResponseStatusCode uint16 HTTPRoute string `ch:",lc"` RPCMethod string `ch:",lc"` RPCService string `ch:",lc"` DBSystem string `ch:",lc"` DBName string `ch:",lc"` DBStatement string DBOperation string `ch:",lc"` DBSqlTable string `ch:",lc"` LogSeverity string `ch:",lc"` ExceptionType string `ch:",lc"` }
type SpanProcessor ¶
func NewSpanProcessor ¶
func NewSpanProcessor(app *bunapp.App) *SpanProcessor
type SystemHandler ¶
func NewSystemHandler ¶
func NewSystemHandler(app *bunapp.App) *SystemHandler
func (*SystemHandler) ListSystems ¶
func (h *SystemHandler) ListSystems(w http.ResponseWriter, req bunrouter.Request) error
type TraceHandler ¶
func NewTraceHandler ¶
func NewTraceHandler(app *bunapp.App) *TraceHandler
func (*TraceHandler) FindTrace ¶
func (h *TraceHandler) FindTrace(w http.ResponseWriter, req bunrouter.Request) error
func (*TraceHandler) ShowSpan ¶
func (h *TraceHandler) ShowSpan(w http.ResponseWriter, req bunrouter.Request) error
func (*TraceHandler) ShowTrace ¶
func (h *TraceHandler) ShowTrace(w http.ResponseWriter, req bunrouter.Request) error
type TraceInfo ¶
type TraceInfo struct { ID idgen.TraceID `json:"id"` Time time.Time `json:"time"` Duration time.Duration `json:"duration"` }
func NewTraceInfo ¶
type TraceServiceServer ¶
type TraceServiceServer struct { collectortrace.UnimplementedTraceServiceServer *bunapp.App // contains filtered or unexported fields }
func NewTraceServiceServer ¶
func NewTraceServiceServer(app *bunapp.App, sp *SpanProcessor) *TraceServiceServer
func (*TraceServiceServer) Export ¶
func (s *TraceServiceServer) Export( ctx context.Context, req *collectortrace.ExportTraceServiceRequest, ) (*collectortrace.ExportTraceServiceResponse, error)
func (*TraceServiceServer) ExportHTTP ¶
func (s *TraceServiceServer) ExportHTTP(w http.ResponseWriter, req bunrouter.Request) error
type TypeFilter ¶ added in v1.7.0
type TypeFilter struct { org.TimeFilter ProjectID uint32 System []string GroupID uint64 }
func DecodeTypeFilter ¶ added in v1.7.0
func (*TypeFilter) UnmarshalValues ¶ added in v1.7.0
type VectorHandler ¶
func NewVectorHandler ¶
func NewVectorHandler(app *bunapp.App, sp *SpanProcessor) *VectorHandler
func (*VectorHandler) Create ¶
func (h *VectorHandler) Create(w http.ResponseWriter, req bunrouter.Request) error
type ZipkinAnnotation ¶
type ZipkinEndpoint ¶
type ZipkinHandler ¶
func NewZipkinHandler ¶
func NewZipkinHandler(app *bunapp.App, sp *SpanProcessor) *ZipkinHandler
func (*ZipkinHandler) PostSpans ¶
func (h *ZipkinHandler) PostSpans(w http.ResponseWriter, req bunrouter.Request) error
type ZipkinSpan ¶
type ZipkinSpan struct { ID string `json:"id"` ParentID string `json:"parentId"` TraceID string `json:"traceId"` Name string `json:"name"` Timestamp Int64OrString `json:"timestamp"` Duration Int64OrString `json:"duration"` Kind string `json:"kind"` LocalEndpoint ZipkinEndpoint `json:"localEndpoint"` RemoteEndpoint ZipkinEndpoint `json:"remoteEndpoint"` Tags AttrMap `json:"tags"` Annotations []ZipkinAnnotation `json:"annotations"` }
Source Files ¶
- attr_handler.go
- attr_map.go
- cloudwatch_handler.go
- const.go
- group_handler.go
- init.go
- otlp.go
- otlp_logs.go
- otlp_trace.go
- public_handler.go
- saved_view.go
- saved_view_handler.go
- sentry_handler.go
- service_graph.go
- service_graph_handler.go
- span.go
- span_attrs.go
- span_data.go
- span_filter.go
- span_handler.go
- span_index.go
- span_processor.go
- span_query.go
- system_handler.go
- trace_handler.go
- type_filter.go
- util.go
- vector_handler.go
- zipkin_handler.go
Click to show internal directories.
Click to hide internal directories.