Application Performance Monitoring

ruby APM application performance monitoring

What is Ruby?

Ruby is an interpreted, high-level, general-purpose programming language. It was designed with an emphasis on programming productivity and simplicity. In Ruby, everything is an object, including primitive data types. Ruby is dynamically typed and uses garbage collection and just-in-time compilation. It supports multiple programming paradigms, including procedural, object-oriented, and functional programming.

RubyGems is Ruby's package manager and Ruby on Rails (simplified as Rails) is the most known server-side web application framework.

Ruby application instrumentation

The appservice-ruby package along with a Ruby auto-instrumentation library collects performance metrics and errors from the application server.

The agent auto-instruments supported technologies and records interesting events, like HTTP requests and database queries depending on the library used. To do this, it uses relevant public APIs when they are provided by the libraries. Otherwise, it wraps the necessary internal methods. This means that for the supported technologies, there are no code changes required.

The instrumentation library automatically keeps track of queries to your data stores to measure their duration and metadata, as well as HTTP related information (like the URL, parameters, and headers).

These events, called Transactions and Spans, are sent to ServicePilot to gain insight into latency issues and error spikes within your application.

Ruby application traces monitoring

Resources are automatically created from this package after having deployed the ServicePilot Agent along with the proper Ruby APM library configuration. It monitors HTTP(S) web requests from Ruby processes.

This gathers summarized statistics (min,max,avg...) per Ruby application such as:

  • Requests per minute
  • Sum of requests by HTTP return codes and methods
  • Number of requests in each response time range
  • Established vs. Timed-out requests

In order to provide deep Ruby application insights, details collected per request include:

  • Host and web page path
  • Server and client IP
  • Real User Response time
  • HTTP Return code and method
  • Client country and geolocation for public IPs

How to install a appservice-ruby resource?

  1. Use your ServicePilot OnPremise installation or a SaaS account.
  2. Add a new appservice-ruby resource via the web interface (/prmviews or /prmresources) or via API (/prmpackages page), the default ServicePilot agent or another agent will be provisioned automatically.

Details of the appservice-ruby package are located in the /prmpackages page of the software.

Benefits

ServicePilot enables you to deliver IT services faster and more securely with automated discovery and advanced monitoring features.

By correlating the technology RUBY APM with APM and infrastructure monitoring, ServicePilot is able to provide a more comprehensive view of an organization's IT environment.

This allows IT teams to quickly identify and diagnose issues that may be impacting application performance, and take corrective action before end-users are affected.

Start with a free trial of our SaaS solution. Explore our plans or contact us to find what works best for you.

learn more

Free installation in
a few clicks

SaaS Plateform

Flexible deployment according to your needs (SaaS, hybrid, on-premise) to speed up supervision implementation.
  • No on-premise software setup, servicing and configuration complexity
  • Instant setup, complete and pre-configured to ensure robust monitoring

OnPremise Plateform

Flexible deployment according to your needs (SaaS, hybrid, on-premise) to speed up supervision implementation.
  • Contracts and commitments over time ( > 1 year)
  • Performance, Data Storage and Infrastructure Management
  • 2 additional solutions: VoIP and Mainframe monitoring