Documentation
¶
Overview ¶
Package server serves the embedded web dashboard and canonical analytics API.
Index ¶
- Constants
- func Listen(host string, port int) (net.Listener, error)
- func NewDataHandler(ctx context.Context, store DataSource, log io.Writer, ...) http.Handler
- func NewDataHandlerWithOptions(ctx context.Context, store DataSource, log io.Writer, ...) http.Handler
- func NewPersonalDataHandler(ctx context.Context, store DataSource, log io.Writer, host, instance string, ...) http.Handler
- func ValidateHost(host string) error
- type DataHandlerOptions
- type DataSource
- type DirectQuery
- func (d *DirectQuery) AllUsage(ctx context.Context, params api.GetUsageParams, maxRows int) (api.UsageResponseV2, error)
- func (d *DirectQuery) Facets(ctx context.Context, params api.GetUsageFacetsParams) (api.UsageFacetsResponseV2, error)
- func (d *DirectQuery) Instance(ctx context.Context) (api.InstanceResponseV2, error)
- func (d *DirectQuery) Status(ctx context.Context) (api.StatusResponseV2, error)
- func (d *DirectQuery) Usage(ctx context.Context, params api.GetUsageParams) (api.UsageResponseV2, error)
- type Options
- type ProcessUsage
- type Row
Constants ¶
const DefaultHost = networkprefs.DefaultHost
const DefaultPort = networkprefs.DefaultPort
Variables ¶
This section is empty.
Functions ¶
func NewDataHandler ¶ added in v0.1.5
func NewDataHandler(ctx context.Context, store DataSource, log io.Writer, bindHost, instance string, allowIngestion bool) http.Handler
Local compositions expose writes only through their private control socket.
func NewDataHandlerWithOptions ¶ added in v0.1.5
func NewDataHandlerWithOptions(ctx context.Context, store DataSource, log io.Writer, options DataHandlerOptions) http.Handler
func NewPersonalDataHandler ¶ added in v0.1.5
func NewPersonalDataHandler(ctx context.Context, store DataSource, log io.Writer, host, instance string, progress *collectorprogress.Registry) http.Handler
func ValidateHost ¶
Types ¶
type DataHandlerOptions ¶ added in v0.1.5
type DataHandlerOptions struct {
Host, InstanceID, Hostname string
AllowIngestion bool
Policy serverfeatures.Policy
Accounts *accounts.Service
PublicURL string
Progress *collectorprogress.Registry
ProcessUsage ProcessUsage
}
type DataSource ¶ added in v0.1.5
type DataSource interface {
Kind() string
Receiver(datasetID string) evidence.Receiver
Queries(datasetID string) analytics.Repository
}
DataSource binds storage ports to an authenticated dataset. Composition selects the adapter once; HTTP never opens databases or selects a backend from a request. Receiver and Queries must use the same database/dataset identity. Scoping never creates a dataset or falls back to another dataset when it is absent.
type DirectQuery ¶ added in v0.1.5
type DirectQuery struct {
// contains filtered or unexported fields
}
DirectQuery adapts the same query validation, analytics and presentation used by REST without constructing HTTP requests or opening a listener.
func NewDirectQuery ¶ added in v0.1.5
func NewDirectQuery(source analytics.Repository, instance, hostname string) *DirectQuery
func (*DirectQuery) AllUsage ¶ added in v0.1.5
func (d *DirectQuery) AllUsage(ctx context.Context, params api.GetUsageParams, maxRows int) (api.UsageResponseV2, error)
AllUsage is composed for local viewers only; REST retains bounded pages.
func (*DirectQuery) Facets ¶ added in v0.1.5
func (d *DirectQuery) Facets(ctx context.Context, params api.GetUsageFacetsParams) (api.UsageFacetsResponseV2, error)
func (*DirectQuery) Instance ¶ added in v0.1.5
func (d *DirectQuery) Instance(ctx context.Context) (api.InstanceResponseV2, error)
func (*DirectQuery) Status ¶ added in v0.1.5
func (d *DirectQuery) Status(ctx context.Context) (api.StatusResponseV2, error)
func (*DirectQuery) Usage ¶ added in v0.1.5
func (d *DirectQuery) Usage(ctx context.Context, params api.GetUsageParams) (api.UsageResponseV2, error)
type ProcessUsage ¶ added in v0.1.5
type ProcessUsage interface {
Snapshot(context.Context) processusage.Sample
}
ProcessUsage samples the command-owned process; missing measurements remain unknown.