Edited at

GCE環境のredashにてSystemStatusページからアクセスするCeleryStatus内のQueriesが消えてくれない場合のkill方法


※自分用のメモです。


環境


  • GCE内でdocker運用

  • redash Version: 7.0.0+b18042


redash内のこの画面

image.png


ここで時たま問題が発生する


  • 上の画像はNo Dataになってますがここにスケジュールで実行されたQueryやExecuteしたQueryが基本的に表示されるようになってるが、実行が失敗したかなにかで無限にここに残り続けるやつ(画像無)がいる。。。。


そして、それを消さないと次のスケジュールされてるQueryも無限に増え続ける。。。


  • 複数の事業部でがっつり使ってるので更新されないとクレームの嵐・・・


手動で見にいく必要はあるが以下手順で解消できる(Mac)

※この手順はローカルアクセスする場合(GCE内からSSHログインでもほぼ変わらない手順で可能)


  • 1.ターミナルでGCPにログインgcloud beta compute --project "プロジェクト名" ssh --zone "ゾーン名" “インスタンス名”


    • GCEのgcloudコマンドを表示すればコピ貼りでいける

    • パスワードを求められるのでパスワード入力



  • 2.sshログインが完了したらsudo docker exec -it redash_scheduled_worker_1 /bin/shを入力


    • worker名(redash_scheduled_worker_1)は環境によって異なるので注意



  • 3.次にtopコマンドを入力しプロセス一覧を念の為確認


    • redash内の画面と同じPIDの処理があれば正解



  • 4.プロセス一覧を終了しkill -9 PIDを行って無事に消えてれば成功


これからの課題


  • 自動で止まってるqueryが気づける必要があるのと止まる原因の把握が必要


    • いつも普通に動いてるQueryがなぜか急に詰まったりする