Upgrade to Pro — share decks privately, control downloads, hide ads and more …

NRQLはじめました

bassbone
December 15, 2021

 NRQLはじめました

NRUG vol.1でLTしました。

bassbone

December 15, 2021
Tweet

Other Decks in Programming

Transcript

  1. NRQLはじめました
    NRUG Vol.1
    2021-12-15
    株式会社ラフール 伊藤 純一

    View Slide

  2. 自己紹介

    View Slide

  3. 伊藤 純一(Junichi Ito)
    ・株式会社ラフール SRE / EM
    ・Twitter: @bassbone0
    ・GitHub: @bassbone
    ・Qiita: @bassbone
    ・note: @bassbone
    ・Kaggle: @bassbone (Kaggle Expert)
    ・Blog: https://blog.bassbone.tokyo
    ・ISUCON:ISUCON7〜ISUCON11参加
          ⇨いつか本戦行きたい
    今回、初LTです(ドキドキ

    View Slide

  4. 会社紹介

    View Slide

  5. 株式会社ラフール = HRテック / メンタルヘルステック ベンチャー
    興味のある方は https://survey.lafool.jp へ

    View Slide

  6. 今日のテーマ

    View Slide

  7. New Relic導入して
    サービスを改善した話

    View Slide

  8. NRQL
    ● 文法等の簡単な紹介
    ● 新しい監視のやり方の紹介

    View Slide

  9. えにゅあーるきゅーえる?
    ぬるくる?

    View Slide

  10. ぬるくる!

    View Slide

  11. NRQLとは?

    View Slide

  12. NRQLは、New RelicのSQLに似たクエリ言語で
    す。NRQLを使用して、詳細なNew Relicデータを取
    得し、アプリケーションやホスト、ビジネスで重要なア
    クティビティについての洞察を得ることができます。
    公式ドキュメントより引用

    View Slide

  13. NRQLの使い方

    View Slide

  14. NRQLを使いこなせれば、New Relicの活用の幅が広がります!
    (ダッシュボードや監視設定等)

    View Slide

  15. 基本的な構文
    SELECT function(attribute) [AS 'label'][, ...]
    FROM data type
    [WHERE attribute [comparison] [AND|OR ...]][AS 'label'][, ...]
    [FACET attribute | function(attribute)]
    [LIMIT number]
    [SINCE time]
    [UNTIL time]
    [WITH TIMEZONE timezone]
    [COMPARE WITH time]
    [TIMESERIES time]
    (公式ドキュメントより)

    View Slide

  16. NRQL例(1)
    FROM StorageSample
    SELECT average(diskUsedPercent) as 'Disk Usage’
    FACET displayName
    サーバー単位でディスク使用
    率の平均を取得できる。
    FACET(SQLのGROUP BYに
    相当)がポイント。特定の項目
    で集約。

    View Slide

  17. NRQL例(2)
    FROM Transaction
    SELECT percentage(
    count(*),
    WHERE http.statusCode >= 500
    )
    SINCE 1 week AGO
    WHERE appName = 'xxxx'
    特定のアプリケーションのエラー
    発生率を取得できる。
    percentageがポイント。特定の
    条件を満たす割合を得られる。

    View Slide

  18. ところで

    View Slide

  19. AI/機械学習を使った監視って
    憧れますよね?

    View Slide

  20. New Relicでできるの?

    View Slide

  21. できるんです!

    View Slide

  22. 最小2乗線形回帰?将来値を予測?すごそう!
    しかし、サンプルが無い。。。

    View Slide

  23. 予測というキーワードからこんなグラフが出せるのかなと期待!
    (画像は公式フォーラムから引用)

    View Slide

  24. 教えて!Google先生!

    View Slide

  25. 「NRQL predictLinear」で検索

    View Slide

  26. View Slide

  27. View Slide

  28. View Slide

  29. 4件、目を通したけど。。。

    View Slide

  30. 余談ですが、

    View Slide

  31. 「NewRelic predictLinear」で
    検索すれば良かった(9件ヒット)
    という反省

    View Slide

  32. 閑話休題

    View Slide

  33. predictLinearと格闘して
    わかったこと

    View Slide

  34. View Slide

  35. これが正しいイメージ!
    (直近1週間のディスク使用率推移から1週間後の値を予測)

    View Slide

  36. どのように使えるのか?

    View Slide

  37. 従来の監視の課題
    具体例
     ディスクA:使用率90%。増加率1%/月。
     ディスクB:使用率60%。増加率1%/時。⇦ログの量が急増等。
    例えば、使用率90%を閾値とした監視設定を加えた場合、ディスクAは検知す
    るが、ディスクBは検知しない。しかし、ディスクBは使用率90%に達した瞬間
    には約10時間の猶予しか無く、手遅れになる可能性が。
    ⇨従来の現在の値だけでの監視の限界。

    View Slide

  38. 新しい監視
    先の例に対して、
    例えば、直近3時間の推移から24時間後の使用率が90%という監視設定をし
    ておけば、使用率66%到達時点(34時間の猶予)で気付けるため、手遅れる
    になるリスクを軽減することが可能。
    ⇨予測を使った監視を行うことで、より早く異常に気付くことが可能。

    View Slide

  39. まとめ
    ● NRQLの使い方の紹介
    ● predictLinearによる未来予測型の監視について紹介

    View Slide

  40. 今回のLT準備にあたり、こちらの書籍を参考にさせていただきました!

    View Slide

  41. 様々な職種で絶賛募集中!
    興味のある方はWantedlyへ!
    We are hiring !

    View Slide

  42. ご清聴ありがとうございました

    View Slide