diff options
-rw-r--r-- | ncserver/base/log.py | 6 | ||||
-rw-r--r-- | ncserver/module/system.py | 8 |
2 files changed, 11 insertions, 3 deletions
diff --git a/ncserver/base/log.py b/ncserver/base/log.py index 411fa10..438e443 100644 --- a/ncserver/base/log.py +++ b/ncserver/base/log.py @@ -43,6 +43,12 @@ def log_config_change(session, node, info): ) +def log_operation(session, oper): + """Log an operation being performed.""" + LOG_OPERATIONAL.notice('%s on session %d is %s', + user_for_session(session), session.session_id, oper) + + def configure_format(hostname: str): """Configure the formatter for the root log handler.""" fmt = logging.Formatter('%(asctime)s ' + hostname + diff --git a/ncserver/module/system.py b/ncserver/module/system.py index 4509eca..d295aaa 100644 --- a/ncserver/module/system.py +++ b/ncserver/module/system.py @@ -22,7 +22,7 @@ from socket import gethostname, sethostname from lxml import etree from netconf import error, util -from ncserver.base.log import HOSTNAME_CHANGED, log_config_change +from ncserver.base.log import HOSTNAME_CHANGED, log_config_change, log_operation from ncserver.base.util import _, ensure_leaf, handle_list_operation, \ node_operation, yang_dt_for_timestamp from ncserver.util import maybe_raise_on_invalid_node, system_boot_time @@ -673,14 +673,16 @@ def edit(session, rpc, node, def_op): maybe_raise_on_invalid_node(M_NS, rpc, subsystem) -def rpc_system_shutdown(session, rpc, *params): +def rpc_system_shutdown(session, _, *params): """Shutdown the system.""" + log_operation(session, "shutting down the system") subprocess.Popen(["/sbin/poweroff"]) return util.elm('nc:ok') -def rpc_system_restart(session, rpc, *params): +def rpc_system_restart(session, _, *params): """Restart the system.""" + log_operation(session, "restarting the system") subprocess.Popen(["/sbin/reboot"]) return util.elm('nc:ok') |