terraformとかでインフラリソースとログリソース(S3バケットとかCloudWatch log groupとか)を一緒のモジュールで管理することはよくあると思う。
一緒にすることのメリットとしては不要になったときに一気に消せることなのだが、逆にそれがデメリットでもある。ログに関してはインフラ自体がなくなっても、一定期間残したいという要件があるかもしれない。そのときにまあまあ困る。
対処作としては
- 最初からログとインフラを分けてモジュールを作る
- インフラを消すとき、モジュールからログだけ残して、インフラを消す
となると思うけど、どっちもすっきりしないな。仕方ないけど。
これ以外にもライフサイクルの違うものを管理するときどうすればいいのか。もうちょっと悩みたい。
結論はまだない。