So, I have one server with the msgs.dll out of the config. It has
been running for many days with the client updating fine. I redid the
xymon client-local.cfg, stopped bbwin, deleted \tmp\clientlocal.cfg
and restarted it (as it wouldn't update), the \tmp\clientlocal.cfg
now reads what the client-local has:
eventlog:application:1024
ignore BigBrotherXymonClient
eventlog:system:1025
eventlog:security:10240
I let that run a cycle, it still updates OK. I then put in the
msgs.dll statement in BBWin.cfg; that registers and BBWin.log shows:
2013/07/11 10:42:55 [DEBUG]: [bbwinupdate]: can't open C:\Program
Files (x86)\BBWin\etc\clientversion.cfg : The system cannot find the
file specified.
2013/07/11 10:42:55 [DEBUG]: [cpu]: cpu review started
2013/07/11 10:42:55 [DEBUG]: [cpu]: cpu review ended
2013/07/11 10:42:55 [DEBUG]: [disk]: drive string A:\
2013/07/11 10:42:55 [DEBUG]: [disk]: drive string C:\
2013/07/11 10:42:55 [DEBUG]: [disk]: drive string D:\
2013/07/11 10:42:55 [DEBUG]: [disk]: drive string E:\
2013/07/11 10:42:55 [DEBUG]: [filesystem]: start
AgentFileSystem::InitCentralMode
2013/07/11 10:42:55 [DEBUG]: [filesystem]: checking file C:\Program
Files (x86)\BBWin\tmp\clientlocal.cfg
2013/07/11 10:42:55 [DEBUG]: [filesystem]: reading file C:\Program
Files (x86)\BBWin\tmp\clientlocal.cfg
2013/07/11 10:42:55 [DEBUG]: [msgs]: start AgentMsgs::InitCentralMode
2013/07/11 10:42:55 [DEBUG]: [msgs]: checking file C:\Program Files
(x86)\BBWin\tmp\clientlocal.cfg
2013/07/11 10:42:55 [DEBUG]: [msgs]: reading file C:\Program Files
(x86)\BBWin\tmp\clientlocal.cfg
2013/07/11 10:42:55 [DEBUG]: [msgs]: will use maxdata size : 1024
2013/07/11 10:42:55 [DEBUG]: [msgs]: will ignore : BigBrotherXymonClient
2013/07/11 10:42:55 [DEBUG]: [msgs]: will use maxdata size : 1025
2013/07/11 10:42:55 [DEBUG]: [msgs]: will use maxdata size : 10240
and no more updates. The .\tmp\msgs.hostname.txt file is 88MB.
thanks, Phil
*From:* Scot Kreienkamp
*Sent:* Wednesday, 10 July 2013 10:19 PM
*To:* David Baldwin; Phil Crooker
*Cc:* xymon at xymon.com
*Subject:* RE: [Xymon] problem with receiving bbwin data
If the eventlog data being transmitted is too large to transmit until
the clientlocal.cfg is sent back and populated in BBWin, then why not
disable the eventlog client in BBWin until it successfully sends 2-3
status messages? By that time the clientlocal.cfg will be populated
on the client and you can enable the eventlog reader again and
everything should work fine.
*Scot Kreienkamp *
*From:*Xymon [mailto:xymon-bounces at xymon.com] *On Behalf Of *David
Baldwin
*Sent:* Wednesday, July 10, 2013 4:19 AM
*To:* Phil Crooker
*Cc:* xymon at xymon.com
*Subject:* Re: [Xymon] problem with receiving bbwin data
Phil,
Just found a fix that works for me :)
I've been having difficulties setting up the bbwin client (ver
0.13 going to xymon 4.3.10 server) running on win7 sp1, 2008r2
and win2012 boxes in central mode. I've had zero response from
the bbwin-help forum for this, so please bear with me.
For background: I can't get the bbwin client to stop sending all
the logs, it ignores any maxdata parameters I use. Eg:
eventlog:system:1024
It sends everything anyway. If I use log:system:1024, the bbwin
client throws an error that it can't find the system log file. It
does find the file without the maxdata parameter.
One problem with the settings in client-local.cfg on the xymon server
is that they only propagate to the client after a successful sending
of a client message. The mechanics is that after the client message
has been sent, BBWin does a shutdown on the write socket and then
reads from the read socket until EOF. If the write socket is never
shutdown because the server breaks the connection due to flooding,
then the client-local.cfg section will never be sent to the client.
I've previously attempted to manually create C:\Program
Files(x86)\BBWin\tmp\clientlocal.cfg to trick it, but with limited
success. Just played around with it again - with client reporting to
my primary server I just got it going - previously I was reporting to
2 servers. The trick seems to be in having logfetch.status also
created. I then modified my BBWin.cfg back to 2 servers and it broke
again. Maybe the 2nd server is responding differently. It is
undefined which server's clientlocal.cfg to believe anyway :) Swapped
the order of the servers around and it seems stable.
If the server just discarded all the flooding data beyond MAXMSG_*
and then returned the client config section anyway maybe it could be
made to work, but there may be good reasons why that would not be
sensible.
This aside, I do need to get this working as I have to start
monitoring 10 new windows servers and have to monitor the event logs,
so I can't just stop sending them as has been suggested. Yes I could
do some powershell scripts and send them via bbwincmd but the bbwin
client is made for this task.....
So, looking at this from the other side, the xymon server appears to
be resetting the session after about 22MB of data has been sent (I
know, this is ludicrous, but it is windows). Nothing in the xymond
logs (except for the occasional data flooding error ("1st line
client", always)); on the client side it reports it can't send the
data to the xymon server.
Depending on what auditting you have enabled, 22MB is very easy to
achieve! Turn on Security event logging including success and failure
and it's almost guaranteed :)
David.
I've set the MAXMSG_* to quite silly levels:
# ipcs
------ Shared Memory Segments --------
key shmid owner perms bytes
nattch status
0x01034be7 16908288 xymon 600 102400000 2
0x02034be7 16941057 xymon 600 102400000 2
0x03034be7 16973826 xymon 600 102400000 2
0x04034be7 17006595 xymon 600 102400000 2
0x05034be7 17039364 xymon 600 262144 1
0x06034be7 17072133 xymon 600 32768 1
0x07034be7 17104902 xymon 600 102400000 2
0x08034be7 17137671 xymon 600 102400000 2
0x09034be7 17170440 xymon 600 131072 1
Anything up to and including this size has no effect on the problem.
Looking at the tcpdump stream, the bbwin client sends data normally
with regular ACKs from xymond till around that 22MB mark then xymond
responds with a FIN packet, then with RST packets and the session
shuts down. Nothing in the packets themselves indicate what the
problem is.
If anyone can help with this, please, it would be great.
thanks, Phil