Skip to content

Commit 69d0fef

Browse files
committed
pack: add 'epoch_millis' format
Signed-off-by: Jeongki Kim <[email protected]>
1 parent 3379df9 commit 69d0fef

File tree

2 files changed

+12
-3
lines changed

2 files changed

+12
-3
lines changed

include/fluent-bit/flb_pack.h

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,9 +36,10 @@
3636
#define FLB_PACK_JSON_PRIMITIVE JSMN_PRIMITIVE
3737

3838
/* Date formats */
39-
#define FLB_PACK_JSON_DATE_DOUBLE 0
40-
#define FLB_PACK_JSON_DATE_ISO8601 1
41-
#define FLB_PACK_JSON_DATE_EPOCH 2
39+
#define FLB_PACK_JSON_DATE_DOUBLE 0
40+
#define FLB_PACK_JSON_DATE_ISO8601 1
41+
#define FLB_PACK_JSON_DATE_EPOCH 2
42+
#define FLB_PACK_JSON_DATE_EPOCH_MILLIS 3
4243

4344
/* Specific ISO8601 format */
4445
#define FLB_PACK_JSON_DATE_ISO8601_FMT "%Y-%m-%dT%H:%M:%S"

src/flb_pack.c

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -772,6 +772,9 @@ int flb_pack_to_json_date_type(const char *str)
772772
else if (strcasecmp(str, "epoch") == 0) {
773773
return FLB_PACK_JSON_DATE_EPOCH;
774774
}
775+
else if (strcasecmp(str, "epoch_millis") == 0) {
776+
return FLB_PACK_JSON_DATE_EPOCH_MILLIS;
777+
}
775778

776779
return -1;
777780
}
@@ -892,6 +895,11 @@ flb_sds_t flb_pack_msgpack_to_json_format(const char *data, uint64_t bytes,
892895
case FLB_PACK_JSON_DATE_EPOCH:
893896
msgpack_pack_uint64(&tmp_pck, (long long unsigned)(tms.tm.tv_sec));
894897
break;
898+
case FLB_PACK_JSON_DATE_EPOCH_MILLIS:
899+
msgpack_pack_uint64(&tmp_pck,
900+
(long long unsigned)(tms.tm.tv_sec) * 1000 +
901+
tms.tm.tv_nsec / 1000000);
902+
break;
895903
}
896904
}
897905

0 commit comments

Comments
 (0)