Skip to content

Inconsistent indentation of long log statements #1157

Open

Description

@joca-bt

There seems to be an inconsistency in how long log statements are indented when they break across lines. See the example below. If there's a line break, I'd expect the output to be like the first snippet.

class Test {
  void test() {
    logger.atInfo().atInfo().atInfo().atInfo().atInfo().atInfo().atInfo().atInfo().atInfo().atInfo()
        .log(
            "123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890");

    logger.atInfo().atInfo().atInfo().atInfo().atInfo().atInfo().atInfo().atInfo().atInfo().atInfo()
        .atInfo().log(
        "123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890");
  }
}

Activity

  1. cushon commented on Sep 11, 2024

    @cushon
    Collaborator

    Thanks for the report, I agree this is surprising.

    There are some heuristics for formatting Flogger-style fluent log statements, and usually everything up to .log( fits on a single line.

    There's a related internal bug b/112194879 where something similar happens with a long .withCause(...) call.

  2. joca-bt commented on Sep 12, 2024

    @joca-bt
    Author

    I was trying to reproduce this with a regular dot with prefix but no luck so far, only with logs.

  3. cushon commented on Sep 12, 2024

    @cushon
    Collaborator

    I think that's expected, there's a very special case for formatting of log methods:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions