mirror of
https://github.com/ElementsProject/lightning.git
synced 2024-11-20 02:27:51 +01:00
4d08ed2fa6
1. Create a plugin: ./lightning/tests/plugins/pretend_badlog.py This plugin subscribes 'warning' notification and log the payload of 'warning'; 2. Add a new test: tests/test_plugin.py::test_warning_notification This test runs the plugin-pretend_badlog.py and check if 'warning' notification can be normal triggered and subscribed.
33 lines
822 B
Python
Executable File
33 lines
822 B
Python
Executable File
#!/usr/bin/env python3
|
|
"""This plugin is used to check that warning(unusual/broken level log) calls are working correctly.
|
|
"""
|
|
from lightning import Plugin
|
|
|
|
plugin = Plugin()
|
|
|
|
|
|
@plugin.init()
|
|
def init(configuration, options, plugin):
|
|
plugin.log("initialized")
|
|
|
|
|
|
@plugin.subscribe("warning")
|
|
def notify_warning(plugin, warning):
|
|
plugin.log("Received warning")
|
|
plugin.log("level: {}".format(warning['level']))
|
|
plugin.log("time: {}".format(warning['time']))
|
|
plugin.log("source: {}".format(warning['source']))
|
|
plugin.log("log: {}".format(warning['log']))
|
|
|
|
|
|
@plugin.method("pretendbad")
|
|
def pretend_bad(event, level, plugin):
|
|
"""Log an specified level entry.
|
|
And in plugin, we use 'warn'/'error' instead of
|
|
'unusual'/'broken'
|
|
"""
|
|
plugin.log("{}".format(event), level)
|
|
|
|
|
|
plugin.run()
|