Openapi-generator: [REQ] Log colouration

Created on 26 Nov 2019  路  8Comments  路  Source: OpenAPITools/openapi-generator

Is your feature request related to a problem? Please describe.

Right now it's hard to distinguish WARN/DEBUG/ERROR console messages in Macos Terminal. Most of time I ignore these messages, because it looks like INFO noise to me. When you generate the same build over and over again you just check error exit code or something red/yellow coloured in terminal output. If everything white or grey so it looks like nothing bad happened.

Describe the solution you'd like

I think it would be great to add an option of color output to all generators, like it works in maven or other significant libraries.

This line of code works in MacOs Terminal, but we need more global solution.

LOGGER.warn("\u001B[33m" + "Yellow message" + "\u001B[0m");

Describe alternatives you've considered

@Fjolnir-Dvorak suggested log-colouration pipelines. See quotes below.

Additional context

Quotes from Slack conversation:

@jimschubert says:

Another consideration is that we support creating custom standalone generators. Adding colors affects those. See, for example, Apache ServiceComb Toolkit.

@wing328 says:

As a workaround, what about simply grepping for WARN or ERROR in the output ?

@Fjolnir-Dvorak says:

For maven there are log-colouration pipelines. I think that would be the best for openapi-generator, too. If you want coloured output pipe it through a colourization pipe / shell script. That is in my opinion the most versatile and best solution.
That could also be added to the wrapper script and could be enabled via a --colour (or the american --color :us:) flag

Feature Discussion

Most helpful comment

If you think this is useful feature and we need colors in console output, please add 馃憤 or any other emote to this message. It's kind of a poll.

All 8 comments

If you think this is useful feature and we need colors in console output, please add 馃憤 or any other emote to this message. It's kind of a poll.

Have you considered using https://github.com/mihnita/java-color-loggers ?

Or use the following as stated in the readme:

Log4j 2 supports colors out of the box: https://logging.apache.org/log4j/2.x/manual/layouts.html#enable-jansi

https://github.com/mihnita/java-color-loggers#log4j-2

@wing328 Looks promising. Can we add this package to project dependencies or every user should install it manually?

We can include it in the project itself.

We can include it in the project itself.

@wing328 Yeah, that's what I want, definitely!

The project uses logback, not log4j. You'd need to follow the guides provided by logback, which would require an additional package.

Closed via #5193

Was this page helpful?
0 / 5 - 0 ratings