lighthouse/testing
Alexander Cyon 419c53bf24 Add flag 'log-color' preserving color of log redirected to file. (#3538)
Add flag 'log-color' which preserves colors of log when stdout is redirected to a file.

This is my first lighthouse PR, please let me know if I'm not following contribution guidelines, I welcome meta-feeback (feedback on git commit messages, git branch naming, and the contents of the description of this PR.)

## Issue Addressed

Solves https://github.com/sigp/lighthouse/issues/3527

## Proposed Changes

Adding a flag which enables log color preserving when stdout is redirected to a file.

### Usage
Below I demonstrate current behaviour (without using the new flag) and the new behaviur (when using new flag).

In the screenshot below, I have to panes, one on top running `lighthouse` which redirects to file `~/Desktop/test.log` and one pane in the bottom which runs `tail -f ~/Desktop/test.log`.

#### Current behaviour
```sh
lighthouse --network prater vc |& tee -a ~/Desktop/test.log
```

**Result is no colors**

<img width="1624" alt="current" src="https://user-images.githubusercontent.com/864410/188258226-bfcf8271-4c9e-474c-848e-ac92a60df25c.png">


#### New behaviour
```sh
lighthouse --network prater vc --log-color |& tee -a ~/Desktop/test.log
```

**Result is colors** 🔴🟢🔵🟡

<img width="1624" alt="new" src="https://user-images.githubusercontent.com/864410/188258223-7d9ecf09-92c8-4cba-8f24-bd4d88fc0353.png">

## Additional Info

I chose American spelling of "color" instead of Brittish "colour' since that was aligned with `slog`'s API - method`force_color()`, let me know if you prefer spelling "colour" instead. I also chose to let it be an arg not taking any argument, just like `logfile-compress` flag, rather than having to write `--log-color true`.
2022-09-06 05:58:27 +00:00
..
antithesis Fix antithesis docker builds (#3380) 2022-07-28 07:40:03 +00:00
ef_tests Enable block_lookup_failed EF test (#3489) 2022-08-24 23:34:59 +00:00
eth1_test_rig Unify execution layer endpoints (#3214) 2022-06-29 09:07:09 +00:00
execution_engine_integration Unblock CI by updating git submodules directly in execution integration tests (#3479) 2022-08-19 04:27:20 +00:00
node_test_rig Add merge support to simulator (#3292) 2022-07-18 23:15:40 +00:00
simulator Add flag 'log-color' preserving color of log redirected to file. (#3538) 2022-09-06 05:58:27 +00:00
state_transition_vectors Fix lints for Rust 1.63 (#3459) 2022-08-12 00:56:39 +00:00
test-test_logger Update to Rust 1.59 and 2021 edition (#3038) 2022-02-25 00:10:17 +00:00
web3signer_tests Builder Specs v0.2.0 (#3134) 2022-07-30 00:22:37 +00:00