Closed nattyan-tv closed 1 year ago
まとめ:テストに対する静かなる怒り。
途中まで作業したけど、db-update
は一回なかったことにする。
(結局全部motor
に置き換えなきゃいけないのと大した作業が出来ていなかったから)
とりあえずほぼ0の状態から1日(約10h
)で残り数個まで進めたからあとはちょっとやるだけ。(動くかどうかはさておいて)
(*コミット爆弾投下にも目をつむる)
現状、HTTP_db
を使っている各機能において、データベースを自前で用意するよりクラウドに任せた方がいいという判断になって、MongoDB
へと乗り換えを行う。
この際、ちゃんと非同期処理を行わないといけないため、motor
というライブラリを使用する。
使用方法についてはどっかのコミットを見て欲しい。
.py
は省略。データベースを使わないCogも省略。
完全に置き換えるまではHTTP_db
と併用...(既視感)(頑張れば今年中に...)
前回とは異なり、データベースマネージャーは作らず、もう手動で頑張る。
そのため、一部のデータ(主に壊れているreaction
あたりとか)はもう移行をせず切り捨てる(アーケードゲームとか大体そうだし(???))
他は頑張る。(ただし、作業は夜中でないと怒られるらしい)
1/2のサーバー障害の時に、「MongoDBへのデータ移行が終わるのが先か」「別サーバーのセットアップが終わるのが先か」の戦いをやっていたので、そのままの名残で、MongoDBへのデータ移行が進んでいる。 データは1/2時点かつ、一部データはスキップ(不具合で上書きされてたようなやつとか)したものとなっている。 下記のデータ移行が終われば全部終わる。
小並感(小学生並みのくそみたいな量みたいな感じの)コミットでデータベースを適当に移行した(出来てればいいな)
動作チェックについては、開発環境でdebug
モードを使用し、チェックに必要なcogのみを読み込んだ状態でコマンドを実行したりして確認した。
その為、もし他のところにSyntax Error
とかが潜んでいた場合は動作しない場合がある
pollpanel
: データベースを使わないようにした(多分今後は使うようにしなきゃいけないだろうけどとりあえず)/動作チェック済み
remind
: データベースをMongoDBを使用するように変更/動作チェック済み
normal_reaction
: データベースをMongoDBを使用するように変更、データベース更新期間を30秒ごとに(これもキャッシュを使ってもいいかも)/動作チェック...したようなしてないような。
weather
: wttr.inという、CLI上での天気情報取得が出来るサービスを使用して、天気を取得する機能を追加した/動作チェック済み
a3rt_talk
: 説明は割愛。そこまで強くはない対話AIとの会話機能を追加した/動作チェック済み
まだログを監視しながら、明らかにおかしいものがあれば都度都度修正... 一応はこれでデータベースの移行その他いろいろごにょごにょは一回終わり シャードとかはまた必要になり次第...()
(なんかあったらreopen)
HTTP_db
→MongoDB