exporter

package
v0.0.0-...-ffe1965 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 28, 2023 License: MIT Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (

	// Prom metrics
	NETDISCO_API_STATUS = promauto.NewGauge(prometheus.GaugeOpts{
		Name: "NETDISCO_API_STATUS",
		Help: "Netdisco API status",
	})

	NETDISCO_LAST_DISCOVER = promauto.NewGaugeVec(prometheus.GaugeOpts{
		Name: "NETDISCO_LAST_DISCOVER",
		Help: "Netdisco last discover",
	},
		[]string{"hostname"},
	)

	NETDISCO_LAST_ARPNIP = promauto.NewGaugeVec(prometheus.GaugeOpts{
		Name: "NETDISCO_LAST_ARPNIP",
		Help: "Netdisco last arpnip",
	},
		[]string{"hostname"},
	)

	NETDISCO_LAST_MACSUCK = promauto.NewGaugeVec(prometheus.GaugeOpts{
		Name: "NETDISCO_LAST_MACSUCK",
		Help: "Netdisco last macsuck",
	},
		[]string{"hostname"},
	)
)

Functions

func ApiStatus

func ApiStatus()

Check API Status

func Login

func Login() string

Login to netdisco API to retrieve API key for subsequent requests

func Logout

func Logout(ApiKey string)

Logout to netdisco API - Destroy user API Key and session cookie

func PollingMetrics

func PollingMetrics(ApiKey string)

Gather device polling data

Types

type Device

type Device []struct {
	Location          string      `json:"location"`
	LastMacsuckStamp  interface{} `json:"last_macsuck_stamp"`
	DNS               string      `json:"dns"`
	Model             string      `json:"model"`
	SinceLastArpnip   float64     `json:"since_last_arpnip"`
	UptimeAge         string      `json:"uptime_age"`
	FirstSeenStamp    string      `json:"first_seen_stamp"`
	LastArpnipStamp   string      `json:"last_arpnip_stamp"`
	SinceLastMacsuck  float64     `json:"since_last_macsuck"`
	Serial            string      `json:"serial"`
	LastDiscoverStamp string      `json:"last_discover_stamp"`
	SinceFirstSeen    float64     `json:"since_first_seen"`
	Name              string      `json:"name"`
	ChassisID         string      `json:"chassis_id"`
	IP                string      `json:"ip"`
	OsVer             string      `json:"os_ver"`
	SinceLastDiscover float64     `json:"since_last_discover"`
}

Data from API path /api/v1/search/device

type Key

type Key struct {
	Data string `json:"api_key"`
}

Struct containing API key

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL