All Projects → deadtrickster → prometheus-ecto

deadtrickster / prometheus-ecto

Licence: other
Prometheus.io collector for Elixir.Ecto

Programming Languages

elixir
2628 projects
shell
77523 projects

Projects that are alternatives of or similar to prometheus-ecto

Rethinkdb ecto
RethinkDB adapter for Ecto.
Stars: ✭ 112 (+51.35%)
Mutual labels:  ecto
Rummage ecto
Search, Sort and Pagination for ecto queries
Stars: ✭ 190 (+156.76%)
Mutual labels:  ecto
ecto erd
A mix task for generating Entity Relationship Diagram from Ecto schemas available in your project.
Stars: ✭ 173 (+133.78%)
Mutual labels:  ecto
Github ecto
Ecto adapter for GitHub API
Stars: ✭ 114 (+54.05%)
Mutual labels:  ecto
Filtrex
A library for performing and validating complex filters from a client (e.g. smart filters)
Stars: ✭ 157 (+112.16%)
Mutual labels:  ecto
Ex audit
Ecto auditing library that transparently tracks changes and can revert them.
Stars: ✭ 214 (+189.19%)
Mutual labels:  ecto
Kronky
Kronky bridges the gap between Ecto and Absinthe GraphQL by listing validation messages in a mutation payload.
Stars: ✭ 112 (+51.35%)
Mutual labels:  ecto
absinthe error payload
Bridges the gap between Ecto and Absinthe for mutation payload
Stars: ✭ 102 (+37.84%)
Mutual labels:  ecto
Phoenix Ecto Encryption Example
🔐 A detailed example for how to encrypt data in a Phoenix (Elixir) App before inserting into a database using Ecto Types
Stars: ✭ 166 (+124.32%)
Mutual labels:  ecto
Params
Easy parameters validation/casting with Ecto.Schema, akin to Rails' strong parameters.
Stars: ✭ 239 (+222.97%)
Mutual labels:  ecto
Phoenix live dashboard
Realtime dashboard with metrics, request logging, plus storage, OS and VM insights
Stars: ✭ 1,657 (+2139.19%)
Mutual labels:  ecto
Mipha
Proj Elixir Forum build with phoenix 1.5.
Stars: ✭ 153 (+106.76%)
Mutual labels:  ecto
Ecto mnesia
Ecto adapter for Mnesia Erlang term database.
Stars: ✭ 223 (+201.35%)
Mutual labels:  ecto
Scrivener html
HTML view helpers for Scrivener
Stars: ✭ 112 (+51.35%)
Mutual labels:  ecto
fat ecto
Query mechanism for Ecto
Stars: ✭ 20 (-72.97%)
Mutual labels:  ecto
Elixir Cowboy React Spa
Example application that shows how to use Cowboy 2.0 in conjunction with React and Redux to create data driven Single Page Applications
Stars: ✭ 112 (+51.35%)
Mutual labels:  ecto
Formex
A better form library for Phoenix
Stars: ✭ 206 (+178.38%)
Mutual labels:  ecto
ecto shorts
Shortcuts for ecto
Stars: ✭ 81 (+9.46%)
Mutual labels:  ecto
opsbro
Ops Best friend
Stars: ✭ 37 (-50%)
Mutual labels:  collector
Etso
Ecto 3 adapter allowing use of Ecto schemas held in ETS tables
Stars: ✭ 226 (+205.41%)
Mutual labels:  ecto

Prometheus.io Ecto Instrumenter

Build Status Module version Documentation Total Download License Last Updated

Ecto integration for Prometheus.ex

  • IRC: #elixir-lang on Freenode;
  • Slack: #prometheus channel - Browser or App(slack://elixir-lang.slack.com/messages/prometheus).

Quickstart

  1. Define your instrumenter:

    defmodule MyApp.Repo.Instrumenter do
      use Prometheus.EctoInstrumenter
    end
  2. Call MyApp.Repo.Instrumenter.setup/0 when application starts (e.g. supervisor setup):

    MyApp.Repo.Instrumenter.setup()
  3. If using Ecto 2, add MyApp.Repo.Instrumenter to Repo loggers list:

    config :myapp, MyApp.Repo,
      loggers: [MyApp.Repo.Instrumenter, Ecto.LogEntry]
      # ...

    If using Ecto 3, attach to telemetry in your application start function:

    :ok =
      Telemetry.attach(
        "prometheus-ecto",
        [:my_app, :repo, :query],
        MyApp.Repo.Instrumenter,
        :handle_event,
        %{}
      )

    If using Ecto 3.1 with telemetry 0.4+:

    :ok =
      :telemetry.attach(
        "prometheus-ecto",
        [:my_app, :repo, :query],
        &MyApp.Repo.Instrumenter.handle_event/4,
        %{}
      )

Integrations / Collectors / Instrumenters

Installation

Available in Hex, the package can be installed as:

  1. Add :prometheus_ecto to your list of dependencies in mix.exs:

    def deps do
      [{:prometheus_ecto, "~> 1.4.3"}]
    end
  2. Ensure :prometheus_ecto is started before your application:

    def application do
      [applications: [:prometheus_ecto]]
    end
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].