package diagnostics

import "github.com/influxdata/influxdb/monitor/diagnostics"

Package diagnostics provides the diagnostics type so that other packages can provide diagnostics without depending on the monitor package.

Index

Types

type Client

type Client interface {
	Diagnostics() (*Diagnostics, error)
}

Client is the interface modules implement if they register diagnostics with monitor.

type ClientFunc

type ClientFunc func() (*Diagnostics, error)

The ClientFunc type is an adapter to allow the use of ordinary functions as Diagnostics clients.

func (ClientFunc) Diagnostics

func (f ClientFunc) Diagnostics() (*Diagnostics, error)

Diagnostics calls f().

type Diagnostics

type Diagnostics struct {
	Columns []string
	Rows    [][]interface{}
}

Diagnostics represents a table of diagnostic information. The first value is the name of the columns, the second is a slice of interface slices containing the values for each column, by row. This information is never written to an InfluxDB system and is display-only. An example showing, say, connections follows:

source_ip    source_port       dest_ip     dest_port
182.1.0.2    2890              127.0.0.1   38901
174.33.1.2   2924              127.0.0.1   38902

func NewDiagnostics

func NewDiagnostics(columns []string) *Diagnostics

NewDiagnostics initialises a new Diagnostics with the specified columns.

func RowFromMap

func RowFromMap(m map[string]interface{}) *Diagnostics

RowFromMap returns a new one-row Diagnostics from a map.

func (*Diagnostics) AddRow

func (d *Diagnostics) AddRow(r []interface{})

AddRow appends the provided row to the Diagnostics' rows.

Source Files

diagnostics.go

Version
v1.12.0 (latest)
Published
Apr 8, 2025
Platform
linux/amd64
Imports
1 packages
Last checked
2 days ago

Tools for package owners.