Module: check_mk
Branch: master
Commit: d7bb412222ff2a2cb60807a94d9295e9985652ad
URL:
http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=d7bb412222ff2a…
Author: Andreas Boesl <ab(a)mathias-kettner.de>
Date: Tue May 19 10:39:29 2015 +0200
#2274 windows agent: "check_mk_agent.exe test" now also outputs stderr of
plugins
If you need stdout only simply use <tt>check_mk_agent.exe file myfile</tt>.
---
.werks/2274 | 9 +++++++++
ChangeLog | 1 +
agents/windows/build_version | 2 +-
agents/windows/check_mk_agent-64.exe | Bin 301056 -> 301056 bytes
agents/windows/check_mk_agent-64.unversioned.exe | Bin 301056 -> 301056 bytes
agents/windows/check_mk_agent.cc | 20 ++++++++++++++------
agents/windows/check_mk_agent.exe | Bin 182784 -> 182784 bytes
agents/windows/check_mk_agent.msi | Bin 732160 -> 732160 bytes
agents/windows/check_mk_agent.unversioned.exe | Bin 182784 -> 182784 bytes
agents/windows/install_agent-64.exe | Bin 178440 -> 178467 bytes
10 files changed, 25 insertions(+), 7 deletions(-)
diff --git a/.werks/2274 b/.werks/2274
new file mode 100644
index 0000000..6eb1569
--- /dev/null
+++ b/.werks/2274
@@ -0,0 +1,9 @@
+Title: windows agent: "check_mk_agent.exe test" now also outputs stderr of
plugins
+Level: 1
+Component: checks
+Compatible: compat
+Version: 1.2.7i1
+Date: 1432024643
+Class: feature
+
+If you need stdout only simply use <tt>check_mk_agent.exe file myfile</tt>.
diff --git a/ChangeLog b/ChangeLog
index 6d1ccd4..b2b3c23 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -178,6 +178,7 @@
* 2271 logwatch_ec: Now able to create a single check for each logfile forwarded to
the event console...
* 2283 cisco_srst_call_legs cisco_srst_phones cisco_srst_state: New checks for
monitoring Cisco SRST routers
* 1246 blade_bays, blade_blades, blade_blowers, blade_health, blade_mediatray: Checks
now support IBM Flex Bladecenter
+ * 2274 windows agent: "check_mk_agent.exe test" now also outputs stderr of
plugins...
* 1457 FIX: logins: new check renamed from "users" check...
NOTE: Please refer to the migration notes!
* 1762 FIX: lnx_thermal: Now ignoring trip points with level 0...
diff --git a/agents/windows/build_version b/agents/windows/build_version
index 91b629b..4c5c807 100644
--- a/agents/windows/build_version
+++ b/agents/windows/build_version
@@ -1 +1 @@
-156
+158
diff --git a/agents/windows/check_mk_agent-64.exe b/agents/windows/check_mk_agent-64.exe
index 250c6b7..3e24442 100755
Binary files a/agents/windows/check_mk_agent-64.exe and
b/agents/windows/check_mk_agent-64.exe differ
diff --git a/agents/windows/check_mk_agent-64.unversioned.exe
b/agents/windows/check_mk_agent-64.unversioned.exe
index 88273ab..6bd1285 100755
Binary files a/agents/windows/check_mk_agent-64.unversioned.exe and
b/agents/windows/check_mk_agent-64.unversioned.exe differ
diff --git a/agents/windows/check_mk_agent.cc b/agents/windows/check_mk_agent.cc
index ff245e9..6ed2410 100755
--- a/agents/windows/check_mk_agent.cc
+++ b/agents/windows/check_mk_agent.cc
@@ -285,6 +285,7 @@ script_async_execution g_default_script_async_execution = SEQUENTIAL;
bool verbose_mode = false;
bool g_crash_debug = false;
bool do_tcp = false;
+bool with_stderr = false;
bool force_tcp_output = false; // if true, send socket data immediately
bool do_file = false;
static FILE* fileout;
@@ -2869,7 +2870,11 @@ int launch_program(script_container* cont)
secattr.lpSecurityDescriptor = NULL;
secattr.bInheritHandle = TRUE;
HANDLE hnul = CreateFile("NUL", GENERIC_WRITE, 0, &secattr,
OPEN_EXISTING, 0, NULL);
- si.hStdError = hnul;
+
+ if (with_stderr)
+ si.hStdError = newstdout;
+ else
+ si.hStdError = hnul;
// spawn the child process
if (!CreateProcess(NULL,cont->path,NULL,NULL,TRUE,CREATE_NEW_CONSOLE,
@@ -2950,7 +2955,9 @@ int launch_program(script_container* cont)
CloseHandle(pi.hProcess);
CloseHandle(newstdout);
CloseHandle(read_stdout);
- CloseHandle(hnul);
+ if (!with_stderr)
+ CloseHandle(hnul);
+
return exit_code;
}
@@ -4603,9 +4610,10 @@ void do_debug()
}
-void do_test()
+void do_test(bool output_stderr)
{
- do_tcp = false;
+ do_tcp = false;
+ with_stderr = output_stderr;
SOCKET dummy;
open_crash_log();
crash_log("Started in test mode.");
@@ -5091,7 +5099,7 @@ int main(int argc, char **argv)
else if (argc <= 1)
RunService();
else if (!strcmp(argv[1], "test"))
- do_test();
+ do_test(true);
else if (!strcmp(argv[1], "file")) {
if (argc < 3) {
fprintf(stderr, "Please specify the name of an output file.\n");
@@ -5103,7 +5111,7 @@ int main(int argc, char **argv)
exit(1);
}
do_file = true;
- do_test();
+ do_test(false);
fclose(fileout);
}
else if (!strcmp(argv[1], "adhoc"))
diff --git a/agents/windows/check_mk_agent.exe b/agents/windows/check_mk_agent.exe
index 24cd874..77655d9 100755
Binary files a/agents/windows/check_mk_agent.exe and b/agents/windows/check_mk_agent.exe
differ
diff --git a/agents/windows/check_mk_agent.msi b/agents/windows/check_mk_agent.msi
index 3ad8ba1..e55928a 100755
Binary files a/agents/windows/check_mk_agent.msi and b/agents/windows/check_mk_agent.msi
differ
diff --git a/agents/windows/check_mk_agent.unversioned.exe
b/agents/windows/check_mk_agent.unversioned.exe
index 74d61a7..d10fb2d 100755
Binary files a/agents/windows/check_mk_agent.unversioned.exe and
b/agents/windows/check_mk_agent.unversioned.exe differ
diff --git a/agents/windows/install_agent-64.exe b/agents/windows/install_agent-64.exe
index c1d35b6..b7b9dc7 100755
Binary files a/agents/windows/install_agent-64.exe and
b/agents/windows/install_agent-64.exe differ