From: Omar B. <oma...@pl...> - 2006-03-15 23:39:32
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hello, I've recently compiled nagios 2 and perfparse 0.105.6. I've two Debian sarge machines - perfparsemaster and perfparse1. The machine named perfparsemaster is running an instance of mysql5 and perfparsed. The machine I'm calling perfparse1 is running nagios2, perfparse-log2socket, and mysql5. Here's the perfparse configure line: ./configure --prefix=/usr/local/nagios - --with-imagedir=/usr/local/nagios/share/images/ - --with-cgidir=/usr/local/nagios/sbin --with-http_image_path=/nagios/images perfparsed starts up on perfparsemaster without any errors and binds to port 1976 as the configuration specifies. However, whenever I try to connect to port 1976, perfparsed dies. I've tried connecting via perfparse-log2socket from perfparse1, via telnet from perfparse1, and via telnet from perfparsemaster. In all cases, the daemon simply dies. perfparse-log2socket produces the following messages in its log: 2006/03/15 22:48:55 [ storage.c:95 27894 ] storage_socket_output module successfully loaded perfparsed doesn't generate any log entries before it dies. an strace of perfparsed (on perfparsemaster) during a connection attempt generates the following: perfparsemaster:/usr/local/nagios# strace -fp 17445 Process 17445 attached - interrupt to quit select(6, [5], NULL, NULL, {0, 770000}) = 0 (Timeout) utime("/usr/local/nagios/var/storage_modules.status", NULL) = 0 waitpid(-1, NULL, WNOHANG) = -1 ECHILD (No child processes) select(6, [5], NULL, NULL, {1, 0}) = 0 (Timeout) utime("/usr/local/nagios/var/storage_modules.status", NULL) = 0 waitpid(-1, NULL, WNOHANG) = -1 ECHILD (No child processes) select(6, [5], NULL, NULL, {1, 0}) = 0 (Timeout) utime("/usr/local/nagios/var/storage_modules.status", NULL) = 0 waitpid(-1, NULL, WNOHANG) = -1 ECHILD (No child processes) select(6, [5], NULL, NULL, {1, 0}) = 0 (Timeout) utime("/usr/local/nagios/var/storage_modules.status", NULL) = 0 waitpid(-1, NULL, WNOHANG) = -1 ECHILD (No child processes) select(6, [5], NULL, NULL, {1, 0}) = 0 (Timeout) utime("/usr/local/nagios/var/storage_modules.status", NULL) = 0 waitpid(-1, NULL, WNOHANG) = -1 ECHILD (No child processes) select(6, [5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 680000}) accept(5, 0, NULL) = 6 fcntl64(6, F_GETFL) = 0x2 (flags O_RDWR) fcntl64(6, F_SETFL, O_RDWR|O_NONBLOCK) = 0 write(5, "Hello", 5) = -1 EPIPE (Broken pipe) - --- SIGPIPE (Broken pipe) @ 0 (0) --- Process 17445 detached Here's the running config for perfparsed: perfparsemaster:/usr/local/nagios# ./bin/perfparsed -c etc/perfparse.cfg --show_config Perfparsed [options] # File where Perfparse logs messages # Error_Log = "string" Error_Log = "/var/log/perfparse.log" # Rotate Perfparse log files # Error_Log_Rotate = "Y/N" Error_Log_Rotate = "Yes" # Keep N days of error log. Compress recent logs and remove too old ones # Error_Log_Keep_N_Days = "value" Error_Log_Keep_N_Days = "7" # When perfparse cannot parse a line, it drops it to that file # Drop_File = "string" Drop_File = "/tmp/perfparse.drop" # # Drop_File_Rotate = "Y/N" Drop_File_Rotate = "Yes" # Keep N days of drop file log. Compress recent logs and remove too old ones # Drop_File_Keep_N_Days = "value" Drop_File_Keep_N_Days = "7" # Port for perfparsed server # Put 0 or "" to disable the server # Server_Port = "value" Server_Port = "1976" # Log source from nagios (or other tools) that perfparse will scan # Authorized values: a file name, '-' for stdin, '|' for a fifo and '>' for a host:port socket # For sockets, a command 'history' will be sent before retreiving the data # Service_Log = "string" Service_Log = "" # Save the read position in the nagios log file ? If yes, perfparse will start from that position instead of from the beginning # Service_Log_Save_Position = "Y/N" Service_Log_Save_Position = "yes" # Path for files containing the read position for nagios log files # Service_Log_Position_Mark_Path = "string" Service_Log_Position_Mark_Path = "" # Lock file for perfparsed # Daemon_Lock = "string" Daemon_Lock = "/usr/local/nagios/var/perfparsed.lock" # Run perfparsed as a daemon # Daemonize = "Y/N" Daemonize = "yes" # Perform some periodic cleanup every day # Periodic_Cleanup = "Y/N" Periodic_Cleanup = "no" # Lock file for perfparsed periodic cleanup process # Periodic_Cleanup_Lock = "string" Periodic_Cleanup_Lock = "/usr/local/nagios/var/perfparsed_periodic_cleanup.lock" # Perform some periodic cleanup every day at HHMM # Periodic_Cleanup_Hour = "value" Periodic_Cleanup_Hour = "0230" # Dummy hostname if gethostname() does not work # Dummy_Hostname = "string" Dummy_Hostname = "dummy" # Don't store raw data # No_Raw_Data = "Y/N" No_Raw_Data = "no" # Don't store bin data # No_Bin_Data = "Y/N" No_Bin_Data = "no" # Path where storage modules are # Storage_Modules_Dir = "string" Storage_Modules_Dir = "/usr/local/nagios/lib" # Modules to load (Coma separated values) # Storage_Modules_Load = "string" Storage_Modules_Load = "mysql" # File to contain Storage Modules Status # Storage_Modules_Status_File = "string" Storage_Modules_Status_File = "/usr/local/nagios/var/storage_modules.status" # Storage Module : mysql # ============================== # Database user # DB_User = "string" DB_User = "OBFUSCATED" # Database password # DB_Pass = "string" DB_Pass = "OBFUSCATED" # Database name # DB_Name = "string" DB_Name = "perfparse" # Database hostname # DB_Host = "string" DB_Host = "127.0.0.1" Unfortunately, the "Broken Pipe" in the strace doesn't seem particularly informative - I would expect it could be related to any number of problems, depending on precisely what perfparsed does when a connection is initially opened. Google's not been particularly helpful in this regard, and I've not been able to find anything pertinent in the archives or the wiki. I have difficulty believing this has anything to do with the client and I can't think of any way that the server's configuration would result in such a symptom. Before I fall back to my act-of-desperation option (replicating the whole configuration from scratch on a different platform) I thought I'd ask if A)anyone's seen behavior like this, B) I've completely missed some key documentation, and C) anyone has additional suggestions for how I could proceed. Thanks for your time, - -- Omar Buhidma - -----BEGIN PGP PUBLIC KEY BLOCK----- Version: GnuPG v1.4.2 (GNU/Linux) mQGiBEQYPIERBACOkLcYfLMtmFjaHqel6JZt7eKmFyGJ6Z1PqOHeYA6Fz1QmsJEJ KrNnweUXbPu6xQBiu4EUWN4Tyv/qq5O/oe6GAvYFnroFOiUB4RbvaHNw9pO9lgQW De5EURJDcvBMK/Wn00ixlajZBPAaOBgvhN2UxvUplIpdbQbCgz1YgzNqawCgqZFk ORsTHNPFphhzdU+zP1i/318EAI5bmvPD707lH+a2sZfSpzcIGpR8y0SuBCdFejzX MAw5KFezacKtprpOCeM/tLj+hJ2HN/KgDjNrRqE5+NScFG5goReKuTP+K2sgUrei 7R8hDKZaGXRwL88xP1MUt6XpD000h4TiiwsK+TMHV1Df2fygcJaYxzI8/U40TJns TZxGA/9Cxulk8Hcw18AChMYVo11hmT8Ua1hfp/Df565YqDCG9WoL7vUHOVtuIyKl lLzPb3dCJDOM3clYgP64o5qTUcmRPjsB/mPwAVhWL+kyegtbXHrgUp4SKO1sA2/G IXsBiE1aJxNmC0/TQfTuZIvuO8EgvowcelpBK46y73j2S2NrL7QpT21hciBCdWhp ZG1hIDxvbWFyLmJ1aGlkbWFAcGxhY2VtYXJrLmNvbT6IYwQTEQIAIwUCRBg8gQUJ AHanAAYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJEBpteCUxrHoTnEQAnimknFoG 8xfhHgPrKliuOTrkO6a2AJ9EfWa63CYqBZ5u1tyvdqy8MRL3b7kCDQREGD26EAgA klh5rxNpFxVES3VpL1d5Tfms/QoEonv2/Gbsie92HxcZFBZWvAKqrlU5ysn2rk2Z LgZTu9zdsJZ5am0XW0mpkFS3sv6oLCq5W8SlylHxj8FEyzZVcbNWn+Am8oUkhL36 zTgwG8cYdChTEFlBrrnt41K42zMtDAn1IdxAix5q7VIqJtGHh5RbOwNBMqNrG1X8 K0YVZKVz3zAt6O4dK2AWpZ3tdu9dx8t21Upc3ua21sCk3gQ7eaDIxMEMY2fBRNt7 EwvdZPwsy0fGAwJJzRNz+DED4znrX/lODbHA9eUA9rfv3yzWNKVVxz8DcUGlGOih 9Ja1ia2DFnvIZe7h4KgrlwADBQf+Jzz0+vHjTJHjV2tqptaUI5rXZlnNpSbqSjXw GWMYzBnPop9bAwuAKo5j5sDg5ze8ZHuJw/6lb42LsxSHC4Rt3IKYHnS/+KdLeKwU gidGAfJkJYt0nVumGJzsnZMFlVcKNLjqAlYh8uksGCA5G3zDcSWa52u8ca0CwncN avy0s6ybtLDXuRf0vH25jED5OZxx4ECGVej6+RGipkiRdIUbErm8f8FWt/yG0GJq gFJgUxu85SFzdOebt6+qd6LHBH94ZVt/ksr9heytHHc9rXDjQDtHHokJhUSgx2Nk dq/1UQ5twXj2IdJHIdST8HGVIHxVILeZQWdSLueiTJ/QgeQXeohMBBgRAgAMBQJE GD26BQkAdqcAAAoJEBpteCUxrHoT+4sAn3e6cixCWR4/JKeml55a5hXDX3TYAKCj jizfPrDDUeBkPU+hMwnrrb0umA== =Vbil - -----END PGP PUBLIC KEY BLOCK----- -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.2 (GNU/Linux) iD8DBQFEGKQQGm14JTGsehMRAhVnAJ9Y8WEsTOMz7No2AF/kD8rIJnoxWQCeNDzw yjbQNt+0ro1drKOM99ysXaY= =c27R -----END PGP SIGNATURE----- |