2014-11-25 14 views
0

NagVis addon과 함께 NagiosBP nagios 비즈니스 프로세스 애드온을 사용하려고합니다. 내 Nagios 서버는 원격이며 TCP 포트를 통해 mklivestatus를 통해 Nagios 데이터를 내 보냅니다.유닉스 소켓 대신 tcp 소켓을 사용하도록 nagios 비즈니스 프로세스 (nagiosbp)를 구성 할 수 있습니까?

NagVis는 tcp 소켓을 사용하도록 쉽게 구성되지만 NagiosBP는 로컬 유닉스 소켓을 사용하도록 구성 만 가능합니다. NagiosBP가 tcp 소켓을 사용하도록 설정하는 방법이 있습니까?

답변

1

ndodb.pm은 TCP 소켓을 사용할 수 있도록 수정해야합니다.

  my @livestatus = split(':',$dbparam{'ndo_livestatus_socket'}); 

      if ($livestatus[0] eq 'tcp') { 
       $socket = IO::Socket::INET->new ("PeerHost" => $livestatus[1], "PeerPort" => $livestatus[2], "Proto" => $livestatus[0], "Type" => SOCK_STREAM, "Timeout" => 15) or die "unable to connect to tcp socket \"" . $dbparam{'ndo_livestatus_socket'} . "\": $!\n"; 
      } else { 
       $socket = IO::Socket::UNIX->new ("Peer" => $dbparam{'ndo_livestatus_socket'}, "Type" => SOCK_STREAM, "Timeout" => 15) or die "unable to connect to unix socket \"" . $dbparam{'ndo_livestatus_socket'} . "\": $!\n"; 
      } 

ndodb.pm 파일에는 3 개의 장소가 수정되어야합니다.