Using fly.io | laravel-prometheus | Spatie

 SPATIE

  Laravel Prometheus
=====================

spatie.be/open-source

  [Docs](https://spatie.be/docs)  [Laravel-prometheus](https://spatie.be/docs/laravel-prometheus/v1)  Setting-up-prometheus-and-grafana  Using fly.io

 Version   v1

 Other versions for crawler [v1](https://spatie.be/docs/laravel-prometheus/v1)

- [ Introduction ](https://spatie.be/docs/laravel-prometheus/v1/introduction)
- [ Support us ](https://spatie.be/docs/laravel-prometheus/v1/support-us)
- [ Requirements ](https://spatie.be/docs/laravel-prometheus/v1/requirements)
- [ Installation &amp; setup ](https://spatie.be/docs/laravel-prometheus/v1/installation-setup)
- [ Questions and issues ](https://spatie.be/docs/laravel-prometheus/v1/questions-issues)
- [ Changelog ](https://spatie.be/docs/laravel-prometheus/v1/changelog)
- [ About us ](https://spatie.be/docs/laravel-prometheus/v1/about-us)

Basic usage
-----------

- [ Creating gauges ](https://spatie.be/docs/laravel-prometheus/v1/basic-usage/creating-gauges)
- [ Using Horizon exporters ](https://spatie.be/docs/laravel-prometheus/v1/basic-usage/using-horizon-exporters)
- [ Using Queue exporters ](https://spatie.be/docs/laravel-prometheus/v1/basic-usage/using-queue-exporters)

Setting up Prometheus and Grafana
---------------------------------

- [ Introduction ](https://spatie.be/docs/laravel-prometheus/v1/setting-up-prometheus-and-grafana/introduction)
- [ Using grafana.com ](https://spatie.be/docs/laravel-prometheus/v1/setting-up-prometheus-and-grafana/using-grafana-com)
- [ Self-hosted ](https://spatie.be/docs/laravel-prometheus/v1/setting-up-prometheus-and-grafana/self-hosted)
- [ Using fly.io ](https://spatie.be/docs/laravel-prometheus/v1/setting-up-prometheus-and-grafana/using-fly-metrics)

Advanced usage
--------------

- [ Creating multiple endpoints ](https://spatie.be/docs/laravel-prometheus/v1/advance-usage/using-multiple-endpoints)
- [ Creating collectors ](https://spatie.be/docs/laravel-prometheus/v1/advance-usage/creating-collectors)
- [ Using counter type metric ](https://spatie.be/docs/laravel-prometheus/v1/advance-usage/using-counter-metric)

 Using fly.io
============

###  On this page

1. [ Configuring Your Fly App ](#content-configuring-your-fly-app)
2. [ Creating a Dashboard ](#content-creating-a-dashboard)

Applications hosted on [fly.io](https://fly.io) get a Grafana dashboard automatically (available at [fly-metrics.com](https://fly-metrics.net)).

You can publish your custom metrics to Fly, and view them in this hosted Grafana dashboard.

Configuring Your Fly App
--------------------------------------------------------------------------------------------------------------------------------

Fly.io will scrape prometheus metrics automatically - we just need to tell it where to find them.

Assuming your application is outputing prometheus metrics at the default `/prometheus` endpoint, you can add the following [`[metrics]` configuring](https://fly.io/docs/reference/metrics/#custom-metrics) to your app's `fly.toml` file:

```
[metrics]
port = 8080 # Match your "internal_port" config
path = "/prometheus" # default for this package
```

After you make this configuration change, you'll need to deploy your app for it to take effect. Run `fly deploy`, and Fly will begin scraping metrics.

Metrics will be available at [fly-metrics.com](https://fly-metrics.net), where you can create new dashboards/graphs using your custom metrics via the "Prometheus on Fly" data source.

Creating a Dashboard
--------------------------------------------------------------------------------------------------------------------

From within [fly-metrics.com](https://fly-metrics.net), you can choose to create a new Dashboard. From there, you can add a new panel.

![fly-metrics.net dashboard](/docs/images/add-dashboard-fly.png)

To find your metrics, choose the "Prometheus on Fly" data source.

![fly-metrics.net graph](/docs/images/prometheus-source-fly.png)

From here on, you can create your dashboard as you would normally do in Grafana. For more information on how to create dashboards, please refer to the [Grafana documentation](https://grafana.com/docs/grafana/latest/guides/getting_started/).
