Skip to content

Commit 1ef4f19

Browse files
authored
Merge pull request FRRouting#15471 from opensourcerouting/frrreload_logfile
tools: Add option to frr-reload to specify alternate logfile
2 parents 285fcb9 + b16752c commit 1ef4f19

File tree

2 files changed

+11
-4
lines changed

2 files changed

+11
-4
lines changed

doc/user/frr-reload.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@ There are several options that control the behavior of ``frr-reload``:
2525
* ``--stdout``: print output to stdout
2626
* ``--bindir BINDIR``: path to the vtysh executable
2727
* ``--confdir CONFDIR``: path to the existing daemon config files
28+
* ``--logfile FILENAME``: file (with path) to logfile for the reload operation.
29+
Default is ``/var/log/frr/frr-reload.log``
2830
* ``--rundir RUNDIR``: path to a folder to be used to write the temporary files
2931
needed by the script to do its job. The script should have write access to it
3032
* ``--daemon DAEMON``: by default ``frr-reload.py`` assumes that we are using

tools/frr-reload.py

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2113,12 +2113,17 @@ def format(self, record: logging.LogRecord) -> str:
21132113
help="Use logfmt as log format",
21142114
default=False,
21152115
)
2116+
parser.add_argument(
2117+
"--logfile",
2118+
help="logfile for frr-reload",
2119+
default="/var/log/frr/frr-reload.log",
2120+
)
21162121

21172122
args = parser.parse_args()
21182123

21192124
# Logging
21202125
# For --test log to stdout
2121-
# For --reload log to /var/log/frr/frr-reload.log
2126+
# For --reload log to --logfile (default: "/var/log/frr/frr-reload.log")
21222127
# If --logfmt, use the logfmt format
21232128
formatter = logging.Formatter("%(asctime)s %(levelname)5s: %(message)s")
21242129
handler = logging.StreamHandler()
@@ -2133,9 +2138,9 @@ def format(self, record: logging.LogRecord) -> str:
21332138
logging.WARNING, "\033[91m%s\033[0m" % logging.getLevelName(logging.WARNING)
21342139
)
21352140
if args.reload:
2136-
if not os.path.isdir("/var/log/frr/"):
2137-
os.makedirs("/var/log/frr/", mode=0o0755)
2138-
handler = logging.FileHandler("/var/log/frr/frr-reload.log")
2141+
if not os.path.isdir(os.path.dirname(args.logfile)):
2142+
os.makedirs(os.path.dirname(args.logfile), mode=0o0755)
2143+
handler = logging.FileHandler(args.logfile)
21392144
if args.stdout:
21402145
handler = logging.StreamHandler(sys.stdout)
21412146
handler.setFormatter(formatter)

0 commit comments

Comments
 (0)