common

package
v0.0.0-...-8b43ef2 Latest Latest
Warning

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

Go to latest
Published: Feb 3, 2014 License: Apache-2.0, BSD-2-Clause-Views, BSD-3-Clause, + 1 more Imports: 14 Imported by: 0

Documentation

Index

Constants

View Source
const RefreshInterval time.Duration = time.Second * 1

Variables

This section is empty.

Functions

func GenerateUUID

func GenerateUUID() string

func GrabEphemeralPort

func GrabEphemeralPort() (port uint16, err error)

func LocalIP

func LocalIP() (string, error)

func Register

func Register(c *VcapComponent, mbusClient yagnats.NATSClient)

func StartComponent

func StartComponent(c *VcapComponent)

Types

type Duration

type Duration time.Duration

func (Duration) MarshalJSON

func (d Duration) MarshalJSON() ([]byte, error)

func (*Duration) UnmarshalJSON

func (d *Duration) UnmarshalJSON(b []byte) error

type GenericVarz

type GenericVarz struct {
	// Static common metrics
	NumCores int `json:"num_cores"`

	// Dynamic common metrics
	MemStat int64   `json:"mem"`
	Cpu     float64 `json:"cpu"`

	Uptime    Duration    `json:"uptime"`
	LogCounts *LogCounter `json:"log_counts"`
}

type Healthz

type Healthz struct {
	LockableObject Lockable
}

func UpdateHealthz

func UpdateHealthz() *Healthz

func (*Healthz) Value

func (v *Healthz) Value() string

type Lockable

type Lockable interface {
	Lock()
	Unlock()
}

type LogCounter

type LogCounter struct {
	sync.Mutex
	// contains filtered or unexported fields
}

func NewLogCounter

func NewLogCounter() *LogCounter

func (*LogCounter) AddRecord

func (lc *LogCounter) AddRecord(record *steno.Record)

func (*LogCounter) Flush

func (lc *LogCounter) Flush()

func (*LogCounter) GetCodec

func (lc *LogCounter) GetCodec() steno.Codec

func (*LogCounter) GetCount

func (lc *LogCounter) GetCount(key string) int

func (*LogCounter) MarshalJSON

func (lc *LogCounter) MarshalJSON() ([]byte, error)

func (*LogCounter) SetCodec

func (lc *LogCounter) SetCodec(codec steno.Codec)

type ProcessStatus

type ProcessStatus struct {
	sync.Mutex

	CpuUsage float64
	MemRss   int64
	// contains filtered or unexported fields
}

func NewProcessStatus

func NewProcessStatus() *ProcessStatus

func (*ProcessStatus) StopUpdate

func (p *ProcessStatus) StopUpdate()

func (*ProcessStatus) Update

func (p *ProcessStatus) Update()

type RouterStart

type RouterStart struct {
	Id                               string   `json:"id"`
	Hosts                            []string `json:"hosts"`
	MinimumRegisterIntervalInSeconds int      `json:"minimumRegisterIntervalInSeconds"`
}

type Time

type Time time.Time

func (Time) Elapsed

func (t Time) Elapsed() Duration

func (Time) MarshalJSON

func (t Time) MarshalJSON() ([]byte, error)

func (*Time) UnmarshalJSON

func (t *Time) UnmarshalJSON(b []byte) error

type Varz

type Varz struct {
	sync.Mutex
	GenericVarz
	UniqueVarz interface{} // Every component's unique metrics
}

func UpdateVarz

func UpdateVarz() *Varz

func (*Varz) MarshalJSON

func (v *Varz) MarshalJSON() ([]byte, error)

type VcapComponent

type VcapComponent struct {
	// These fields are from individual components
	Type        string                    `json:"type"`
	Index       uint                      `json:"index"`
	Host        string                    `json:"host"`
	Credentials []string                  `json:"credentials"`
	Config      interface{}               `json:"config"`
	Varz        *Varz                     `json:"-"`
	Healthz     *Healthz                  `json:"-"`
	InfoRoutes  map[string]json.Marshaler `json:"-"`
	Logger      *steno.Logger             `json:"-"`

	// These fields are automatically generated
	UUID   string   `json:"uuid"`
	Start  Time     `json:"start"`
	Uptime Duration `json:"uptime"`
}
var Component VcapComponent

func (*VcapComponent) ListenAndServe

func (c *VcapComponent) ListenAndServe()

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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