Reduce log spam from rpc.statd

This only reports failed attempts to contact hosts on the first attempt.
This commit is contained in:
Doug Rabson 2019-02-03 08:15:26 +00:00
parent 4ca6f22e91
commit 2335240c66

View File

@ -248,9 +248,12 @@ void init_file(const char *filename)
/* /*
Purpose: Perform SM_NOTIFY procedure at specified host Purpose: Perform SM_NOTIFY procedure at specified host
Returns: TRUE if success, FALSE if failed. Returns: TRUE if success, FALSE if failed.
Notes: Only report failure if verbose is non-zero. Caller will
only set verbose to non-zero for the first attempt to
contact the host.
*/ */
static int notify_one_host(char *hostname) static int notify_one_host(char *hostname, int verbose)
{ {
struct timeval timeout = { 20, 0 }; /* 20 secs timeout */ struct timeval timeout = { 20, 0 }; /* 20 secs timeout */
CLIENT *cli; CLIENT *cli;
@ -277,7 +280,8 @@ static int notify_one_host(char *hostname)
(xdrproc_t)xdr_void, &dummy, timeout) (xdrproc_t)xdr_void, &dummy, timeout)
!= RPC_SUCCESS) != RPC_SUCCESS)
{ {
syslog(LOG_ERR, "Failed to contact rpc.statd at host %s", hostname); if (verbose)
syslog(LOG_ERR, "Failed to contact rpc.statd at host %s", hostname);
clnt_destroy(cli); clnt_destroy(cli);
return (FALSE); return (FALSE);
} }
@ -346,7 +350,7 @@ void notify_hosts(void)
{ {
if (hp->notifyReqd) if (hp->notifyReqd)
{ {
if (notify_one_host(hp->hostname)) if (notify_one_host(hp->hostname, attempts == 0))
{ {
hp->notifyReqd = FALSE; hp->notifyReqd = FALSE;
sync_file(); sync_file();