【问题标题】:custom body message email triggering in Riemann黎曼中的自定义正文消息电子邮件触发
【发布时间】:2018-03-27 03:23:17
【问题描述】:

我想触发带有自定义正文消息的邮件。我可以在我的正文中解析时间戳,但是当我尝试在正文中添加字符串值时我想在我的正文中添加字符串我无法重现它。谁能帮我解决它。我正处于非常关键的实施阶段。

请在下面找到我的示例代码,

 (let [email (mailer {:host "cccc"
                            :port 25
                            :user "111111"
                            :pass "111111"
                            :auth "true"
                            :subject (fn [events] "1DD Monitoring - Response time SLA breach")
                            :body (fn [events] 
                       (apply str "Hello Team, now the time is" (:**silo** events) "Thank You!"))
                            :from "xxx@xxxx.com"})]

我在 silo 字段中从 logstash 向 riemann 发送值,我想在 body 中打印 silo 字段值

【问题讨论】:

    标签: clojure logstash riemann


    【解决方案1】:

    因此,您的活动中有一个 :**silo** 键。但是在 :body 函数中,您将拥有一个事件列表。 (:**silo** events) 将为零。

    例如,您可以获取用逗号分隔的 :**silo** 值:

    :body (fn [events]
            (str "Hello Team, now the time is "
                  (clojure.string/join "," (map #(:**silo** %) events))
                   " Thank You!"))
    

    【讨论】:

      【解决方案2】:

      恕我直言,您为 :body 定义的句柄函数语法错误。根据doc,您必须定义一个接受一系列事件并返回字符串的函数。例如:

      (defn prn-str [& events]
        ...)
      

      【讨论】:

      • 'fn' 是否有创建函数的语法。 'defn' 是一个方便的函数,它定义一个函数,然后将它保存在一个固定的名称下,以便可以从许多地方调用它。 'defn' 扩展为 '(def nane-here (fn [] rest of function body here))'
      猜你喜欢
      • 2016-02-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-02-06
      • 1970-01-01
      • 2021-06-05
      相关资源
      最近更新 更多