見出し画像

TWSNMP FC/FKのgNMI対応開発11日目:gNMIによるポーリングに対応ができた

今朝は2時半に助手の猫さんが起こしてくれましたが、早すぎるので二度寝して4時半に自力でおきました。昨日、かみさんが早く寝たので助手の猫さんが小腹の空くタイミングがズレたようです。

TWSNMP FCにgNMIによるポーリングをつける開発が、とりあえずできました。ポーリングで取得したデータの扱い方について、いろいろ悩みましたが、問題は先送りしてJavaScriptで何とかすることにしました。トラフィックの差分や単位時間の計算をできる仕組みだけ対応しておきました。
仕様としては

  • gNMIでは1つパスだけ取得する

  • 取得したJSONデータをdataという変数でJavaScriptに渡す

  • 前回取得したデータをlast_dataという変数でJavaScriptに渡す

  • 今回の取得時刻をmSecのUNIXタイムのnowという変数でJavaScriptに渡す

  • 前回の取得時刻は、lastというヘンスでJavaScriptに渡す

にしました。受け取ったJavaScriptで何とかしてもらうという仕様です。

シンプルなLANポートのポーリングは

name=のところでLANポートの名前を指定します。このポーリングは、gNMIツールで取得した情報から作成できるようにしています。
このポーリングを実行すると

のようになります。結果も記録されます。subscribeモードも仕様は同じです。変化した時だけ記録するということだけ違います。
とりあえず、TWSNMP FKにも移植してから、SR Linux以外の機器でもテストしてみようと思います。

明日に続く

いいなと思ったら応援しよう!

twsnmp
開発のための諸経費(機材、Appleの開発者、サーバー運用)に利用します。 ソフトウェアのマニュアルをnoteの記事で提供しています。 サポートによりnoteの運営にも貢献できるのでよろしくお願います。