Markers zijn kleine pictogrammen die in grafieken worden gebruikt om een
verandering aan te geven. Dit kan een deploy zijn met een “Deploy marker” of
een custom event met een “Custom marker”.
Dit Marker-endpoint maakt het mogelijk om markers per applicatie aan te maken
en op te vragen.
Markertypes
Deploy markers
Deploy markers zijn kleine puntjes onderaan elke grafiek die aangeven wanneer
een nieuwe revisie van een applicatie is gedeployed. Ze zijn een geweldige
manier om deploys met elkaar te vergelijken en te zien of de nieuwe versie de
prestaties van de applicatie heeft verbeterd of verslechterd.
Een lijst van deze markers wordt ook getoond op de pagina “Deploys” op
AppSignal.com, in een applicatiecontext.
Custom markers
Custom markers bieden een manier om meer context aan grafieken toe te voegen,
waarmee u zelf annotaties kunt toevoegen. Maak een Custom marker voor
schaal-operaties, wanneer er een plotselinge piek in het verkeer was of
wanneer een database problemen had.
Marker aanmaken
Met dit endpoint kunt u Deploy- en Custom-markers aanmaken.
Bij het samenstellen van de payload voor dit request kunt u kiezen welk type
marker u wilt aanmaken door de waarde kind op te geven.
| |
|---|
| Endpoint | /api/\[app_id\]/markers.json |
| Request-methode | POST |
| Context | Applicaties |
| Vereist authenticatie? | Ja |
| Responseformaten | JSON |
Deploy marker
Deze methode om deploy markers te rapporteren is verouderd en kan op elk moment in de toekomst worden verwijderd.
Het rapporteren van deploy markers via deze methode is alleen nuttig voor kleine applicaties met één applicatie-instantie. Hiermee wordt op een specifiek tijdstip een nieuwe deploy marker aangemaakt, ongeacht de versie die de applicatie daadwerkelijk uitvoert. Dit betekent ook dat het foutgevoeliger is om gegevens onder de deploy te groeperen die er niet bij thuishoren. We detecteren deployment automatisch door het REVISION-bestand te lezen dat Capistrano sinds Ruby gem 4.5.18 aan de release-map toevoegt.
| Parameter | Type | Beschrijving |
|---|
| kind | String | Het type marker dat aangemaakt moet worden - “deploy”. |
| created_at | Date - ISO 8601 | Tijdstip waarop de marker ingevoegd moet worden. Laat leeg voor de huidige tijd. |
| repository | String | Git-link of -referentie, bijv. “main”. |
| revision | String | Git-revisiereferentie. Wordt gebruikt om git diff-links in de UI te maken. |
| user | String | Gebruiker die de deploy heeft gestart. |
Payload-voorbeeld
{
"marker": {
"kind": "deploy",
"created_at": "2015-07-21T15:06:31.737+02:00",
"repository": "git@github.com:company/repository.git",
"revision": "fe001015311af4769a4dad76bdbce4c8f5d022af",
"user": "user"
}
}
Payload-voorbeeld met 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]"}}'
Alle requests naar AppSignal API-endpoints vereisen een persoonlijk API-token dat als URL-queryparameter wordt meegegeven voor authenticatie.
Custom marker
Wordt gebruikt om events te annoteren die invloed kunnen hebben op uw performance/error rate. Voorbeelden zijn: op-/afschaling van cloudinfrastructuur, onderhoud aan een database, oorzaak van errorpieken.
Als u custom markers wilt maken, maar uw persoonlijke API-token niet wilt gebruiken, kunt u in plaats daarvan het publieke endpoint gebruiken.
| Parameter | Type | Beschrijving |
|---|
| kind | String | Het type marker dat aangemaakt moet worden - “custom”. |
| created_at | Date - ISO 8601 | Tijdstip waarop de marker ingevoegd moet worden. Laat leeg voor de huidige tijd. |
| icon | String - Optioneel | Emoji om te gebruiken voor deze Custom marker, standaard 🚀. |
| message | String - Optioneel | Bericht dat wordt getoond bij het hoveren over de marker in de UI. Afgekapt tot 200 tekens. |
Payload-voorbeeld
{
"marker": {
"kind": "custom",
"created_at": "2015-07-21T15:06:31.737+02:00",
"icon": "💩",
"message": "Accidentlly dropped production DB"
}
}
Marker index
Dit endpoint geeft een lijst van markers terug. Combineert zowel Deploy- als
Custom-markers.
| |
|---|
| Endpoint | /api/\[app_id\]/markers.json |
| Request-methode | GET |
| Context | Applicaties |
| Vereist authenticatie? | Ja |
| Responseformaten | JSON |
Parameters
| Parameter | Type | Beschrijving |
|---|
| kind | String | Het type marker dat aangemaakt moet worden - “custom”. |
| from | Date - ISO 8601 / Integer - UNIX timestamp | Alle tijden zijn UTC. |
| to | Date - ISO 8601 / Integer - UNIX timestamp | Alle tijden zijn UTC. |
| limit | Integer | Beperk het aantal teruggegeven markers. |
| count_only | Boolean | Stel in op “true” om alleen het aantal bestaande markers terug te geven. |
Response
{
"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"
}
]
}
Met "count_only": true.
Marker show
Dit endpoint geeft de JSON-representatie van één marker terug.
| |
|---|
| Endpoint | /api/\[app_id\]/markers/\[marker_id\].json |
| Request-methode | GET |
| Context | Applicaties |
| Vereist authenticatie? | Ja |
| Responseformaten | JSON |
Parameters
| Parameter | Type | Beschrijving |
|---|
| marker_id | String | De id van de marker die wordt teruggegeven. |
Response
De response voor Deploy markers en Custom markers verschilt. Deploy markers
bevatten meer data over een bepaalde deploy, terwijl Custom markers alleen
de bij het aanmaken opgegeven data bevatten.
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"
}
Marker update
Dit endpoint werkt één marker bij en geeft de JSON-representatie van de
bijgewerkte marker terug.
| |
|---|
| Endpoint | /api/\[app_id\]/markers/\[marker_id\].json |
| Request-methode | PUT |
| Context | Applicaties |
| Vereist authenticatie? | Ja |
| Responseformaten | JSON |
Parameters
| Parameter | Type | Beschrijving |
|---|
| marker_id | String | De id van de marker die wordt bijgewerkt. |
Payload
De payload is hetzelfde als bij een create/POST-request en
verschilt per markertype.
Response
De response is hetzelfde als bij een show/GET-request en
verschilt per markertype.
Marker delete
Dit endpoint verwijdert één marker.
| |
|---|
| Endpoint | /api/\[app_id\]/markers/\[marker_id\].json |
| Request-methode | DELETE |
| Context | Applicaties |
| Vereist authenticatie? | Ja |
| Responseformaten | JSON |
Parameters
| Parameter | Type | Beschrijving |
|---|
| marker_id | String | De id van de marker die wordt verwijderd. |
Response
De response body van dit request is leeg. De statuscode geeft aan of het
gelukt is of niet.