dbtools.py¶
概要¶
データベースファイルをメンテナンスする外部ツール
使い方¶
$ uv run ./dbtools.py オプション
動作させる固有オプションを1つ指定する。
config.ini で定義されているデータベースファイルが対象となる。
Caution
チャンネル個別設定で指定しているデータベースファイルは参照されない。
コマンドライン引数¶
共通オプション¶
- -h, --help¶
- 内容:
ヘルプ表示
- 省略時:
- 備考:
- -c CONFIG, --config=CONFIG¶
- 内容:
設定ファイル
- 省略時:
config.ini
- 備考:
相対パス指定時は
dbtools.pyが起点になる
- --service=SERVICE_NAME¶
- 内容:
連携先サービス
- 省略時:
slack
- 備考:
slack
discord
standard_io, std
web, flask
ロギングオプション¶
- -d, --debug¶
- 内容:
- デバッグレベル1: debug2: trace
- 省略時:
0
- 備考:
- -v, --verbose¶
- 内容:
- 動作ログ出力切替1 (0x01): パラメータ&クエリ2 (0x02): クエリ実行結果3 (0x03): 両方出力
- 省略時:
0
- 備考:
- --moderate¶
- 内容:
ログレベルがエラー以下のもを非表示
- 省略時:
False
- 備考:
- --notime¶
- 内容:
ログフォーマットから日時を削除
- 省略時:
False
- 備考:
固有オプション¶
- --compar¶
- 内容:
データ突合
- 省略時:
- 備考:
--serviceで指定されている連携先と接続する
- --unification=UNIFICATION¶
- 内容:
ファイルの内容に従って記録済みのメンバー名を修正する
- 省略時:
rename.ini
- 備考:
書き換える内容はINIファイルに記述する
メンバー登録済みの名前や利用不可能文字、登録禁止ワードなどが用いられている名前は書き換えから除外される。
INIファイル書式¶[rename] 置き換え後の名前 = 置き換え前の名前, 置き換え前の名前, ...
- --recalculation¶
- 内容:
ポイント再計算
- 省略時:
- 備考:
記録済みデータの素点からポイントを再計算する
過去のデータを含め、すべてのレコードのポイントを再計算して更新する(変更点がなくても必ずupdateされる)。
- --export=PREFIX¶
- 内容:
メンバー設定情報をエクスポート
- 省略時:
export
- 備考:
エクスポートされたCSVファイルの1行目はヘッダ情報であり、インポートの際に必要となる。ヘッダ情報は以下の通り。メンバーリスト (export_member.csv)¶name,slack_id,flying,reward,abuse,team_id
ゲストを除いたメンバーのリスト。
team_idが空欄のメンバーはどのチームにも所属しない(未所属)。存在しないチームIDが指定されている場合は未所属扱いとなる。別名リスト (export_alias.csv)¶name,member
nameが別名、memberがメンバー名(表示される名前)となる。1行に1組のペアを記述する。別名リスト (export_team.csv)¶id,name
- --import=PREFIX¶
- 内容:
メンバー設定情報をインポート
- 省略時:
export
- 備考:
PREFIXから始まるファイル名のCSVファイルからメンバー情報をインポートする。メンバーリストのみ必須となる。メンバー情報はデータベースの情報を消去してからインポートされるため、ユーザーIDの欠番はなくなる。
- --vacuum¶
- 内容:
データベースを最適化する
- 省略時:
- 備考:
