appsignal-elixir alternatives and similar packages
Based on the "Instrumenting / Monitoring" category.
Alternatively, view appsignal-elixir alternatives based on common mentions on social networks and blogs.
-
prom_ex
An Elixir Prometheus metrics collection library built on top of Telemetry with accompanying Grafana dashboards
CodeRabbit: AI Code Reviews for Developers
Do you think we are missing an alternative of appsignal-elixir or a related project?
README
AppSignal for Elixir
AppSignal for Elixir monitors errors, performance and servers for Elixir applications.
Installation
Please follow the installation guide on how to install and use this library.
Then, add custom instrumentation or use one of the framework integrations to automatically gain performance insights and error notifications. Currently, AppSignal has framework integrations for Plug and Phoenix and applications.
Usage
AppSignal will automatically monitor requests, report any exceptions that are thrown and any performance issues that might have occurred.
You can also add extra information to requests by adding custom instrumentation. Read more in our instrumentation guide.
Configuration
A complete list of all configurable options for AppSignal for Elixir is available in our documentation.
Development
Setup
Before you can start developing on the AppSignal for Elixir project make sure you have Elixir installed.
This repository is managed by mono. Install mono on your local machine by following the mono installation steps.
Then make sure you have all the project's dependencies installed by running the following command:
$ mono bootstrap
Testing
Testing is done with ExUnit and can be run with the mix test
command. You can
also supply a path to a specific file path you want to test and even a specific
line on which the test you want to run is defined.
$ mono test
# The original command can still be used
$ mix test
$ mix test test/appsignal/some_test.ex:123
This project has several different test suites defined with different mix
environments. You can run them by specifying the specific type of test suite in
the MIX_ENV
environment variable.
# Default
$ MIX_ENV=test mix test
# Run the test suite with the NIF inoperational. This will generate errors
# because the NIF is not active, but should run without failures.
$ MIX_ENV=test_no_nif mix test
Benchmarking
This package uses benchee to benchmark code. To run the benchmarker:
$ MIX_ENV=bench mix run bench/<file>.exs
Branches and versions
The main
branch corresponds to the current release of the
library. The develop
branch is used for development of features that
will end up in the next minor release. If you fix a bug open a pull
request on main
, if it's a new feature on develop
.
Making changes
When making changes to the project that require a release, add a
changeset that will be used
to update the generated CHANGELOG.md
file upon
release.
$ mono changeset add
Publishing new versions
- Merge the
develop
branch tomain
if necessary. - Run
mono publish
and follow the instructions.
Updating the CI build matrix
- Update
.semaphore/versions.rb
to add or remove Elixir/OTP versions, or.semaphore/semaphore.yml.erb
. - Run
script/generate_ci_matrix
.
Contributing
Thinking of contributing to our Elixir package? Awesome! ๐
Please follow our Contributing guide in our documentation and follow our Code of Conduct.
Also, we would be very happy to send you Stroopwafles. Have look at everyone we send a package to so far on our Stroopwafles page.
Support
Contact us and speak directly with the engineers working on AppSignal. They will help you get set up, tweak your code and make sure you get the most out of using AppSignal.
Also see our [SUPPORT.md file](SUPPORT.md).
License
The AppSignal for Elixir package source code is released under the MIT License. Check the [LICENSE](LICENSE) file for more information.
*Note that all licence references and agreements mentioned in the appsignal-elixir README section above
are relevant to that project's source code only.