今日よりちょっと賢い明日、今よりずっと自由な未来

Liberal Arts & IT

IT

【Herokuアプリの更新方法】コードを確認するところからPostgres資格情報の更新に対応

投稿日:

Line Botを公開してから1年、ここ半年ほど自分でも利用していなかったのですが、気付いたら動かなくなっていました。
PCのローカルにもコードを残していない状態だったので、Herokuアカウントのログインパスワードを思い出すところから対応しました、、

まず、前回操作時から何か更新があったのかを確認します。

22年6月に何か更新が入ったようですね

次に、コードを手元に用意します。任意のディレクトリで以下を実行。

ローカルでコードを更新して、アップしてみます。Git pushですが、TortoiseGitをインストールしてあるのでそのままPushできます。

ログを確認しながら実行すると、以下のようにBuild succeededと出るはずです。

main.pyにprint()を追加しただけでpushしましたが、print()した内容がLogに反映されるようになりました。

で、今回対応しなければならないエラーはこちら。create_message.calc()の中で失敗しており、原因はDBのデータ取得部分にありそうです。最初にreleasesを確認したときに、2022年6月に自分の知らない更新があったのでPostgres関係だろうとは思いましたが、、

コード

ログ

DBとしてPostgresを使っているので、Postgresにログインしてテーブル設計を見直します。事前にpostgresqlのインストールと、Pathを通す作業が必要です。

DBの中には問題がなさそうだったので、DBに接続する部分について調べてみると、原因分かりました。。

dsnの中身が、Herokuから確認した内容と違います。these credentials are not permanentと記載がありました。資格情報はセキュリティのために時々更新されるようです。

資格情報が更新された時に新しい資格情報でアプリを実行する方法もあるような気がするのですが、、、分からないので放置します。また1年後くらいに資格情報の更新があったらLine Botが止まりますね、、

-IT
-,

Copyright© Liberal Arts & IT , 2022 All Rights Reserved Powered by STINGER.