App::RouterColorizer - Colorize router CLI output
version 1.231650
This module colorizes the output of router output, using.
The output will be colorized based on detection of key strings as they might be sent from Arista, Cisco, Juniper, and VyOS routers/switches and Ciena WDM devices. It may also work on other router outputs, but these have not been used for development.
my $colorizer = App::RouterColorizer->new()
Instnatiates a new instance of App::RouterColorizer.
App::RouterColorizer
$colorized_text = $colorizer->format_text($text)
This method colorizes/formats the text, as provided in $text.
$text
/usr/bin/ssh router.example.com | router-colorizer.pl
Color coding is used, which assumes a black background on your terminal. The colors used indicate different kinds of output. Note that most lines of output are not colorized, only "important" (as defined by me!) lines are colorized.
green
Green text is used to signify "good" values. For instance, in the output from show interfaces on an Arista router, seeing lines indicating the circuit is "up" and not showing errors will show in green.
show interfaces
orange
Orange text is used to show things that aren't "good" but also aren't "bad." For instance, administratively down interfaces in show interfaces status will typically show as orange.
show interfaces status
red
Red text indicates error conditions, such as errors being seen on the output of show interfaces.
cyan
Cyan text indicates potentially important text, seperated out from text that is not-so-important. For instance, in show bgp neighbors, cyan is used to point out lines indicating which route map is being used.
show bgp neighbors
IP addresses are also colorized. These are colorized one of several colors, all with a colorized background, based on the IP/CIDR address. Thus, an IP address like 1.2.3.4 will always be the same color, which should make it easier to spot potential transposition or copy mistakes (if it shows up sometimes as white-on-blue, but other times as black-on-red, it's not the same address!).
1.2.3.4
The progarm also underlines alternating groups of 3 digits as they appear in digit strings. This is used to assist people who might have dyslexia or other visual processing differences, to allow them to quickly determine if 1000000 is 1,000,000 or 10,000,000.
None known, however it is certainly possible that I am less than perfect. If you find any bug you believe has security implications, I would greatly appreciate being notified via email sent to jmaslak@antelope.net prior to public disclosure. In the event of such notification, I will attempt to work with you to develop a plan for fixing the bug.
jmaslak@antelope.net
All other bugs can be reported via email to jmaslak@antelope.net or by using the GitHub issue tracker at https://github.com/jmaslak/App-RouterColorizer/issues
Joelle Maslak <jmaslak@antelope.net>
This software is copyright (c) 2021-2023 by Joelle Maslak.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
To install App::RouterColorizer, copy and paste the appropriate command in to your terminal.
cpanm
cpanm App::RouterColorizer
CPAN shell
perl -MCPAN -e shell install App::RouterColorizer
For more information on module installation, please visit the detailed CPAN module installation guide.