橋本さん、早速プロキシサーバの設定内容や証明書の作成方法など、簡潔にまとめて頂きありがとうございます!

橋本さん
ご質問ありがとうございます。

nginxがプロキシサーバとして、443番ポートで受け付け、受け付けたリクエストをnode.js ( 3014ポート )と IRISコンテナ( 9091 ポート )に転送されているということでしょうか。

スマホやPCから反応がないとのことですが、nginxのアクセスログにはログが表示されてますでしょうか?
エラーログは何か表示されてないでしょうか?

Henriqueさん、ありがとうございます。

シンプルで見やすいですね!
また、ユーザがそれぞれ見やすい画面を選択できるというのも良いと思いましたsmiley

Henriqueさん、情報ありがとうございます。
なるほど、1つのネームスペースを追加すると、コード用のデータベースとデータ用データベースを作成したり、RESTのインタフェースを作れるのですね。
いちいちデーターベースを作成しなくても良さそうです。

SAMではアプリケーションに合わせて監視項目を追加することも可能です。

まず、%SYS.Monitor.SAM.Abstractクラスを継承したクラスを作成し、PRODUCTパラメータにアプリ名、GetSensors()メソッドにてSetSensor()メソッドを使用し、メトリックを登録し、クラスをコンパイルします。試しに先日作成した温湿度計のデータを取得するようにしました。

Class REST.Monitor Extends %SYS.Monitor.SAM.Abstract
{ 

 Parameter PRODUCT = "temperature"; 
 Method GetSensors() As %Status
 {
    set lastdate=$order(^Temp(""),-1)
    quit:lastdate="" $$$OK
    set lasttime=$order(^Temp(lastdate,""),-1,data)
    quit:lasttime="" $$$OK

    set temp=$lg(data),hum=$lg(data,2)
    set now=$horolog
    do ..SetSensor("temperature",temp)
    do ..SetSensor("humidity",hum) 
    do ..SetSensor("latency",$piece(now,",")-lastdate*86400+$piece(now,",",2)-lasttime) 
    quit $$$OK
 } 
}

ターミナルを起動し%SYSネームスペースに移動、以下のメソッドを実行します。
(第2パラメータのUSERはREST.Monitorが存在するネームスペース)

%SYS>set status = ##class(SYS.Monitor.SAM.Config).AddApplicationClass("REST.Monitor", "USER")

戻り値の変数statusが1でしたら、正常に登録できています。

登録が終わりましたら、以下のURLにアクセスし、先ほどクラスを作成したホストを選択します。
http://localhost:8080/api/sam/app/index.csp
 

画面右手中央の「View Grafana」をクリックします。

画面上部に以下のようなアイコンが表示されますので、「Add Panel」(赤枠部分)をクリックします。

以下のようにパネルが作成されますので、「Add query」をクリックします。

Queryのメトリックスを指定し、Legend欄にデータのコメントを入力します。

グラフが追加されましたら、画面上方の「Save Dashboard」(赤枠部分)をクリックします。

SAM (http://localhost:8080/api/sam/app/index.csp) にアクセスしますと、新たにパネルが追加されています。

以上です。