Appsignal.Instrumentation (AppSignal v2.15.6)

View Source

Summary

Functions

Instrument a function.

Instrument a function, and set the "appsignal:category" attribute to the value passed as the category argument.

Send an error in a newly created Appsignal.Span.

Send an error in a newly created Appsignal.Span. Calls the passed function with the created Appsignal.Span before closing it.

Set an error in the current root span.

Set an error in the current root span by passing a kind and reason.

Functions

instrument(name, fun)

@spec instrument(String.t(), function()) :: any()

Instrument a function.

def call do
  Appsignal.instrument("foo.bar", fn ->
    :timer.sleep(1000)
  end)
end

When passing a function that takes an argument, the function is called with the created span to allow adding extra information.

def call(params) do
  Appsignal.instrument("foo.bar", fn span ->
    Appsignal.Span.set_sample_data(span, "params", params)
    :timer.sleep(1000)
  end)
end

instrument(name, category, fun)

@spec instrument(String.t(), String.t(), function()) :: any()

Instrument a function, and set the "appsignal:category" attribute to the value passed as the category argument.

instrument(_, name, category, fun)

This function is deprecated. Use Appsignal.instrument/3 instead..

send_error(exception, stacktrace)

@spec send_error(Exception.t(), Exception.stacktrace()) :: Appsignal.Span.t() | nil

Send an error in a newly created Appsignal.Span.

send_error(exception, stacktrace, fun)

@spec send_error(Exception.t(), Exception.stacktrace(), function()) ::
  Appsignal.Span.t() | nil
@spec send_error(Exception.kind(), any(), Exception.stacktrace()) ::
  Appsignal.Span.t() | nil

Send an error in a newly created Appsignal.Span. Calls the passed function with the created Appsignal.Span before closing it.

send_error(kind, reason, stacktrace, fun)

set_error(exception, stacktrace)

@spec set_error(Exception.t(), Exception.stacktrace()) :: Appsignal.Span.t() | nil

Set an error in the current root span.

set_error(kind, reason, stacktrace)

@spec set_error(Exception.kind(), any(), Exception.stacktrace()) ::
  Appsignal.Span.t() | nil

Set an error in the current root span by passing a kind and reason.