2016-08-26 42 views
0

我正在尋找一種方法來確定具有時間事件屬性的兩個連續事件之間的時差,如下所示:2016-08-25T13:05:06.953391Z。這裏最好的方法是什麼,我需要什麼類型的事件模式。當在線使用艾斯波EPL我曾嘗試使用長或日期,但後來我得到以下錯誤:日期對象的Esper算術運算

請檢查EPL模塊文本

部署在表達「創建模式StockTick失敗(符號串,價格doubl。 ..(63個字符)':錯誤開始語句:嵌套類型配置遇到屬性'時間',預期的java.lang.Class或java.util.Map的意外的屬性類型名稱'日期'或先前聲明的名稱地圖或ObjectArray類型[創建模式StockTick(符號串,價格翻上一番,時間日期)

OR

請檢查高級時間和發送事件文本

第1行的指令無效事件:屬性名稱'time'無法接受指定的值:將'java.lang.String'類型的'time'列無效賦值爲事件屬性的'時間'類型爲'java.lang.Long',列和參數類型不匹配

回答

0

對於EPL在線工具Web應用程序,我不認爲支持解析自定義日期格式。您可以使用「long」並使用自1970年1月1日00:00:00 UTC以來的毫秒。

+0

謝謝!你認爲什麼是最好的方法來確定連續事件之間的時間差異,例如相同的唯一ID,並只輸出時間差異?這可以用先前或prev函數完成嗎? – user5526698

+0

在文檔中有「prev」的示例 – goodie

+0

謝謝。我得到它的工作使用:select prev(0,time) - prev(1,time)as StockDick.win:length(2); timeDiff;你能指出我正確的方向與以下。我想每天輸出一次唯一ID最常見的時間差。我將如何做到這一點?將時差存儲在窗口或表格中?或者使用最頻繁的激勵方法?還是組合? – user5526698