Updated March 14, 2023
Introduction to Logstash Timestamp
Logstash timestamp values are the date values in the specific format of month, day, hours, minutes, and seconds which we retrieve by using the date or timestamp filter that helps us to get them by parsing the values of the field that are of date type.
In this article, we will throw the light on the topic of logstash named logstash timestamp and will try to explore it by studying its subtopics including introduction logstash timestamp, How to Configure logstash timestamp, logstash timestamp Filter, and Conclusion.
What is Logstash Timestamp?
Timestamp value includes the details of the date and time in it for specifying a particular point of time. The logstash timestamp values is used only after parsing the date fields to timestamp and it has vast usage in the use of events. The logstash timestamp values are acquired by parsing the date values of the field in the specific format that is required by the events to use. Let us consider one sample example, when using the syslog events, the date value is parsed into a timestamp in the format as specified below which is one of the most common formats for timestamp –
Jan 26 11:03:03
The format used here for parsing the date value will be MMM dd HH:mm:ss.
How to Configure Logstash Timestamp?
There are various configurations that are supported by the logstash timestamp or logstash date plugin which we will summarize in the below table –
Configuration Setting |
Optional/Required |
Type of Input |
Match | Optional | Array |
Locale | Optional | String |
Timezone | Optional | String |
Tag_on_failure | Optional | Array |
Target | Optional | String |
Id | Optional | String |
Add_field | Optional | Hash value |
Enable_metric | Optional | Boolean |
Add_tag | No | Array |
Remove_field | No | array |
Periodic_flush | Optional | Boolean |
Remove_tag | Optional | array |
The configurations for the specification of syntax need to be understood more clearly. Letters are used for the presentation of the syntax used while the date and time values are parsed. Letters are used for the representation of values like minutes, hours, seconds, month, day, etc, and in case any of the repetition is made in these values then the consideration is made that name of the full month is to be parsed or month needs to parsed in 2 digits, etc depending on how many times that letter is repeated. Let’s understand how we can specify the format for parsing date and time that is the timestamp value.
y – y letter is used for year representation. If we make the use of yy that is two times y then the year is specified by using the last two digits of it like for example 2022 will be parsed as 22 which are the last two digits of 2022. When we specify yyyy then the complete year value is specified for example 2022 will parse as a year.
M – This helps in the representation of month value when the specified single letter of M then it stands for the minimal digit representation of the month value like 1 for January, 2 for February, ….12 for December. When we specify MM twice the letter m then the month value is represented in 2 digits like for January 01, for February 02, etc which means that is a month value with zero padding. MMM three-time M value is used for the abbreviated value of month like for January, Jan is specified and so on. Locale of the system decides the language being used. You can change the language by simply changing the locale setting value. When we specify four times M that is MMMM then this is for the complete month specification like for January it will be January itself and so on. Again, the language that will be used will depend on the settings of the locale.
d – It stands for the day of month specification for single d the minimal digit representation of the day is made like for the first day of the month will be 1 and for 30th day of the month, it will be 30. When double d that is dd is resented then the zero-padded value of day representation of month is considered as for 1st day of the month it will be 01.
H – It stands for the value representation of hour of day where H is for minimal digit hour like 0 for 12 O clock midnight and for HH it will mean zero-padded representation of hour of the day which is 00 for 12’ O clock midnight.
m is for minutes of the hour where m will represent minimal digit minutes value like 1,2,…59 and mm will be for 2 digit representation of the minutes like 01,02, etc. The same format applies to seconds, milliseconds, and time zone as well.
Logstash Timestamp Filter
Logstash timestamp filter is responsible for parsing the date fields into the required format of timestamp value as specified in the format. When we have to backfile the old existing data or in case of you want to sort out the events then logstash timestamp will play a key role in executing all these things. In case if you don’t have the dates or timestamps value set correct for the events later on it will create a problem while sorting the events as events won’t be sorted correctly due to incorrect timestamp values and format.
When the filter of timestamp or date is not available then logstash makes the choice of the value of timestamp with respect to the first look it makes on the input time of the event. This only happens in the cases where the value of timestamp is not specified priorly and the necessary setup is not made earlier for that particular event. For better understanding let us consider a sample scenario where for a particular file input the value of the timestamp is specified to be set as per the consideration of the time taken for each read operation.
Conclusion
Logstash timestamp value contains the date and time-related values obtained in the required format after parsing the date values present in the fields of data. Various configurations can be used for manipulating the behavior of logstash date timestamp filter.
Recommended Articles
This is a guide to Logstash Timestamp. Here we discuss the definition and how to configure logstash timestamp along with the filter. You may also look at the following articles to learn more –