That seems to work. The only issue is that it doesn't handle values < 999 (that will be "0" now), but perhaps that's acceptable?
See GelfLayout.java On Wed, Mar 23, 2016 at 4:37 PM, Remko Popma <[email protected]> wrote: > How about printing the long into a StringBuilder, then insert a period at > StringBuilder.length() - 3? > > On Thu, Mar 24, 2016 at 12:13 AM, Mikael Ståldal < > [email protected]> wrote: > >> I am trying to make GelfLayout allocation free, and got stuck at >> timestamp formatting. GELF need the timestamp as number of seconds with >> milliseconds as decimals. >> >> E.g. 1458741206653 -> "1458741206.653" >> >> The current implementation (in GelfLayout.java) is obviously not >> allocation free: >> >> static CharSequence formatTimestamp(final long timeMillis) { >> return new BigDecimal(timeMillis).divide(TIME_DIVISOR).toPlainString(); >> } >> >> (see also unit test in GelfLayoutTest.java) >> >> Any ideas on how do fix this? >> >> -- >> [image: MagineTV] >> >> *Mikael Ståldal* >> Senior software developer >> >> *Magine TV* >> [email protected] >> Grev Turegatan 3 | 114 46 Stockholm, Sweden | www.magine.com >> >> Privileged and/or Confidential Information may be contained in this >> message. If you are not the addressee indicated in this message >> (or responsible for delivery of the message to such a person), you may >> not copy or deliver this message to anyone. In such case, >> you should destroy this message and kindly notify the sender by reply >> email. >> > > -- [image: MagineTV] *Mikael Ståldal* Senior software developer *Magine TV* [email protected] Grev Turegatan 3 | 114 46 Stockholm, Sweden | www.magine.com Privileged and/or Confidential Information may be contained in this message. If you are not the addressee indicated in this message (or responsible for delivery of the message to such a person), you may not copy or deliver this message to anyone. In such case, you should destroy this message and kindly notify the sender by reply email.
