#Book
## 4-1 デプロイ/リリース
- インプレースデプロイ
- 1つの環境を旧環境から新環境へ上書きする
- コストが低いが、ダウンタイムが発生する
- ローリングアップデート
- 稼働中のサービスを少しずつ新しいものに置き換える
- フロントとバックエンドでIFが合わなくなるなどの危険性がある
- 以前の安定していたバージョンへ戻すこと = デプロイメントサーキットブレーカー
- ブルーグリーンデプロイメント
- 新しい環境に新バージョンのサービスをデプロイしたのち、アクセスを切り替える
- ダウンタイムもなく、一度にアクセスを切り替えられる
- 切り戻しもすぐに完了する
- [[🗃️カナリアリリース]]
- リリーストレイン
- 定期的なリリース日を決めておき、そこに間に合ったものだけをリリースするというプラクティス
## 4-2 モニタリング
- [[🗃️メトリクス]]
- 自動警告の通知基準として使うのに適している
- [[🗃️ログ]]
- アクセスもとが特定できるセッションや、アクセストークンなど流出すると危険な情報はログに出力しない
- [[🗃️トレース]]
- [[🗃️オブザーバビリティー]]
- 開発者が主体的に携わっていくことが大切
- 有用な[[🗃️ログ]]を出力する
- 日時
- アクセス元の識別情報
- アクセス先のリソース
- 処理内容、処理対象
- 処理結果
- 関数に渡されたパラメーターの内容
## 4-3 ドキュメント
- READMEファイル
- 実行環境
- 開発環境の構築手順
- Playbook / Runbook
- 障害についての、手順や対応をまとめたドキュメンt
- モニタリング内容
- モニタリングの目的、アラートの設置理由
- 💭結構、ここを定義せずにアラートを設定するから、これは明記したいかも
- アラート発生のトリガー
- 調査方法
- 対処方法
- [[🗃️Diataxis]]フレームワーク
- 目的が重要。見る人がいないドキュメントには価値がない
- 目的が混ざったドキュメントは、読み手が混乱してしまう。何を書くべきか明確にする
- 💭初知り
-