Skip to content

Use User-Agent header to have analytics #150

Closed
@curquiza

Description

@curquiza

Replaces: #58

Currently, we have no analytics about integrations.
As a first step, we would like to know the proportion of each integration.

Thanks to the new spec implementation, the User-Agent header will be sent to Segment (and then to Amplitude) via the MeiliSearch server 🎉

Here is the expected format:

User-Agent: Meilisearch <language> (<version>)

-> The version should be in parenthesis and the information must start with Meilisearch

Ex:

User-Agent: Meilisearch JS (v0.22.1)

If multiple integrations are used during the user path, they should be separated by ;.

User-Agent: Meilisearch Rails (v0.2.3) ; Meilisearch Ruby (v0.16.0)

-> In this example, it means the Ruby SDK should be able to accept a custom User-Agent that the Rails plugin can pass when initializing the Ruby client.


First step: do it basically in all the SDKs

The SDKs should send the expected User-Agent header. In this step, no need to implement a way to pass a custom User-Agent header.
We only need to find a smart way (if possible) to pass the version, and/or to check the version is well updated for each release (using the .github/script/check-release.sh script for example)

Second step: do it in every integration

This step involves some SDKs (JS, PHP, Ruby, and probably more in the future) that can accept a custom User-Agent header. This needs an internal discussion for implementation and, why not, might deserve another issue.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions