Documentation
¶
Overview ¶
Package instance provides the functions required to manage the life-cycle of a Beat. It provides the standard mechanism for launching a Beat. It manages configuration, logging, and publisher initialization and registers a signal handler to gracefully stop the process.
Each Beat implementation must implement the `Beater` interface and a `Creator` to create and initialize the Beater instance. See the `Beater` interface and `Creator` documentation for more details.
To use this package, create a simple main that invokes the Run() function.
func main() { if err := beat.Run("mybeat", myVersion, beater.New); err != nil { os.Exit(1) } }
In the example above, the beater package contains the implementation of the Beater interface and the New method returns a new instance of Beater. The Beater implementation is placed into its own package so that it can be reused or combined with other Beats.
Recommendations
- Use the logp package for logging rather than writing to stdout or stderr.
- Do not call os.Exit in any of your code. Return an error instead. Or if your code needs to exit without an error, return beat.GracefulExit.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Run ¶
Run initializes and runs a Beater implementation. name is the name of the Beat (e.g. packetbeat or metricbeat). version is version number of the Beater implementation. bt is the `Creator` callback for creating a new beater instance. XXX Move this as a *Beat method?
Types ¶
type Beat ¶
type Beat struct { beat.Beat Config beatConfig RawConfig *common.Config // Raw config that can be unpacked to get Beat specific config data. // contains filtered or unexported fields }
Beat provides the runnable and configurable instance of a beat.
func NewBeat ¶
NewBeat creates a new beat instance
func (*Beat) BeatConfig ¶
BeatConfig returns config section for this beat
func (*Beat) Init ¶
init does initialization of things common to all actions (read confs, flags)
func (*Beat) Keystore ¶
Keystore return the configured keystore for this beat
func (*Beat) Setup ¶
Setup registers ES index template and kibana dashboards
Source Files
¶
- beat.go
- doc.go
- metrics.go
- setup.go