> ## Documentation Index
> Fetch the complete documentation index at: https://docs.appsignal.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Method-instrumentation toevoegen

<Tip>
  <p>Opmerkingen:</p>

  <ul>
    <li>
      Deze functie is beschikbaar vanaf Ruby gem versie 1.3 en werkt alleen voor
      klassen.
    </li>

    <li>
      Ondersteuning voor Ruby 3.0 keyword-argumenten is toegevoegd in Ruby gem `2.11.4`.
    </li>
  </ul>
</Tip>

Soms zijn [instrumentation-blocks](/ruby/instrumentation/instrumentation) niet nauwkeurig genoeg. Elke applicatie is anders, en zo ook de code die deze laat draaien. Ontwikkelaars weten welke code, en nauwkeuriger, welke methodes geïnstrumenteerd moeten worden.

Het is mogelijk om methodes in uw Ruby-code rechtstreeks met AppSignal te instrumenteren.
Met de `appsignal` Ruby gem kunt u onze object-integraties gebruiken, die u
enkele nuttige helpers bieden om dit te doen.

## Installatie

Activeer de object-integratie door de volgende regel toe te voegen na het laden van
de appsignal gem zelf

<CodeGroup>
  ```ruby Ruby theme={null}
  require 'appsignal/integrations/object'
  ```
</CodeGroup>

en ga vervolgens verder met het specificeren van welke methodes u op welke klasse wilt testen.

### Voorbeeld

<CodeGroup>
  ```ruby Ruby theme={null}
  require 'appsignal'
  require 'appsignal/integrations/object'

  class Foo
    def bar
      1
    end
    appsignal_instrument_method :bar

    def self.bar
      2
    end
    appsignal_instrument_class_method :bar
  end

  Foo.new.bar
  # => 1
  Foo.bar
  # => 2
  ```
</CodeGroup>

## Gebruik

We hebben verschillende helpers voor instance-methodes en class-methodes,
respectievelijk `appsignal_instrument_method` en `appsignal_instrument_class_method`.

Roep ze aan op klasseniveau in elke Ruby-klasse, zelfs die uit de Ruby-standaardbibliotheek,
en begin met instrumenteren. U hoeft niets anders in de klasse op te nemen; zodra u
het integratiebestand laadt, wordt het overal beschikbaar.

Instrumenteer elke methode door de helper aan te roepen met de naam van de methode
die u wilt instrumenteren. Als de methode niet bestaat, gooit het
een error, net zoals Ruby dat standaard zou doen.

Zodra een request is verwerkt door AppSignal met dit soort
instrumentation, kunt u de method-instrumentation zien in de event-
uitsplitsing op de sample-pagina.

<img src="https://mintcdn.com/appsignal-715f5a51/4TRZP0Sq9Zq7PAPW/assets/images/screenshots/method_instrumentation.png?fit=max&auto=format&n=4TRZP0Sq9Zq7PAPW&q=85&s=52f4c7f087df04214b1c2d01be8caa89" alt="Event tree with method instrumentation" width="702" height="348" data-path="assets/images/screenshots/method_instrumentation.png" />

U kunt ook de naam van het event dat naar ons wordt gestuurd, aanpassen met de
`:name`-optie.

<CodeGroup>
  ```ruby Ruby theme={null}
  class Foo
    def bar
    end
    appsignal_instrument_method :bar

    def self.bar
    end
    appsignal_instrument_class_method :bar, name: "bar.class_method.Foo.methods"
  end
  ```
</CodeGroup>
