最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

json - Jolt to transform unix epoch timestamp - Stack Overflow

programmeradmin4浏览0评论

Is it possible to convert Unix epoch timestamp to string timestamp in a particular format using jolt?

{
  "event": "CLICK_1",
  "time": 1736356629.9767823
}

to

{
  "event" : "CLICK_1",
  "time": "2025-01-08T17:17:09.976782206Z"
}

Is it possible to convert Unix epoch timestamp to string timestamp in a particular format using jolt?

{
  "event": "CLICK_1",
  "time": 1736356629.9767823
}

to

{
  "event" : "CLICK_1",
  "time": "2025-01-08T17:17:09.976782206Z"
}
Share Improve this question edited Jan 18 at 16:08 Barbaros Özhan 65.4k11 gold badges36 silver badges61 bronze badges asked Jan 18 at 12:49 SunnydaysSunnydays 455 bronze badges 3
  • If you need to do it in Java code (which you might need behind the scenes) it would be something like Instant.ofEpochSecond(1736356629).with(ChronoField.NANO_OF_SECOND, 9767823); – g00se Commented Jan 18 at 14:05
  • @BarbarosÖzhan Added comment that it worked. – Sunnydays Commented Jan 18 at 16:02
  • @g00se Thanks but I am trying to use Jolt transform so using java code is not an option. – Sunnydays Commented Jan 18 at 16:03
Add a comment  | 

1 Answer 1

Reset to default 1

Yes it's possible after deriving a JSON flowfile-attribute through use of an EvaluateJsonPath processor like :

Then add a JoltTransformJSON processor with the following specification which includes expression language's functions in order to render the attribute(namely time) :

[
  {
    "operation": "modify-overwrite-beta",
    "spec": {
        "time0": "${time:toNumber():multiply(1000):formatInstant("yyyy-MM-dd'T'HH:mm:ss", "GMT")}",
        "time1": "${time:toString():substring(11,18)}",
        "time":"=concat(@(1,time0),'.',@(1,time1),'Z')"
    }
  },
  {//get rid of auxiliary spec. attributes 
    "operation": "remove",
    "spec": {
        "time*": ""
    }
  }  
]
发布评论

评论列表(0)

  1. 暂无评论