#101 監視用ヘルスチェックが欲しい
初段 / 目安 15分
Node.js入門で fleama API を作り上げたあなたに、凛さんから招集がかかりました。
「今週のスプリント、バックエンドの手が足りません。Issue を10件、あなたにアサインします。報告者は商店街の皆さん——fleama のユーザーです。1件ずつ、テストを緑にしてクローズしてください」
最初の1件は、社内からの依頼です。
Issue #101 監視用ヘルスチェックが欲しい
報告者: 琥珀(夜勤エンジニア)
「夜間監視のスクリプトから fleama の生存確認をしたい。GET /health で {"status":"ok"} を返してくれれば、あとはこっちでやる」
ヘルスチェックは、中身のある処理を何もしないパスです。それでも実務のサーバーにはたいてい用意されています。
「サーバーが立っているか」と「データが正しく返るか」を切り分けられるからです。監視の役に立つのは中身が無いことのほうで、DB を読みに行かない分、余計な理由で赤くなりません。
返すのは JSON です。res.json を使えば、JSON の文字列に変えることと「これは JSON です」という印を添えることを、まとめてやってくれます。
ステータスコードは明示しなくても 200 になります。書いても構いませんが、成功が既定なので省くのが普通です。
完成条件
createApp の中に GET /health を作り、{"status":"ok"} を 200 で返してください。
下のほうにある callApp と request は採点用の仕組みです。触らないでください。
要件
GET /healthに対して{"status":"ok"}を返す- 返すときは
res.json(...)を使う - 作った
appをreturnする
入出力例
request("GET", "/health") → "200 {"status":"ok"}"
request("GET", "/health") → "200 {"status":"ok"}"ヒント
前のヒントを開くと次が開きます。開かずに解けると未開封クリアです
ヒント 2ヒント 1 を開くと読めます
ヒント 3ヒント 2 を開くと読めます
編集 ゆめさく編集部