Skip to content
This repository has been archived by the owner on Mar 21, 2024. It is now read-only.

Metrics API — Introduce a /metrics route for observability / monitoring purposes #174

Merged
merged 17 commits into from
Apr 3, 2023

Conversation

gmourier
Copy link
Member

@gmourier gmourier commented Aug 23, 2022

🤖 API Diff


Summary

Describes the /metrics endpoint dedicated for observability via Prometheus.


Changes

  • Add metrics-api.md
  • Add /metrics definition on open-api.yml
  • Update instance-options.md to mention --experimental-enable-metrics / MEILI_EXPERIMENTAL_ENABLE_METRICS.
  • Update telemetry-policies.md
    • Add an instance property infos.experimental_enable_metrics
  • Update api-keys.md
    • Add new metrics.get action (set by default on the Default Admin API key).

Out Of Scope

N/A


Attention To Reviewers

Feel free to rephrase the description of the metrics. Especially for the histogram one http_responses_time_seconds, since I'm not sure if it's clear enough.


Misc

  • Update OpenAPI specification file (if needed; Apply the OpenApi label)
  • Update telemetry datapoints (if needed; Apply the Telemetry label)

@gmourier gmourier added In Progress Feature specification is in elaboration. Important changes can still occurs in the specification. v0.29 OpenAPI Update OpenAPI specification. labels Aug 23, 2022
@gmourier gmourier mentioned this pull request Aug 23, 2022
1 task
@github-actions
Copy link

github-actions bot commented Aug 24, 2022

🤖 API change detected:

Added (1)

  • GET /metrics

View documentation diff

Powered by Bump

@gmourier gmourier added the Telemetry Update the telemetry collect. label Aug 24, 2022
@gmourier gmourier added Ready For Review Feature specification must be reviewed. and removed In Progress Feature specification is in elaboration. Important changes can still occurs in the specification. labels Aug 24, 2022
@gmourier gmourier changed the title Metrics API — WIP Metrics API — Introduce a /metrics route for observability / monitoring purposes Aug 24, 2022
text/0085-api-keys.md Outdated Show resolved Hide resolved
@gmourier
Copy link
Member Author

gmourier commented Aug 29, 2022

📡 Status changed for the v0.29 release.

https://github.com/meilisearch/product/issues/496#issuecomment-1230188306

@gmourier gmourier added the In Progress Feature specification is in elaboration. Important changes can still occurs in the specification. label Aug 29, 2022
@gmourier gmourier removed the In Progress Feature specification is in elaboration. Important changes can still occurs in the specification. label Sep 26, 2022
@gmourier
Copy link
Member Author

gmourier commented Oct 18, 2022

Closed for now, will be rewritten from scratch when we will work on the observability aspect.

@gmourier gmourier closed this Oct 18, 2022
@Kerollmops Kerollmops deleted the add-spec-for-beta-metrics-endpoint branch October 18, 2022 16:23
@gmourier gmourier restored the add-spec-for-beta-metrics-endpoint branch February 21, 2023 11:04
@gmourier gmourier reopened this Feb 21, 2023
@gmourier gmourier changed the title Metrics API — Introduce a /metrics route for observability / monitoring purposes EXPERIMENTAL Metrics API — Introduce a /metrics route for observability / monitoring purposes Feb 21, 2023
@gmourier gmourier changed the title EXPERIMENTAL Metrics API — Introduce a /metrics route for observability / monitoring purposes 🧪 EXPERIMENTAL Metrics API — Introduce a /metrics route for observability / monitoring purposes Feb 21, 2023
@gmourier gmourier changed the base branch from develop to release-v1.1.0 February 21, 2023 11:05
@gmourier gmourier mentioned this pull request Feb 21, 2023
1 task
@irevoire irevoire force-pushed the add-spec-for-beta-metrics-endpoint branch from 919a02a to 4b5f7c7 Compare February 22, 2023 10:30
open-api.yaml Outdated Show resolved Hide resolved
text/0085-api-keys.md Outdated Show resolved Hide resolved
@irevoire irevoire force-pushed the add-spec-for-beta-metrics-endpoint branch from e19f840 to 3154ac0 Compare February 22, 2023 10:53
text/0174-metrics-api.md Outdated Show resolved Hide resolved
irevoire and others added 3 commits February 22, 2023 12:02
Co-authored-by: Guillaume Mourier <[email protected]>
Co-authored-by: Guillaume Mourier <[email protected]>
Co-authored-by: Guillaume Mourier <[email protected]>
Copy link
Member

@irevoire irevoire left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@dureuill & @gmourier I wrote our last change

text/0174-metrics-api.md Outdated Show resolved Hide resolved
text/0085-api-keys.md Outdated Show resolved Hide resolved
Copy link
Member Author

@gmourier gmourier left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Adding clarity and transparency, it may be removed and thus never stabilized. Unsure, if it's useful to be as precise as that in the specification level. I will probably add a link to the experimental feature process to simplify it.

text/0174-metrics-api.md Show resolved Hide resolved
@gmourier gmourier added Ready For Review Feature specification must be reviewed. and removed In Progress Feature specification is in elaboration. Important changes can still occurs in the specification. labels Feb 23, 2023
Copy link
Member

@irevoire irevoire left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👌

Copy link
Member

@Kerollmops Kerollmops left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🐇

@gmourier gmourier removed the Ready For Review Feature specification must be reviewed. label Mar 22, 2023
@gmourier gmourier merged commit 6d9a5fd into release-v1.1.0 Apr 3, 2023
@gmourier gmourier deleted the add-spec-for-beta-metrics-endpoint branch April 3, 2023 14:13
gmourier added a commit that referenced this pull request Apr 3, 2023
* Bump API version

* Metrics API — Introduce a `/metrics` route for observability / monitoring purposes (#174)

* init spec for /metrics

* Rename spec filename and add description for metrics

* update metrics name and type col in the metrics table; add auth errors

* Add --enable-metrics-route to instance-options.md specification

* Precise metrics

* update open-api.yml

* Add telemetry instance property

* Mention metrics route on stats.get action

* Add  action

* Precise  action description

* Rephrase future possibility

* Add MEILI_ENABLE_METRICS_ROUTE

* rename all the cli parameter to the experimental variant

* Update text/0174-metrics-api.md

Co-authored-by: Guillaume Mourier <[email protected]>

* Update open-api.yaml

Co-authored-by: Guillaume Mourier <[email protected]>

* Update text/0085-api-keys.md

Co-authored-by: Guillaume Mourier <[email protected]>

* Apply suggestions from code review

Co-authored-by: Tamo <[email protected]>

---------

Co-authored-by: Tamo <[email protected]>

* API Keys - Introduce `*` wildcard char at the last position to express access to multiple indexes starting with the same string (#189)

* Bump open-api spec

* Precise that the * wildcard char can be used at the last position to match multiple indexes starting with the same string

* Update future possibilities

* Update the index wildcard pattern error message

---------

Co-authored-by: Clément Renault <[email protected]>

* Documents API — Support a csv delimiter customization (#221)

* specify the support of the csv-delimiter

* Apply suggestions from code review

* get rid of the last 'future possibility' that is being described in this PR

* Update openAPI specification

---------

Co-authored-by: Guillaume Mourier <[email protected]>

* Update the geo-search spec to mention the fact that null is a valid geo field (#222)

* GeoSearch — Add the `_geoBoundingBox` built-in filter (#223)

* Add geoBoundingBox built-in filter description

* Add missing parts

* Update text/0059-geo-search.md

Co-authored-by: Tamo <[email protected]>

* Replace the top left / bottom right signature to a top right / bottom left signature

---------

Co-authored-by: Tamo <[email protected]>

* Search API — Add `facetStats` description (#224)

* update search-api.md

* rephrase

* update open-api.yml

* rephrase, add example on open-api.yml

* Add examples

* fix

* Update text/0118-search-api.md

Co-authored-by: Louis Dureuil <[email protected]>

* rephrase

* Clarify that facet stats are for all search results

---------

Co-authored-by: Louis Dureuil <[email protected]>

* Multi Search API (#225)

* Add multi-search spec

* Change possible HTTP return codes for index_not_found

* Add multi-search to openAPI

* Update telemetry

* openAPI: shorter summary for multi-search

* openAPI: attempt to remove superfluous "values" field in multisearch request/response

* Apply review suggestions for openAPI

Co-authored-by: Guillaume Mourier <[email protected]>

* Apply review suggestions for multi search API

Co-authored-by: Guillaume Mourier <[email protected]>

* Add queries/results keys to openAPI examples

Co-authored-by: Guillaume Mourier <[email protected]>

* fix indent

* Apply review suggestions for multi search API

Co-authored-by: cvermand <[email protected]>

* OpenAPI: Change summary to `Multi Search`

* use backticks instead of ticks in multi search API example

* Apply review suggestions for multi search API

Co-authored-by: Maryam <[email protected]>

* remove superfluous newline from telemetry file

Co-authored-by: Guillaume Mourier <[email protected]>

---------

Co-authored-by: Guillaume Mourier <[email protected]>
Co-authored-by: cvermand <[email protected]>
Co-authored-by: Maryam <[email protected]>

* Add small blurb on index count / max size (#226)

---------

Co-authored-by: Tamo <[email protected]>
Co-authored-by: Clément Renault <[email protected]>
Co-authored-by: Louis Dureuil <[email protected]>
Co-authored-by: cvermand <[email protected]>
Co-authored-by: Maryam <[email protected]>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
🧪 Experimental The PR describes an experimental feature. OpenAPI Update OpenAPI specification. Q1:2023 Telemetry Update the telemetry collect. v1.1.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants