Module: check_mk
Branch: master
Commit: d80b38f02484c139f867ed0b01dcc80896aa357b
URL:
http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=d80b38f02484c1…
Author: Sebastian Herbord <sh(a)mathias-kettner.de>
Date: Mon Oct 26 13:02:17 2015 +0100
added gitbugs
---
.bugs/2363 | 12 ++++++++++++
.bugs/2364 | 18 ++++++++++++++++++
2 files changed, 30 insertions(+)
diff --git a/.bugs/2363 b/.bugs/2363
new file mode 100644
index 0000000..36ec3bc
--- /dev/null
+++ b/.bugs/2363
@@ -0,0 +1,12 @@
+Title: Improve robustness of agent output parsing
+Component: core
+State: open
+Date: 2015-10-26 11:53:44
+Targetversion: future
+Class: nastiness
+
+Currently, agent output is turned into a table by splitting by line and then splitting by
a field separator. This makes it impossible to have the field separator or a linebreak
inside a field since no escaping is supported.
+Plugins can circumvent this problem to a degree by choosing a field separator that is
unlikely to appear inside fields, or by preprocessing the output.
+The former will, in many cases, not be robust since field values may be user-modifiable.
Also, different fields may have different "rare" symbols.
+The latter (processing the output) is something the agent is not supposed to do and may
cause information loss. (Worst case scenario: After processing the output, the item
identifier of different items may become the same)
+We should provide a way for agents to format data in such a way that it can be parsed to
reliably restore the original data, i.e. by apply real csv parsing with support for quoted
fields and escaping.
diff --git a/.bugs/2364 b/.bugs/2364
new file mode 100644
index 0000000..fd5c528
--- /dev/null
+++ b/.bugs/2364
@@ -0,0 +1,18 @@
+Title: Provide an easy way for agents and agent plugins to report errors or diagnostic
messages
+Component: checks
+State: open
+Date: 2015-10-26 13:00:45
+Targetversion: future
+Class: feature
+
+Agents and agent plugins currently have a hard time reporting problems (or things that
may be a problem) in such a way that the user becomes aware of them.
+There are various aspects to consider here:
+* Where to report things. Proposals: inside the agent section, in a separate field of
each check
+* reporting things that may not be a problem may confuse the user and prompt support
requests for non-issues...
+* ... not reporting them may cause increased effort trying to find real problems
+* traffic shouldn't increase (significantly) if no problems occur
+
+Proposed solution: at any point in the agent output a line formatted as
"<<<<< text >>>>>" may be printed to report an
error. Those lines do not end a section and are associated with the current section.
Inside check_mk those lines are extracted, decorated with the section name and added to
the long output of the agent
+section and that section is put into warning state if there is at least one line.
+Diagnostics messages may be written to a local file (similar to the crash log on
windows). Error messages are automatically also written to that file.
+If the agent has reported error messages, that error report would reference that
diagnostics log for extended information (i.e. "see /var/log/check_mk_agent.log for
details").