Для интеграции APM-агента в Go-приложение выполните следующие шаги:
Установите пакет агента с помощью команды go get:
go get github.com/newrelic/go-agent/v3/newrelicДобавьте следующий импорт в код вашего приложения:
import "github.com/newrelic/go-agent/v3/newrelic"Инициализируйте агент в функции main() или в блоке init() вашего приложения:
app, err := newrelic.NewApplication(
newrelic.ConfigAppName("MY_AWESOME_APP"), // название вашего приложения
newrelic.ConfigLicense("0123456789-123456789-123456789-123456789"), // заглушка, не изменять
newrelic.ConfigHost("gmonit-collector.<DOMAIN>.ru"), // адрес коллектора GMONIT
)
if err != nil {
log.Fatal(err)
}Используйте метод newrelic.WrapHandleFunc для автоматической инструментализации HTTP-хендлеров:
http.HandleFunc(newrelic.WrapHandleFunc(app, "/users", usersHandler))Для других транзакций используйте ручную инструментализацию:
txn := app.StartTransaction("название транзакции")
defer txn.End()Соберите и запустите ваше Go-приложение:
go build -o myapp ./...
./myappПосле запуска приложения убедитесь, что агент успешно подключился:
- Проверьте логи вашего приложения на наличие сообщений о подключении агента.
- В интерфейсе мониторинга GMONIT появятся метрики вашего приложения.
Для дополнительной информации по настройке агента ознакомьтесь с официальной документацией New Relic.