应用程序通过设置在“ environments / production.rb”中的电子邮件发出通知:
Rails.application.config.middleware.use ExceptionNotification::Rack,
:email => {
:email_prefix => "[error] - ",
:sender_address => %{"notifier" no-reply@domain.ws},
:exception_recipients => %w{notifications@domain4.us}
}
所有探究该行为的不良行为者都将产生404错误(包括带有'A=0
字符串的google ),这反过来又会产生大量的噪音污染通知。 (阻止ip毫无意义,我们刚刚观察到一连串的探针,它们具有来自12个不同ip地址的相同字符串...)
启用i18n并将语言环境添加到URL的偶然后果是,所有这些错误都是同一类型some_darned_string "is not a valid locale"
。就性能损失而言,处理404错误是可以接受的,而相对于将坏演员留在黑暗中是可以接受的。
但是问题是,当邮件的内容包含字符串is not a valid locale
时,我们如何有条件地过滤ExceptionNotification :: Rack以不发送邮件。
答案 0 :(得分:1)