Skip to content

Show full untruncated messages from dart:developer log() #2683

@szotp

Description

@szotp

developer.log output is truncated so much that it's almost useless. IMO it would be better to just print entire thing - if I wanted to truncate, I could do it before calling the log method.

import 'dart:developer';

void main(List<String> arguments) {
  const text1 =
      "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.";

  final text2 =
      Iterable.generate(100, (i) => 'Lorem ipsum dolor sit amet').join('\n');

  log(text1);
  log(text2);
}

Outputs:

[log] Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut e…
[log] Lorem ipsum dolor sit amet
      Lorem ipsum dolor sit amet
      Lorem ipsum dolor sit amet
      Lorem ipsum dolor sit amet
      Lorem ipsum dolor si…
Exited

I suspect that this line needs to be changed:

const message = (record.message.valueAsString || "<empty message>")

To use fullValueAsString:

const message = await this.fullValueAsString(event.isolate, record.error);

I'm going to try if it works and submit MR.

I also checked on Android studio and did not have this truncation.

Metadata

Metadata

Assignees

No one assigned

    Labels

    in debuggingRelates to the debug adapter or process of running debug sessionsis enhancement

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions