Skip to content

Releases: solarwinds/appoptics-apm-ruby

4.0.5

01 Mar 22:00
Compare
Choose a tag to compare
  • Add alpine installation
  • Fix: Allow naming differences from older versions of restclient, excon, faraday

4.0.4

27 Feb 00:28
Compare
Choose a tag to compare
  • tested with Ruby 2.5.0
  • new extension 2.0.7 avoids segfault related to concurrency
  • Fix: Set defaults for invalid sampling rates and avoid throwing an exception

4.0.3

09 Feb 23:32
Compare
Choose a tag to compare

Fixes:

  • noop for rack middleware
  • SDK methods don't through exceptions in noop

Background Work:

  • better test coverage for noop mode
  • updated rdoc comments in appoptics_apm/api. Documentation
    for the methods in this folder can be generated with rdoc.

4.0.2

30 Jan 22:49
Compare
Choose a tag to compare

Gem:

This will be published as OS agnostics gem, that goes into noop on unsupported operating systems

Fixes:

make sure custom headers are preserved in RestClient

4.0.0.pre12

18 Jan 01:17
a543dbd
Compare
Choose a tag to compare
4.0.0.pre12 Pre-release
Pre-release

renaming: add _apm/APM

  • rename AppOptics module to AppOpticsAPM
  • rename appoptics folders/gem/files to appoptics_apm

4.0.0.pre11

02 Jan 20:40
Compare
Choose a tag to compare
4.0.0.pre11 Pre-release
Pre-release

Sinatra Action name

leave space after http method in Sinatra Action name

4.0.0.pre10

23 Dec 00:51
Compare
Choose a tag to compare
4.0.0.pre10 Pre-release
Pre-release

2 fixes to outbound call traces

  • add Async=1 to KVs for typhoeus.hydra
  • get context after log_entry for header['X-Trace'] in excon

4.0.0.pre9

22 Dec 20:17
Compare
Choose a tag to compare
4.0.0.pre9 Pre-release
Pre-release

SQL Sanitize

  • enable sql_sanitize by default and adapt tests accordingly
  • use new liboboe: Liboboe 2.0.3

4.0.0.pre8

15 Dec 21:18
Compare
Choose a tag to compare
4.0.0.pre8 Pre-release
Pre-release

Controller, Action and Transaction Naming

This prerelease is mainly about finding a consistent way to name Controllers and Action across the 4 frameworks: Rails, Sinatra, Padrino, Grape

Controller + Action

The goal is to use:

  • Controller or self.class for Controller
  • Action or the parameterized route for Action

Transaction Name

This is now always provided as controller.action
It will be down-cased and special characters replaced by data.

Examples from the different frameworks

(Please also check the tests for more examples.)

Rails

Rails follows the MVC pattern.
http://127.0.0.1:8140/hello/15/show
Controller: HelloController
Action: show
TransactionName: HelloController.show

Sinatra

Sinatra does not have actions, so the route from env['sinatra.route'] will be used. It natively includes the http method and we decided not to strip it out.
http://example.org/say/hello/to/world
Controller: SinatraSimple
Action: GET/say/*/to/*
TransactionName: SinatraSimple.GET/say/*/to/*

Padrino

Padrino is similar to Sinatra and we use the route for action.
http://example.org/render/1234567890/what
Controller: SimpleDemo
Action: /render/:id/what
TransactionName: SimpleDemo./render/:id/what
or depending on implementation:
http://example.org/user/12345/product/show/101010
Controller: product
Action: /user/:user_id/product/show/:id
TransactionName: product./user/:user_id/product/show/:id

Grape

Grape will also show route for action.
http://example.org/employee_data/12/nested/34
Controller: GrapeSimple
Action: /employee_data/:id/nested/:child
TransactionName: GrapeSimple./employee_data/:id/nested/:child

prelease 4.0.0.pre7

14 Dec 00:47
Compare
Choose a tag to compare
prelease 4.0.0.pre7 Pre-release
Pre-release
published a new prerelease gem