Каждому ли опубликованному событию Rails Event Store автоматически присваивается timestamp
? Я пытаюсь создать функциональность, которая опирается на метку времени, автоматически присутствующую для событий deserialize
d из event_store
внутри задания, но я не знаю, могу ли я на это полагаться. Я надеюсь, что не нужно вручную добавлять timestamp
к событию metadata
, чтобы timestamp
присутствовал, поскольку не похоже, чтобы это было сделано где-либо в кодовой базе, над которой я работаю. Я знаю, что в документах указано, что возвращаемое значение метода RubyEventStore::Event#timestamp
может быть nil
, но я надеюсь, что это не будет nil
для опубликованных событий.
Если вы не укажете свою собственную отметку времени (ключ :timestamp
в метаданных), метаданные каждого сохраненного события будут обогащены текущим временем — см. https://github.com/RailsEventStore/rails_event_store/blob/master/ruby_event_store/lib/ruby_event_store/client .rb#L311
Можно nil
. Но только если ваш clock
, предоставленный клиенту RailsEventStore, вернет ноль.
В следующем выпуске Rails Event Store 2.0 мы также добавим время действия (атрибут valid_at
в метаданных), что позволит реализовать временной источник событий BI. Следите за обновлениями.
По умолчанию часы определены здесь: github.com/RailsEventStore/rails_event_store/blob/master/… Если вы не передадите что-то другое, отметка времени не может быть нулевой.
Спасибо! Как я могу узнать, предоставляется ли
clock
клиенту RES, который вернетnil
?