How can I create my own APM Client for [Insert Language]

Hi is there any guidance on how I could make my own APM Client? I am attempting to create one for Haskell. I attempted to browse some of the existing implementations but they can be quite large. It also seems that some clients use special language features from the docs.

What version should I use of the spec should I use? apm-server/docs/spec at main · elastic/apm-server · GitHub

The APM agent specs is a good place to start for writing an Elastic APM client in your choice of language.

Another option to consider is OpenTelemetry, which Elastic APM can ingest natively. A quick search turned up a few projects providing a haskell client.

2 Likes