Passer au contenu principal
Les markers sont de petites icônes utilisées dans les graphiques pour indiquer un changement. Il peut s’agir d’un déploiement avec un « Deploy marker » ou d’un événement personnalisé avec un « Custom marker ». Ce point de terminaison Marker permet la création et l’indexation des markers disponibles par application.

Types de markers

Deploy markers

Les deploy markers sont de petits points au bas de chaque graphique qui indiquent à quel moment une nouvelle révision d’une application a été déployée. C’est un excellent moyen de comparer les déploiements les uns avec les autres et de voir si la nouvelle version a augmenté ou diminué les performances de l’application. Une liste de ces markers est également affichée sur la page « Deploys » sur AppSignal.com, dans un contexte d’application.
Pour plus d’informations, lisez également notre page sur les deploy markers.

Custom markers

Les custom markers offrent un moyen d’ajouter plus de contexte aux graphiques en vous permettant d’ajouter vous-même des annotations. Créez un custom marker pour les opérations de mise à l’échelle, lorsqu’il y a eu un pic soudain de trafic ou lorsqu’une base de données rencontrait des problèmes.
Pour plus d’informations, lisez également notre page sur les custom markers.

Création de marker

Ce point de terminaison permet la création de deploy markers et de custom markers. Lors de la création de la charge utile pour cette requête, vous pouvez sélectionner le type de marker à créer en spécifiant la valeur kind.
Point de terminaison/api/\[app_id\]/markers.json
Méthode de requêtePOST
ContexteApplications
Authentification requise ?Oui
Formats de réponseJSON

Deploy marker

Cette méthode de signalement des marqueurs de déploiement est obsolète et peut être supprimée à tout moment à l’avenir. Signaler des marqueurs de déploiement avec cette méthode n’est utile que pour les petites applications qui utilisent une seule instance d’application. Elle crée un nouveau marqueur de déploiement à un moment précis, indépendamment de la version réellement exécutée par l’application. Cela signifie également qu’elle est plus sujette aux erreurs en regroupant sous le déploiement des données qui ne devraient pas en faire partie. Nous détectons automatiquement le déploiement en lisant le fichier REVISION que Capistrano ajoute au répertoire de release depuis la gem Ruby 4.5.18.
ParamètreTypeDescription
kindStringLe type de marker à créer - « deploy ».
created_atDate - ISO 8601Heure à laquelle insérer le marker. Laissez vide pour utiliser l’heure actuelle.
repositoryStringLien ou référence Git, par exemple « main ».
revisionStringRéférence de révision Git. Utilisée pour créer des liens git diff dans l’interface.
userStringUtilisateur qui a initié le déploiement.

Exemple de charge utile

{
  "marker": {
    "kind": "deploy",
    "created_at": "2015-07-21T15:06:31.737+02:00",
    "repository": "git@github.com:company/repository.git",
    "revision": "fe001015311af4769a4dad76bdbce4c8f5d022af",
    "user": "user"
  }
}

Exemple de charge utile avec curl

curl -H "Content-Type: application/json" -XPOST https://appsignal.com/api/[app-id]/markers.json?token=[your-personal-token] \
  -d '{ "marker":{ "kind": "deploy", "repository": "git@github.com:company/repository.git", "revision": "[revision]", "user": "[user]"}}'
Toutes les requêtes vers les points de terminaison de l’API AppSignal nécessitent un jeton d’API personnel donné en tant que paramètre de requête URL pour l’authentification.

Custom marker

Utilisé pour annoter les événements qui peuvent avoir un impact sur vos performances ou votre taux d’erreur. Exemples : mise à l’échelle/réduction de l’infrastructure cloud, maintenance sur la base de données, cause des pics d’erreurs. Si vous souhaitez créer des custom markers, mais ne pas utiliser votre jeton d’API personnel, vous pouvez utiliser le point de terminaison public à la place.
ParamètreTypeDescription
kindStringLe type de marker à créer - « custom ».
created_atDate - ISO 8601Heure à laquelle insérer le marker. Laissez vide pour utiliser l’heure actuelle.
iconString - OptionnelEmoji à utiliser pour ce custom marker, par défaut 🚀.
messageString - OptionnelMessage affiché au survol du marker dans l’interface. Tronqué à 200 caractères.

Exemple de charge utile

{
  "marker": {
    "kind": "custom",
    "created_at": "2015-07-21T15:06:31.737+02:00",
    "icon": "💩",
    "message": "Accidentlly dropped production DB"
  }
}

Index des markers

Ce point de terminaison renvoie une liste de markers. Combine à la fois les deploy markers et les custom markers.
Point de terminaison/api/\[app_id\]/markers.json
Méthode de requêteGET
ContexteApplications
Authentification requise ?Oui
Formats de réponseJSON

Paramètres

ParamètreTypeDescription
kindStringLe type de marker à créer - « custom ».
fromDate - ISO 8601 / Integer - timestamp UNIXTous les horaires sont en UTC.
toDate - ISO 8601 / Integer - timestamp UNIXTous les horaires sont en UTC.
limitIntegerLimite le nombre de markers renvoyés.
count_onlyBooleanDéfinir sur « true » pour renvoyer uniquement le nombre de markers existants.

Réponse

{
  "count": 4212,
  "markers": [
    {
      "kind": "deploy",
      "id": "50a61f1b660cd3677775ccb0",
      "created_at": "2015-07-21T15:06:31.737+02:00",
      "closed_at": null,
      "live_for": 107413,
      "live_for_in_words": "1d",
      "gem_version": null,
      "repository": "git@github.com:company/repository.git",
      "revision": "fe001015311af4769a4dad76bdbce4c8f5d022af",
      "short_revision": "fe00101",
      "git_compare_url": "https://github.com/company/repository/compare/aaa...bbb",
      "user": "user",
      "exception_count": 200,
      "exception_rate": 8.81
    },
    {
      "kind": "custom",
      "icon": "💩",
      "message": "Accidentlly dropped production DB",
      "created_at": "2015-07-21T15:06:31.737+02:00"
    },
    {
      "kind": "notification",
      "message": "Appsignal API issues.",
      "created_at": "2015-07-21T15:06:31.737+02:00"
    }
  ]
}
Avec "count_only": true.
{
  "count": 4212
}

Affichage d’un marker

Ce point de terminaison renvoie la représentation JSON d’un seul marker.
Point de terminaison/api/\[app_id\]/markers/\[marker_id\].json
Méthode de requêteGET
ContexteApplications
Authentification requise ?Oui
Formats de réponseJSON

Paramètres

ParamètreTypeDescription
marker_idStringL’id du marker à renvoyer.

Réponse

La réponse pour les deploy markers et les custom markers est différente. Les deploy markers contiennent plus de données sur un déploiement donné, tandis que les custom markers ne contiennent que les données fournies lors de la création.

Deploy marker

{
  "id": "50a61f1b660cd3677775ccb0",
  "created_at": "2015-07-21T15:06:31.737+02:00",
  "closed_at": null,
  "live_for": 107413,
  "live_for_in_words": "1d",
  "gem_version": null,
  "repository": "git@github.com:company/repository.git",
  "revision": "fe001015311af4769a4dad76bdbce4c8f5d022af",
  "short_revision": "fe00101",
  "git_compare_url": "https://github.com/company/repository/compare/aaa...bbb",
  "user": "user",
  "exception_count": 200,
  "exception_rate": 8.81
}

Custom marker

{
  "kind": "custom",
  "icon": "💩",
  "message": "Accidentlly dropped production DB",
  "created_at": "2015-07-21T15:06:31.737+02:00"
}

Notification marker

{
  "kind": "notification",
  "message": "Appsignal API issues.",
  "created_at": "2015-07-21T15:06:31.737+02:00"
}

Mise à jour d’un marker

Ce point de terminaison met à jour un seul marker et renvoie la représentation JSON du marker mis à jour.
Point de terminaison/api/\[app_id\]/markers/\[marker_id\].json
Méthode de requêtePUT
ContexteApplications
Authentification requise ?Oui
Formats de réponseJSON

Paramètres

ParamètreTypeDescription
marker_idStringL’id du marker à mettre à jour.

Charge utile

La charge utile est identique à une requête de création/POST et diffère selon le type de marker.

Réponse

La réponse est la même qu’une requête show/GET et diffère selon le type de marker.

Suppression d’un marker

Ce point de terminaison supprime un seul marker.
Point de terminaison/api/\[app_id\]/markers/\[marker_id\].json
Méthode de requêteDELETE
ContexteApplications
Authentification requise ?Oui
Formats de réponseJSON

Paramètres

ParamètreTypeDescription
marker_idStringL’id du marker à supprimer.

Réponse

Le corps de réponse de cette requête est vide. Le code de statut indiquera si elle a réussi ou non.