MySQL のメンテナンスを容易にするために、エラー情報を収集するためのインターフェースを提供するスクリプトが作成されました。これらのエラー メッセージは MySQL エラー ログから取得され、エラー ログのパスは grep mysql で取得できます。 関連するコードはすべて次のとおりです。 #!/usr/bin/env python2.7 #-*- エンコーディング: utf-8 -*- 「」 このモジュールは、毎日のMySQLログから異常またはエラー情報を抽出するために使用されます。著者:xiaomo メールアドレス: [email protected] 「」 インポートOS インポートシステム インポート文字列 日時インポートから* # デフォルトの文字デコーダーは utf-8 です リロード(sys) sys.setdefaultencoding('utf-8') COMMON_FLAGS = ["エラー"、"例外"、"失敗"、"クラッシュ"、"修復"] def _contain_flag(cur_str): COMMON_FLAGS のフラグの場合: string.lower(cur_str) にフラグがある場合: Trueを返す Falseを返す 「」 現在の MySQL インスタンスの error_log ファイル パスを取得します。 def _get_mysql_error_log_path(): ログパス = '' grep_infos = os.popen('ps aux | grep mysql | grep "log-error"').read() len(grep_infos) > 1の場合: grep_infos = grep_infos.split("log-error=") len(grep_infos) > 1の場合: grep_infos = grep_infos[1].split(' ') len(grep_infos) > 1の場合: ログパス = grep_infos[0] log_pathを返す 「」 MySQL エラー ログ内の例外またはエラー情報を含む行を読み取ります。 エラーログの取得と開始日付の取得: エラー情報 = [] f = open(error_log, 'r') 行 = f.readlines() 行内の行の場合: データ配列 = 行を分割します(' ') len(data_array) > 0 かつ len(data_array[0]) == 10 の場合: dt_strs = データ配列[0].split('-') cur_date = date(int(dt_strs[0]), int(dt_strs[1]), int(dt_strs[2])) cur_date >= begin_date かつ _contain_flag(line): の場合 error_infos.append(行) f.close() error_infosを返す 「」 MySQL エラー ログ情報を組み立てて返します""" get_mysql_errors を定義します(begin_date=date.today()-timedelta(1)): 試す: err_log_path = _get_mysql_error_log_path() len(err_log_path) > 1の場合: _get_error_info(err_log_path, begin_date) を返します 例外を除く、e: "[get_mysql_errors]%s"%e を印刷 戻る [] ご興味ある方はぜひ参考にして学習してください。123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: Vue は左右のスライド効果のサンプルコードを実装します
>>: Docker ベースの Redis 1 マスター、2 スレーブ、3 センチネルの実装
Docker コンテナに入った後、コンテナを終了すると、コンテナは Exited 状態に変わります。...
コマンド: mysqlhotcopyこのコマンドは、ファイルをコピーする前にテーブルをロックし、不完...
この記事では、シャトルボックス効果を実現するためのjQueryの具体的なコードを参考までに紹介します...
この記事では、Dockerを使用してMySQLデータベースとリモートアクセス構成をデプロイする方法を...
この記事の例では、カルーセルのフレームレート再生を実現するためのVueの具体的なコードを参考までに共...
設置環境WIN10 VMware Workstation Pro 15.0.0 ビルド 101344...
現象Apache Spark 2.x を使用すると、Spark ジョブがすべて完了しているにもかかわ...
序文比較的複雑な大規模システムでは、複雑なロジックで処理する必要があるオブジェクトまたはデータ フロ...
目次1. 値を入力し、そのデータ型を返す** 2. アレイ重複排除3. 文字列の重複排除4. ディー...
1. はじめに最近、あるプロジェクトに取り組んでいたのですが、サーバーからクライアントに返される J...
この記事では、以下の環境をテストします。 CentOS 7 64 ビット 最小 MySQL 5.7 ...
目次(I) Workbenchを使用してデータベースを操作する①データベースを作成する② データベー...
目次問題の説明:原因分析:解決:補足: Reactでは、フックが使用されている場合、useState...
よくある質問easyswoole を初めて使用する場合は、次のような問題に遭遇することがよくあります...
例えば、入力ボックスがあります <el-入力 ref="mySearch"...