Raygun Application Performance Monitoring
Rails Profiler for Raygun Application Performance Monitoring.
Distributed as a Rails wrapper to inject the precompiled native profiler gem.
Supported platforms
-
x86-mingw32
-
x64-mingw32
-
x86-linux
-
x86_64-linux
-
universal-darwin
Contact us to support other platforms.
Supported Ruby versions
The profiler only supports CRuby, also known as Matz’s Ruby Interpreter (MRI).
-
2.4.x (End of life upstream release that does not receive backports anymore)
-
2.5.x
-
2.6.x
-
2.7.x (Preview release, still officially unreleased, but supported)
Contact us to support other Ruby versions.
Supported Rails versions
Rails 4 and up.
-
Rails 4.x
-
Rails 5.x
-
Rails 6.x
Contact us to support other Rails versions.
Agent Setup
The Profiler needs to be able to access the Raygun Agent over UDP.
The RAYGUN_AGENT_TOKEN
needs to be supplied as an argument and is available under “Application Settings” at the Raygun Application Performance Monitoring UI
To launch Raygun Agent using docker
docker pull raygunowner/raygun-apm
docker run -v raygun-agent:/usr/share/Raygun -e "RAYGUN_AGENT_TOKEN=<token>" -p 2790:2790 -p 2788:2788 -p 2799:2799/udp -it raygunowner/raygun-apm:latest
Profiler Setup
Include the gem in your Gemfile and enable it for all environments:
gem 'raygun-apm-rails'
Preferably this profiler should only be enabled for your production environment:
group :production do
gem 'raygun-apm-rails'
end
Run bundle
to install the gem.
Alternatively install using rubygems gem install raygun-apm-rails
.
Rails workloads supported
Currently we only hook into the framework with Rack middleware and thus only instrument HTTP request / response workloads.
The following extended events are captured:
-
HTTP inbound - the request URI, HTTP verb and other details of the current request
-
Database queries - SQL statement, provider, database etc.
Contact us to support other workloads such as specific background processing frameworks.