Hi,
thanks, I’ve already read those links but with no luck.
I’m really new to graylog so, maybe, there’s something I can’t understand.
This is an example message
field1,field2,field3,field4,field5,field6,field7,field8,field9,field10,field11,field12,field13,field14,field15,field16,field17,field18,field19,field20,field21,field22,field23,field24,field25,field26,field27,field28,field29,field30,field31,field32,field33,field34,field35,2022/06/13 16:16:48,field37,field38,field39,field40,field41,field42,field43,field44,field45,field46,field47,field48,field49,field50,field51,field52,field53,field54,field55,field56,field57,field58,field59,field60,field61,field62,field63,field64,field65,field66,field67,field68,field69,field70,field71,field72,field73,field74,field75
In position #36 we find the date in format yyyy/MM/dd HH:mm:ss and the extractor using split by comma is working
If I open a message in “preview” of all messages the date is reported as invalid as already said

But if I open the message clicking on it (the linked url is like https://myserver:9000/messages/graylog_5/762ebd00-eb23-11ec-8f8f-0050569363a3) I get the right value

Even if I create a new extractor of type “copy input”
I got the same problem, the field in elasticsearch is identified by date, why?

Edit:
I’ve tried, as suggested, to copy the original field to another field and do some pipeline conversion like
rule "parse date"
when
has_field("StartTime")
then
let new_date = parse_date(to_string($message.StartTime2), "yyyy-MM-dd'T'HH:mm:ss.SSSSZ");
/*let new_date = parse_date(to_string($message.StartTime2), "yyyy/MM/dd HH:mm:ss");*/
set_field("StartTime3", new_date);
end
but the log has again the errors
Error: In call to function ‘parse_date’ at 5:15 an exception was thrown: Invalid format: “2022/06/13 17:33:09” is malformed at “/06/13 17:33:09”)
or
failed to parse date field [2022-06-13T17:36:46.000Z] with format [yyyy/MM/dd HH:mm:ss||yyyy/MM/dd||epoch_millis]]]
Edit2:
If I create an extractor copying a string field to another field, for example StarTime4 and than I set the value with the pipeline code
rule "parse date"
when
has_field("StartTime")
then
let new_field = to_string($message.StartTime);
set_field("StartTime4", new_field);
end
the value is visible, but I cannot search as it was a datetime because it’s a string…