Skip to content
Open source monitoring tool for ephemeral infrastructure & distributed applications.
Go Other
  1. Go 99.8%
  2. Other 0.2%
Branch: master
Clone or download
amdprophet sensuctl assets installed via Bonsai should have a namespace set (#3504)
Signed-off-by: Justin Kolberg <amd.prophet@gmail.com>
Latest commit 0ef79de Jan 17, 2020
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci Update CHANGELOG for 5.16 (#3457) Dec 11, 2019
.github Add an issue template for epics (#3419) Nov 25, 2019
agent Custom handlers for keepalive events (#3507) Jan 17, 2020
api/core/v2 Custom handlers for keepalive events (#3507) Jan 17, 2020
asset Upgrade mholt/archiver (#3508) Jan 16, 2020
backend Custom handlers for keepalive events (#3507) Jan 17, 2020
bonsai sensuctl commands support (#3274) Nov 14, 2019
cli sensuctl assets installed via Bonsai should have a namespace set (#3504) Jan 17, 2020
cmd Exit status 3 when backend already initialized (#3464) Dec 12, 2019
command Agent command execution segfault bugfix (#3217) Aug 19, 2019
dashboard [Web] Update embedded web assets to 95afbfb (#3497) Jan 13, 2020
docker-scripts kill agent.sh and backend.sh in docker image Jul 31, 2017
graphql [GraphQL] Allow queries to skip validation (#3379) Nov 14, 2019
handler Use contexts for cancellation (#2827) Mar 25, 2019
js Fix entity_attributes matching (#3089) Jun 25, 2019
licenses Replace govaluate filtering with javascript filtering. (#2336) Nov 14, 2018
rpc Metadata and more naming changes (#2308) Nov 13, 2018
scripts Fix a bug where typemap gen broke on Go 1.12 (#2965) May 17, 2019
system Record GOARM value at build time (#3206) Aug 15, 2019
testing sensuctl commands support (#3274) Nov 14, 2019
transport Protobuf serialization/deserialization (#3152) Jul 19, 2019
types Remove use of jsoniter in wrapper serialization (#3461) Dec 11, 2019
util Add JSON niceties for retry.ExponentialBackoff (#3493) Jan 16, 2020
version No longer use build.sh to build binaries (#3328) Oct 9, 2019
.appveyor.yml Update CHANGELOG for 5.16 (#3457) Dec 11, 2019
.editorconfig add some test types Jan 11, 2018
.gitattributes
.gitignore Asymmetric JWTs (#3345) Oct 22, 2019
CHANGELOG.md sensuctl assets installed via Bonsai should have a namespace set (#3504) Jan 17, 2020
CODE_OF_CONDUCT.md
CONTRIBUTING.md Remove duplicated instructions in CONTRIBUTING.md (#3403) Nov 19, 2019
DCO [dco] added dco file, auto-fill-mode wrap readme content Dec 8, 2017
FAQ.md Replace FAQ contents with a link to official FAQ (#2655) Jan 31, 2019
LICENSE [license] removed .txt from license file, github convention Sep 28, 2017
README.md Remove duplicated instructions in CONTRIBUTING.md (#3403) Nov 19, 2019
build.ps1 No longer use build.sh to build binaries (#3328) Oct 9, 2019
build.sh No longer use build.sh to build binaries (#3328) Oct 9, 2019
docker-compose.yaml Perf optimization for calculating the total number of resources in th… Dec 17, 2019
go.mod Upgrade mholt/archiver (#3508) Jan 16, 2020
go.sum Upgrade mholt/archiver (#3508) Jan 16, 2020

README.md

Sensu Go

CircleCI: CircleCI Build Status

Sensu is an open source monitoring tool for ephemeral infrastructure and distributed applications. It is an agent based monitoring system with built-in auto-discovery, making it very well-suited for cloud environments. Sensu uses service checks to monitor service health and collect telemetry data. It also has a number of well defined APIs for configuration, external data input, and to provide access to Sensu's data. Sensu is extremely extensible and is commonly referred to as "the monitoring router".

To learn more about Sensu, please visit the website and read the documentation.

What is Sensu Go?

Sensu Go is a complete rewrite of Sensu in Go, with new capabilities and reduced operational overhead. It eliminates several sources of friction for new and experienced Sensu users.

The original Sensu required external services like Redis or RabbitMQ. Sensu Go can rely on an embedded etcd datastore for persistence, making the product easier to get started with. External etcd services can also be used, in the event that you already have them deployed.

Sensu Go replaces Ruby expressions with JavaScript filter expressions, by embedding a JavaScript interpreter.

Unlike the original Sensu, Sensu Go events are always handled, unless explicitly filtered.

Installation

Sensu Go installer packages are available for a number of computing platforms (e.g. Debian/Ubuntu, RHEL/Centos, etc), but the easiest way to get started is with the official Docker image, sensu/sensu.

See the installation documentation to get started.

Building from source

The various components of Sensu Go can be manually built from this repository. You will first need Go 1.13.3 installed. Then, you should clone this repository outside of the GOPATH since Sensu Go uses Go Modules:

$ git clone https://github.com/sensu/sensu-go.git
$ cd sensu-go

To compile and then run Sensu Go within a single step:

$ go run ./cmd/sensu-agent
$ go run ./cmd/sensu-backend
$ go run ./cmd/sensuctl

To build Sensu Go binaries and save them into the bin/ directory:

$ go build -o bin/sensu-agent ./cmd/sensu-agent
$ go build -o bin/sensu-backend ./cmd/sensu-backend
$ go build -o bin/sensuctl ./cmd/sensuctl

To build Sensu Go binaries with the version information:

# sensu-agent
$ go build -ldflags '-X "github.com/sensu/sensu-go/version.Version=5.14.0" -X "github.com/sensu/sensu-go/version.BuildDate=2019-10-08" -X "github.com/sensu/sensu-go/version.BuildSHA='`git rev-parse HEAD`'"' -o bin/sensu-agent ./cmd/sensu-agent

# sensu-backend
$ go build -ldflags '-X "github.com/sensu/sensu-go/version.Version=5.14.0" -X "github.com/sensu/sensu-go/version.BuildDate=2019-10-08" -X "github.com/sensu/sensu-go/version.BuildSHA='`git rev-parse HEAD`'"' -o bin/sensu-backend ./cmd/sensu-backend

# sensuctl
$ go build -ldflags '-X "github.com/sensu/sensu-go/version.Version=5.14.0" -X "github.com/sensu/sensu-go/version.BuildDate=2019-10-08" -X "github.com/sensu/sensu-go/version.BuildSHA='`git rev-parse HEAD`'"' -o bin/sensuctl ./cmd/sensuctl

Contributing

For guidelines on how to contribute to this project, how to hack on Sensu, and information about what we require from project contributors, please see CONTRIBUTING.md.

Sensu is and always will be open source, and we continue to highly value community contribution. The packages we’re releasing for new versions are from our Enterprise repo; Sensu Go is the upstream for Sensu Enterprise (as they’d say in the Go community: Sensu Go is vendored into the Sensu Enterprise Go repo). We encourage you to download new versions, as the functionality will be identical to what you find in the public repo, and access to the enterprise-only features can be unlocked with a license key. Because these releases are in our Enterprise repo, there may be times that you don’t see the actual work being done on an issue you open, but that doesn’t mean we’re not working on it! Our team is committed to updating progress on open issues in the sensu-go repo, even if that work is being done in our Enterprise repo.

You can’t perform that action at this time.