21

私の Gitlab (バージョン 5) は電子メールを送信しておらず、何が起こっているのかを把握しようとして途方に暮れています。ログには有用な情報はありません。使用するように構成しましたsendmail

ActionMailer を介して電子メールを送信する小さなスクリプトを作成しました (これは、gitlab が電子メールを送信するために使用しているものだと思いますよね?)。そして、それは電子メールを正しく送信します。

しかし、私の Gitlab では、sendmail が呼び出されていないことを保証できます。

電子メール通知を受け取るために何かを有効にする必要がありますか? 問題をデバッグするにはどうすればよいですか?

アップデート

問題は、どこにも情報が見つからないことです。静かに失敗するだけです。ある種のログはどこにありますか? ディレクトリ内のログには、log有用な情報はありません。

私の質問は、Gitlab をより冗長にするにはどうすればよいですか? 何が起こっているのかを教えてもらうにはどうすればよいですか?

更新 2

Background jobsセクションに予定されているメールがたくさんあるのを見つけました。未加工が多いSidekiq::Extensions::DelayedMailer。どういう意味ですか?これらのジョブが処理されなかったのはなぜですか?

4

5 に答える 5

9

まず、何が問題だったのかを説明します。sidekiq は、電子メールの送信を処理する責任があります。何らかの理由で sidekiq が動かなくなったので、再起動すると問題が解決しました。

Gitlab で見つけた問題に関する情報を見つけた場所:

  1. ログディレクトリ。それにはいくつかの情報があります。
  2. 管理ページの「バックグラウンド ジョブ」セクションに sidekiq に関する情報が表示されます。
  3. JavaScript コンソール (ブラウザーがサポートしている場合) にも役立つ情報があります。問題が JavaScript に関連している場合のみ。
  4. そして、この時点に到達したら、Gitlab のコードを変更して、ファイルへの書き込みを「トレース」できるようにすることができます。

    File.open('/tmp/logfile','a') { |file| file.write("Hello World!\n") }

于 2013-04-21T20:35:32.043 に答える
3

本番モードで配信エラーを有効にしてみて、何が起こるか見てみましょう

  config.action_mailer.raise_delivery_errors = true
于 2013-04-20T23:14:52.663 に答える
1

バックグラウンド ジョブの下の管理セクションで、[スケジュール済み] タブに多数のアイテムがある場合は、再起動してみてくださいsidekiq

cd /home/git/gitlab    
exec rake sidekiq:start RAILS_ENV=production
于 2014-08-04T20:13:59.483 に答える
1

同じ問題があり、application.rb を変更する必要があることがわかりました。

diff --git a/config/application.rb b/config/application.rb
index d85bcab..274976f 100644
--- a/config/application.rb
+++ b/config/application.rb
@@ -11,6 +11,8 @@ end

 module Gitlab
   class Application < Rails::Application
+    config.action_mailer.sendmail_settings = { :arguments => "-i" }
+
     # Settings in config/environments/* take precedence over those specified here.
     # Application configuration should go into files in config/initializers
     # -- all .rb files in that directory are automatically loaded.

注: メールに exim を使用する Debian 7 を実行しています。

于 2014-02-25T15:39:43.320 に答える