Project

solid_apm

0.0
The project is in a healthy, maintained state
SolidApm allow you to monitor your application without any external service.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Runtime

 Project Readme

Gem Version

SolidApm

Rails engine to manage APM data without using a third party service.

Installation

Add to your Gemfile:

bin/bundle add solid_apm

Mount the engine in your routes file:

# config/routes.rb
Rails.application.routes.draw do
  mount SolidApm::Engine => "/solid_apm"
end

Routing constraint can be use to authorize access. See Routing constraint for more information.

Configure the database connection:

# config/initializers/solid_apm.rb
SolidApm.connects_to = { database: { writing: :solid_apm } }

Install and run the migrations:

DATABASE=solid_apm bin/rails solid_apm:install:migrations

Usage

Go to http://localhost:3000/solid_apm and start monitoring your application.

Add context

class ApplicationController
  before_action do
    SolidApm.set_context(user_id: current_user&.id)
  end
end

TODOs

Features

  • Better handle subscribing to ActiveSupport notifications
  • Custom events

Interface

  • Paginate transactions list
  • Allow date range transactions index

Contributing

Contribution directions go here.

Release

bin/bump major|minor|patch
# GitHub Actions will take care of the rest

License

The gem is available as open source under the terms of the MIT License.