collector

package
v0.0.0-...-96257ef Latest Latest
Warning

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

Go to latest
Published: Nov 25, 2019 License: MIT Imports: 14 Imported by: 0

Documentation

Overview

Copyright 2018 Adobe All Rights Reserved.

NOTICE: Adobe permits you to use, modify, and distribute this file in accordance with the terms of the Adobe license agreement accompanying it. If you have received this file from a source other than Adobe, then your use, modification, or distribution of it requires the prior written permission of Adobe.

Copyright 2018 Adobe All Rights Reserved.

NOTICE: Adobe permits you to use, modify, and distribute this file in accordance with the terms of the Adobe license agreement accompanying it. If you have received this file from a source other than Adobe, then your use, modification, or distribution of it requires the prior written permission of Adobe.

Copyright 2018 Adobe All Rights Reserved.

NOTICE: Adobe permits you to use, modify, and distribute this file in accordance with the terms of the Adobe license agreement accompanying it. If you have received this file from a source other than Adobe, then your use, modification, or distribution of it requires the prior written permission of Adobe.

Copyright 2018 Adobe All Rights Reserved.

NOTICE: Adobe permits you to use, modify, and distribute this file in accordance with the terms of the Adobe license agreement accompanying it. If you have received this file from a source other than Adobe, then your use, modification, or distribution of it requires the prior written permission of Adobe.

Copyright 2018 Adobe All Rights Reserved.

NOTICE: Adobe permits you to use, modify, and distribute this file in accordance with the terms of the Adobe license agreement accompanying it. If you have received this file from a source other than Adobe, then your use, modification, or distribution of it requires the prior written permission of Adobe.

Copyright 2018 Adobe All Rights Reserved.

NOTICE: Adobe permits you to use, modify, and distribute this file in accordance with the terms of the Adobe license agreement accompanying it. If you have received this file from a source other than Adobe, then your use, modification, or distribution of it requires the prior written permission of Adobe.

Copyright 2018 Adobe All Rights Reserved.

NOTICE: Adobe permits you to use, modify, and distribute this file in accordance with the terms of the Adobe license agreement accompanying it. If you have received this file from a source other than Adobe, then your use, modification, or distribution of it requires the prior written permission of Adobe.

Copyright 2018 Adobe All Rights Reserved.

NOTICE: Adobe permits you to use, modify, and distribute this file in accordance with the terms of the Adobe license agreement accompanying it. If you have received this file from a source other than Adobe, then your use, modification, or distribution of it requires the prior written permission of Adobe.

Copyright 2018 Adobe All Rights Reserved.

NOTICE: Adobe permits you to use, modify, and distribute this file in accordance with the terms of the Adobe license agreement accompanying it. If you have received this file from a source other than Adobe, then your use, modification, or distribution of it requires the prior written permission of Adobe.

Copyright 2018 Adobe All Rights Reserved.

NOTICE: Adobe permits you to use, modify, and distribute this file in accordance with the terms of the Adobe license agreement accompanying it. If you have received this file from a source other than Adobe, then your use, modification, or distribution of it requires the prior written permission of Adobe.

Copyright 2018 Adobe All Rights Reserved.

NOTICE: Adobe permits you to use, modify, and distribute this file in accordance with the terms of the Adobe license agreement accompanying it. If you have received this file from a source other than Adobe, then your use, modification, or distribution of it requires the prior written permission of Adobe.

Copyright 2018 Adobe All Rights Reserved.

NOTICE: Adobe permits you to use, modify, and distribute this file in accordance with the terms of the Adobe license agreement accompanying it. If you have received this file from a source other than Adobe, then your use, modification, or distribution of it requires the prior written permission of Adobe.

Copyright 2018 Adobe All Rights Reserved.

NOTICE: Adobe permits you to use, modify, and distribute this file in accordance with the terms of the Adobe license agreement accompanying it. If you have received this file from a source other than Adobe, then your use, modification, or distribution of it requires the prior written permission of Adobe.

Copyright 2018 Adobe All Rights Reserved.

NOTICE: Adobe permits you to use, modify, and distribute this file in accordance with the terms of the Adobe license agreement accompanying it. If you have received this file from a source other than Adobe, then your use, modification, or distribution of it requires the prior written permission of Adobe.

Copyright 2018 Adobe All Rights Reserved.

NOTICE: Adobe permits you to use, modify, and distribute this file in accordance with the terms of the Adobe license agreement accompanying it. If you have received this file from a source other than Adobe, then your use, modification, or distribution of it requires the prior written permission of Adobe.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CreateConstLabels

func CreateConstLabels() error

CreateConstLabels will create an array of labels that are constant to all metrics.

func GetClusterConnector

func GetClusterConnector() error

GetClusterConnector calls the isiclient and creates a new isilon cluster connector.

func GetNumQuotas

func GetNumQuotas() error

GetNumQuotas retrieve the number of quotas the system should have.

func GetProtos

func GetProtos()

GetProtos creates a map of protocols to be collected.

func NewIsilonCollector

func NewIsilonCollector(fqdn string, port string, uname string, pwdenv string, site string, auth bool, qOnly bool, filters ...string) (*isilonCollector, error)

NewIsilonCollector creates a new IsilonCollector

func RoundTime

func RoundTime(input float64) int64

RoundTime - Well gotta deal with those floating point numbers somehow

func SetClusterConfigName

func SetClusterConfigName() error

SetClusterConfigName will get the name from the isi config and set it as IsilonClusterConfigName inside IsiCluster.

Types

type Collector

type Collector interface {
	// Get new metrics and expose them via prometheus registry.
	Update(ch chan<- prometheus.Metric) error
}

Collector is the interface a collector has to implement.

func NewCPUCollector

func NewCPUCollector() (Collector, error)

NewCPUCollector returns a new Collector exposing node cpu statistics.

func NewCapacityCollector

func NewCapacityCollector() (Collector, error)

NewCapacityCollector returns a new Collector exposing cluster capacity/disk space statistics.

func NewClusterHealthCollector

func NewClusterHealthCollector() (Collector, error)

NewClusterHealthCollector returns a new Collector exposing cluster health information.

func NewClusterProtoCollector

func NewClusterProtoCollector() (Collector, error)

NewClusterProtoCollector returns a new Collector exposing cluster protocol statistics.

func NewDiskCollector

func NewDiskCollector() (Collector, error)

NewDiskCollector returns a new Collector exposing node disk statistics.

func NewMemoryCollector

func NewMemoryCollector() (Collector, error)

NewMemoryCollector returns a new Collector exposing node memory statistics.

func NewNetworkCollector

func NewNetworkCollector() (Collector, error)

NewNetworkCollector returns a new Collector exposing node network statistics.

func NewNfsExportsCollector

func NewNfsExportsCollector() (Collector, error)

NewNfsExportsCollector exposed various metrics and information about nodes.

func NewNodeHealthCollector

func NewNodeHealthCollector() (Collector, error)

NewNodeHealthCollector returns a new Collector exposing node health information.

func NewNodePartitionCollector

func NewNodePartitionCollector() (Collector, error)

NewNodePartitionCollector exposed various metrics and information about nodes.

func NewNodeProtoCollector

func NewNodeProtoCollector() (Collector, error)

NewNodeProtoCollector returns a new Collector exposing Node protocol statistics.

func NewNodeStatusCollector

func NewNodeStatusCollector() (Collector, error)

NewNodeStatusCollector exposed various metrics and information about nodes.

func NewQuotaCollector

func NewQuotaCollector() (Collector, error)

NewQuotaCollector returns a new Collector exposing node health information.

func NewQuotaSummaryCollector

func NewQuotaSummaryCollector() (Collector, error)

NewQuotaSummaryCollector returns a new Collector exposing quota summary information.

func NewSmbSharesCollector

func NewSmbSharesCollector() (Collector, error)

NewSmbSharesCollector exposed various metrics and information about nodes.

func NewSnapshotsCollector

func NewSnapshotsCollector() (Collector, error)

NewSnapshotsCollector returns a new Collector exposing sync IQ policy information.

func NewStatfsCollector

func NewStatfsCollector() (Collector, error)

NewStatfsCollector exposed various metrics and information about nodes.

func NewStoragePoolsCollector

func NewStoragePoolsCollector() (Collector, error)

NewStoragePoolsCollector exposed various metrics and information about storage pools.

func NewSyncIQCollector

func NewSyncIQCollector() (Collector, error)

NewSyncIQCollector returns a new Collector exposing sync IQ policy information.

type IsilonCluster

type IsilonCluster struct {
	FQDN        string
	Name        string
	Port        string
	Username    string
	Site        string
	PasswordEnv string
	QuotaOnly   bool
	Quotas      Quotas
	Client      *goisilon.Client
}

IsilonCluster struct contains all the connection info and an instanciated client connection to the cluster.

var (
	//IsiCluster is the structure that holds all the information need to establish the connection.
	IsiCluster IsilonCluster
	//ConstLabels are constant labels that every metric will have.  This includes the label cluster.
	ConstLabels prometheus.Labels
)

type Quotas

type Quotas struct {
	Count  int64
	Errors int64
	Err    error
	Retry  int64
}

Quotas struct contains information for to quota only collections

Jump to

Keyboard shortcuts

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