Slack

Présentation

Associez Slack à Datadog pour permettre à votre équipe de collaborer en :

  • partageant des graphiques avec vos collègues via les canaux privés ou publics de votre équipe ;
  • recevant des alertes et des notifications de Datadog au sein de Slack.

Configuration

Installation

Si vous utilisez le site US1, US3, US5 ou EU1 Datadog, installez l’app Slack Datadog dans votre espace de travail Slack :

  1. Accédez au carré de l’intégration Slack sous Integrations sur le site Datadog. Cliquez sur le bouton Connect Slack Account en bas du carré.

  2. Vérifiez que votre compte Slack et votre compte Datadog sont associés. Remarque : l’administrateur de votre espace de travail Datadog devra potentiellement approuver une seule fois cette modification.

Remarque : l’intégration Slack avec le répertoire de l’application Slack fonctionne uniquement si vous utilisez le site US1, US3, US5 ou EU1 Datadog. Pour les autres régions, consultez la documentation relative au Webhook Slack.

Utilisation

Une fois installée, l’application Slack peut être invitée sur n’importe quel canal :

/invite @Datadog

Ensuite, associez votre compte Datadog à votre compte Slack :

/datadog accounts

Vous avez également la possibilité d’intégrer des composants de Datadog dans Slack à l’aide d’une commande.

/datadog dashboard

Vous pouvez également copier et coller n’importe quel widget à partir de Datadog vers Slack à l’aide du raccourci CMD + C ou CTRL + C, ou en affichant le menu déroulant en haut d’un widget puis en sélectionnant Copy. Lorsque vous collez un widget, celui-ci apparaît en dessous d’un lien une fois envoyé dans un canal.

Connexion de monitors

Vous pouvez désactiver le déclenchement de monitors dans Slack en un seul clic.

Vous pouvez modifier les monitors à envoyer à partir de l’application Slack de deux façons :

Mise à jour groupée : effectuez une mise à jour groupée de tous les monitors à envoyer à partir de l’application Slack et ajoutez les boutons de désactivation en cliquant sur le bouton « Upgrade », situé en haut de la configuration pour chacun de vos comptes Slack dans le carré d’intégration dans Datadog.

Méthode manuelle : si vous souhaitez tester cette fonctionnalité avant de la déployer à toutes vos équipes, ajoutez manuellement les canaux à la nouvelle configuration de compte de l’application dans la configuration de l’intégration Slack. Remarque : vous devrez peut-être supprimer les références en double vers un même canal.

Utilisation des incidents Datadog

Déclarez un nouvel incident à partir de l’application Slack avec :

/datadog incident 

Remarque : tous les utilisateurs de votre organisation Slack peuvent déclarer un incident, même s’ils n’ont pas accès à Datadog.

Lorsqu’un nouvel incident est créé, un canal Slack correspondant #incident-(identifiant unique) est créé, et un message est envoyé au canal pour vous indiquer le nouveau canal d’incident à utiliser. Le sujet du canal change en fonction de l’incident.

Modifiez l’état d’un incident (p. ex. sa gravité) avec la commande suivante :

/datadog incident update

Répertoriez tous les incidents ouverts (actifs et stables) avec :

/datadog incident lists

Utilisez le menu des actions sur un message (les trois points qui s’affichent lorsque vous passez le curseur sur un message envoyé dans le canal #incident tout à droite) pour ajouter le message à la chronologie des événements pour cet incident dans l’application.

Configuration de Slack

Canal de mise à jour des incidents

Le canal de mise à jour des incidents permet à votre équipe de bénéficier d’une visibilité totale sur l’ensemble des incidents de l’organisation, le tout depuis votre espace de travail Slack. Sélectionnez le canal de votre espace de travail dans lequel vous souhaitez publier les mises à jour. Des messages seront envoyés pour :

  1. Les nouveaux signalements d’incident
  2. Les changements de gravité et de statut, accompagnés du nom de la personne responsable de l’incident
  3. Les liens vers la page de présentation de l’incident dans l’application
  4. Les liens pour rejoindre les canaux Slack réservés aux incidents

Une fois l’app Slack installée, accédez à la page Incident Settings. Défilez vers le bas jusqu’à atteindre la section Incident Updates Channel, puis effectuez la configuration du canal.

Ouvrez l’app Slack, puis définissez le canal dans lequel vous souhaitez publier les mises à jour des incidents.

Pour configurer ce canal, procédez comme suit :

  1. Accédez à Incidents Settings.
  2. Repérez la section Incident Updates Channel.
  3. Définissez l’espace de travail Slack et le canal spécifique à utiliser pour les mises à jour des incidents.
Canal de mise à jour des incidents

Gérer des tâches d’incident

Grâce aux actions Slack et aux commandes /datadog, vous pouvez créer et gérer des tâches d’incident directement depuis Slack. Les commandes de tâche d’incident doivent être utilisées dans un canal d’incident.

Actions Slack : Vous pouvez créer des tâches à l’aide des actions Slack. Pour ce faire, passez le curseur sur un message envoyé dans un canal d’incident. Cliquez ensuite sur l’icône représentant trois points située à droite du message, puis sur Add Task to Incident.

Commandes disponibles :

  • La commande /datadog task crée une tâche pour l’incident. La fenêtre modale qui s’affiche vous permet de décrire la tâche, de l’attribuer à des membres d’équipe et de définir une date d’échéance.
  • La commande /datadog task list affiche la liste des tâches créées pour l’incident. Cette liste vous permet de rouvrir des tâches ou d’indiquer qu’elles sont terminées.

Vous pouvez gérer toutes les tâches créées depuis l’interface Incidents en accédant à l’onglet Remediation de la section Incident Tasks. Consultez la documentation à ce sujet pour en savoir plus.

Utilisez le webhook Slack si vous êtes sur le site US5 ou US1-FED de Datadog.

Installation

Pour installer l’intégration Slack, accédez à son carré d’intégration sur le site de Datadog.

Configuration

  1. Dans votre compte Slack, accédez à l’application Datadog (Legacy).
  2. Cliquez sur Ajouter à Slack –> Add Datadog Integration, puis copiez l’URL du webhook Slack.
  3. Accédez au carré d’intégration Datadog/Slack dans l’onglet de configuration.
  4. Cliquez sur Add Account.
  5. Ajoutez le nom de compte Slack de votre choix via l’option Slack Account Name.
  6. Collez l’URL du Webhook dans le champ Slack Account Hook.
  7. Cliquez sur Save.
  8. Ajoutez les canaux Slack à utiliser pour transmettre les informations :
Configuration Slack
  1. Si vous souhaitez être informé pour chaque nouveau commentaire sur un graphique, cochez la case Transfer all user comments pour chaque canal. Si vous ne cochez pas cette case, vous devrez utiliser la syntaxe @slack-<NOM_COMPTE>-<NOM_CANAL> pour que les commentaires soient publiés sur Slack. Vous devez utiliser @slack-<NOM_CANAL> si vous n’utilisez qu’un seul compte ou si vous souhaitez publier les commentaires sur le premier compte uniquement.

Vous pouvez également configurer l’envoi d’alertes vers Slack à partir de monitors et du flux d’événements.

Mentions @ dans Slack depuis l’alerte d’un monitor

Après avoir configuré l’intégration Slack, saisissez @slack dans le message de votre notification pour afficher la liste des canaux auxquels vous pouvez envoyer votre notification.

Ajoutez < > de chaque côté de @nomutilisateur dans le modèle de message de votre monitor afin de prévenir l’utilisateur défini dans les notifications Slack. Exemple : @slack-CANAL_SLACK <@NOMUTILISATEUR>.

Remarque : si vous ne parvenez pas à ping une personne, utilisez son nom d'utilisateur Slack plutôt que son nom d’affichage. Vous le trouverez dans les paramètres de compte Slack, sous Nom d’utilisateur.

Ajoutez la mention @ici ou @canal en utilisant respectivement <!ici> ou <!canal>.

Pour les groupes d’utilisateurs, utilisez <!subteam^ID_GROUPE>. Pour trouver l’ID_GROUPE, interrogez l’endpoint API de Slack usergroups.list. Par exemple, pour un groupe d’utilisateurs avec l’ID 12345, utilisez la syntaxe suivante :

<!subteam^12345>

Utilisez les mêmes règles, template variables, tags et conditions que pour les notifications Datadog standard. Par exemple, la notification suivante envoie une alerte à une sous-équipe dans le canal infrastructure en cas de renvoi d’une notification :

La charge CPU a dépassé {{warn_threshold}} sur {{ @machine_id.name }}.
{{#is_renotify}}
Attention @slack-infrastructure <!subteam^12345>
{{/is_renotify}}

Remarque : les caractères spéciaux à la fin du nom d’un canal ne sont pas pris en charge pour les notifications « @ » de Slack. Par exemple, @----critical_alerts fonctionne, mais @--critical_alerts-- ne reçoit aucune notification.

Utilisation des template variables de message pour créer des mentions « @ » dynamiques

Utilisez des template variables de message dans un message de monitor pour créer des mentions « @ » dynamiques.

Par exemple, si la variable affichée est configurée en tant que canal dans l’intégration Slack :

  • @slack-{{nom.propriétaire}} publie un message sur le canal du propriétaire pour ce monitor.

  • @slack-{{host.name}} publie un message Slack dans le canal #host.name.

Vous pouvez également créer une mention « @ » transmise directement à une adresse e-mail spécifique :

  • @team-{{nom.équipe}}@entreprise.com envoie directement un e-mail à la liste de diffusion de l’équipe.

Données collectées

Métriques

L’intégration Slack n’inclut aucune métrique.

Événements

L’intégration Slack n’inclut aucun événement.

Checks de service

L’intégration Slack n’inclut aucun check de service.

Autorisations

L’app Slack Datadog nécessite les portées OAuth suivantes. Pour en savoir plus, consultez la documentation relative aux portées d’autorisations Slack (en anglais).

Portées des tokens du bot

PortéesMotif de la requête
app_mentions:readCette app peut répondre en cas de mention directe.
channels:joinLe bot rejoint automatiquement les canaux publics précédemment configurés.
channels:managePermet de créer des canaux pour la gestion des incidents.
channels:readLes canaux sont saisis automatiquement dans le carré de l’intégration Slack dans Datadog.
chat:writePermet d’envoyer des messages dans les canaux et conversations approuvés.
commandsCommande /datadog.
groups:readLes groupes sont saisis automatiquement dans le carré de l’intégration Slack dans Datadog.
im:readPermet d’utiliser la commande /datadog dans des conversations individuelles.
im:writePermet de prévenir les administrateurs lorsque des autorisations supplémentaires sont requises.
links:readPermet d’afficher les aperçus des liens Datadog.
links:writePermet de modifier les aperçus des liens Datadog.
mpim:readPermet d’utiliser la commande /datadog.
reactions:writePermet d’indiquer qu’un message a été ajouté à la chronologie d’un incident.
team:readPermet de mettre à jour votre espace de travail dans le carré de l’intégration Slack dans Datadog.
users:readPermet d’utiliser des réponses adaptées à votre fuseau horaire.
users:read.emailPermet d’ajouter des messages/utilisateurs pour les incidents créés en dehors de Slack.
workflow.steps:executePermet de partager des widgets depuis une étape de workflow.

Portées des tokens utilisateur

PortéesMotif de la requête
identity.basicLes utilisateurs peuvent associer leur compte Datadog à leur compte Slack.

Dépannage

Besoin d’aide ? Contactez l’assistance Datadog.