てくなべ

ansible / network automation / 学習メモ / 思考メモ

タスクの変数を減らす

はじめに

(タイトルがAnsibleの話みたいになってますが別の話です)

先日の記事「自動化の難易度は機能とパラメーターのセットで考える - てくなべ」で、自動化とパラメーターは切っても切り離せない旨を書きました。

このことは「パラメーターが少ない方が自動化しやすいこともある」という側面もあります。

特に目新しい話ではありませんが、最近身近なところで実感した経験がありました。

今から一時間後にアラームを鳴らしたい

毎日行っている1 時間の作業があります。作業の終わりに気付くために、作業開始時に「今から一時間後にアラーム鳴らす設定をする」ということをやっていました。

開始時刻は毎日微妙にぶれていました。そのため「今から~」の「今」の時刻が毎回異なります。

いちいち手動で設定するのは面倒なので、スマホで Gemini「今から1時間後にアラーム」と話しかけて都度設定していました。

だんだんそれさえ面倒に

しばらく、都度 Gemini に声で依頼という運用をしていました。しかし、だんだんとそれさえも面倒になってきてしまいました。もっと効率よく「今から一時間後にアラーム」を設定できないか、と考えました。

が、なかなか妙案は思い浮かびません。もやもやを抱えながらも、ずるずると同じ方法で続けていました。

寝言で「今から一時間後にアラーム」を言ってないか心配です。

前提を変え、設定作業そのものをなくす

ふとある時、「今」が毎回ぶれているからその都度設定する必要があるんだと気が付きました。 そこで、開始時刻を毎日一定にして、その時刻から一時間後に日次アラームを設定しておくことにしました。この設定作業自体は一度キリです。

すると、当たり前ですが毎日設定しなおす手間がなくなりました。

「開始時刻から1時間後の終了時刻」という毎回可変のパラメーターをなくすことで、効率化というか、そもそも毎回のアラーム設定の必要性がなくなりました。

気が付くのが遅かったのですが「これでよかったんだ」と思いました。

おわりに

いわゆる「運用でカバー」のような構図に見えるかもしれませんし、実際そうかもしれません。

ですが、作業を減らす方向に運用の前提を変えると結構よかった、という実体験になりました。