/go-newrelic

Please see https://github.com/newrelic/newrelic-client-go

Primary LanguageGoApache License 2.0Apache-2.0

This is now archived, please see https://github.com/newrelic/newrelic-client-go

go-newrelic

Build Status Go Report Card GoDoc Release

go-newrelic is a Go SDK for communicating with New Relic APIs.

Installation

Use go get to install go-newrelic.

$ go get -u github.com/paultyng/go-newrelic

Usage

import "github.com/paultyng/go-newrelic/v4/api"	// with go modules enabled (GO111MODULE=on or outside GOPATH)
import "github.com/paultyng/go-newrelic/api" // with go modules disabled

Construct a new New Relic client, then use the various methods on the client to access different parts of the New Relic V2 REST API. For example:

config := newrelic.Config{
	APIKey: "<NEWRELIC_API_KEY>",
}

client := newrelic.New(config)
apps, err := client.ListApplications()

Infrastructure Alert Conditions

Infrastructure Alert Conditions are backed by the New Relic Infrastructure API, and require the use of the InfraClient type:

config := newrelic.Config{
	APIKey: "<NEWRELIC_API_KEY>",
}

client := newrelic.NewInfraClient(config)
apps, err := client.ListAlertInfraConditions(policyId)

The GoDoc link below details the available client options and the full list of available client methods.

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Validate all linting / tests pass.
  5. Push to the Branch (git push origin feature/AmazingFeature)
  6. Open a Pull Request

Running tests

# Use make to run all validations / tests
make

# Just run tests
make test

Releasing

When cutting a new release, remember to update the Version in api/version.go to match the new tag.

License

Apache-2.0