Skip to content

ntcsteve/instrumentGolangWithNR

Repository files navigation

New Relic Experimental header

DevRel Workshop - Golang Instrumentation with New Relic

New Relic for Go monitors your Go language applications and microservices to help you identify and solve performance issues. You can also use your data to improve your customers' experience and make data-driven business decisions.

In this DevRel workshop, you learn how to instrument Golang apps with New Relic. Go is a compiled language, will require manual instrumentation, and doesn’t use a virtual machine. The best way to monitor Go applications is to use the Go API, and get started with the official page from New Relic for Golang in GitHub.

With New Relic for Go, you will gain a new level of visibility into your Golang applications:

See the big picture:

  • Monitor the throughput, response times, and errors of the transactions in your applications and services.
  • Understand your application's runtime health by seeing memory usage, garbage collection behavior, and CPU usage over time.
  • With deployment markers, see how code changes impact application performance and health.
  • Use infrastructure monitoring to view detailed host and server data.
  • Use distributed tracing to understand how your services and microservices are interacting.

Identify and fix errors:

  • Find bottlenecks by seeing time spent on database calls, external system calls, and key blocks of code.
  • View Goroutine counts and identify possible Goroutine leaks.
  • Get alerts for problems or errors before they affect users.
  • Create custom dashboards for important metrics.

View logs for your APM and infrastructure data:

You can bring your logs and application's data together to make troubleshooting easier and faster. No need to switch to another UI page.

  • With logs in context, you can see log messages related to your errors and traces directly in your app's UI.
  • You can also see logs in context of your infrastructure data, such as Kubernetes clusters.

Analyze business data:

  • Query user-related data and improve business processes.
  • Create custom queries of your Go application data.
  • Send your own custom data to New Relic.
  • Create and share visual, interactive displays of your data.

What do you need to make this work?

New Relic One Account

Free access to all of New Relic. No credit card required. Sign Up for Free.

Getting Started

Follow the instructions as described here on how to create your first Ingest api key.

DevRel Workshop - Golang Instrumentation with New Relic

This is the main code used in the hands on workshop that is conducted by DevRel New Relic. The sample code is available for your own reference.


Support

The code is part of New Relic experimental. The project is being developed in the open and we welcome all feedback and contributions.

Contributing

We encourage your contributions to improve DevRel Workshop - Golang Instrumentation with New Relic! Keep in mind when you submit your pull request, you'll need to sign the CLA via the click-through using CLA-Assistant. You only have to sign the CLA one time per project.

If you have any questions, or to execute our corporate CLA, required if your contribution is on behalf of a company, please drop us an email at opensource@newrelic.com.

A note about vulnerabilities

As noted in our security policy, New Relic is committed to the privacy and security of our customers and their data. We believe that providing coordinated disclosure by security researchers and engaging with the security community are important means to achieve our security goals.

If you believe you have found a security vulnerability in this project or any of New Relic's products or websites, we welcome and greatly appreciate you reporting it to New Relic through HackerOne.

License

DevRel Workshop - Golang Instrumentation with New Relic is licensed under the Apache 2.0 License.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages