結構前からアナウンスはされているのですが、すぐ忘れるので残しておきます。
Datadog だけでは無いですが、Slack側仕様変更により、Slack上の個別ユーザへメンションする際の指定の仕方が変わります。
The undocumented approach to mentioning users via the API — <@username> — will no longer function after September 12, 2018. Please reference with the user ID format (<@U123>) instead
既に始まっていて、使えなくなっている状況もあるようです。
Datadog Monitor → Slack
Slack Integration を設定することでSlackへの通知が可能です。 @slack-〜 でSlackチャンネルへの通知設定を入れている状態で以下のようにするとユーザメンションになります。
旧
不等号(<>) で囲って @ユーザ名
<@slackbot>
新
不等号(<>) で囲って @ユーザID
<@USLACKBOT>
username_like_string とやらも使えるようですが、 試した所特に Alias としては機能していないようでした。Slackとしては非推奨のようなので利用しない方が良いかと思います。
- いずれも Slack 上では @slackbot として見える
<@USLACKBOT|slackbot> <@USLACKBOT|hoge>
アナウンスメンション
@here
や @channel
での通知設定も可能です。
<!here> <!channel>
チャンネルIDのリンク
#general
のようなチャンネルのリンクを通知に載せたい場合は #にチャンネルIDです。
存在しないIDを指定すると #unknown-channel
と変換されました。
<#channelid>
Slack の ID
APIで取得するか、後述する方法で取得できます。
ユーザID (member ID)
クライアントからは以下のように取得が可能です。
- [View profile] -> [Copy member ID
チャンネルID
対象のチャンネルを右クリック -> [Copy URL]
# XXXXXXXXX = Channel ID https://*****.slack.com/messages/XXXXXXXXX
別途お知らせはあると思いますが、 <@username> 形式は 2018/09/12 で廃止されるとのことなのでお気をつけください。