nfs-utils - Silencing mountd
Subsystems (2)
PATCH 1/1 nfs-utils - Silencing mountd
Hello,
Here is a patch to the nfs-utils-1.0.6 rpc.mountd that eliminates 4 syslog messages that are logged during _successful_ mounts and showmount queries. This should save quite a bit of disk space w.r.t syslog logs.
3 of the were converted to error messages
and one was eliminated.
Question: Does anybody depend on or use these messages? If not, could this be added to the next release of nfs-utils?
SteveD.
utils/mountd/mountd.c renamed from utils/mountd/mountd.c.org +13 -9
@@ -90,10 +90,11 @@ mount_dump_1_svc(struct svc_req *rqstp, {struct sockaddr_in *addr = (struct sockaddr_in *)svc_getcaller (rqstp->rq_xprt); -xlog (L_NOTICE ,"dump request from %s" , -inet_ntoa (addr->sin_addr)); - *res =mountlist_list (); +if ((*res =mountlist_list ()) ==NULL ) +xlog (L_WARNING ,"dump request from %s failed." , +inet_ntoa (addr->sin_addr)); +return 1 ; }
@@ -143,9 +144,11 @@ mount_export_1_svc(struct svc_req *rqstp {struct sockaddr_in *addr = (struct sockaddr_in *)svc_getcaller (rqstp->rq_xprt); -xlog (L_NOTICE ,"export request from %s" , -inet_ntoa (addr->sin_addr)); - *resp =get_exportlist (); + +if ((*resp =get_exportlist ()) ==NULL ) +xlog (L_WARNING ,"export request from %s failed." , +inet_ntoa (addr->sin_addr)); +return 1 ; }
@@ -154,9 +157,10 @@ mount_exportall_1_svc(struct svc_req *rq {struct sockaddr_in *addr = (struct sockaddr_in *)svc_getcaller (rqstp->rq_xprt); -xlog (L_NOTICE ,"exportall request from %s" , -inet_ntoa (addr->sin_addr)); - *resp =get_exportlist (); + +if ((*resp =get_exportlist ()) ==NULL ) +xlog (L_WARNING ,"exportall request from %s failed." , +inet_ntoa (addr->sin_addr));return 1 ; }
utils/mountd/auth.c renamed from utils/mountd/auth.c.org +1 -2
@@ -194,9 +194,8 @@ auth_authenticate(char *what, struct socbreak ;case success: -xlog (L_NOTICE ,"authenticated %s request from %s:%d for %s (%s)" , - what, hp->h_name,ntohs (caller->sin_port), path, epath);break ; +default :xlog (L_NOTICE ,"%s request from %s:%d for %s (%s) gave %d" , what, hp->h_name,ntohs (caller->sin_port), path, epath, error);
G'day,
Quoted 4 lines · Steve Dickson
Here is a patch to the nfs-utils-1.0.6 rpc.mountd that eliminates 4 syslog messages that are logged during _successful_ mounts and showmount queries. This should save quite a bit of disk space w.r.t syslog logs.
Actually, I find the "authenticated mount request from..." message useful in tracking down strange but nonfatal bugs on busy servers with many mounts from many clients. Not all NFS or RPC error messages tell you which client was involved, so correlating those messages with mount messages can help narrow the list.
But the other 3 are noise.
Greg.
Signature · 12 lines
Greg Banks, R&D Software Engineer, SGI Australian Software Group. I don't speak for SGI. ------------------------------------------------------- This SF.Net email is sponsored by The 2004 JavaOne(SM) Conference Learn from the experts at JavaOne(SM), Sun's Worldwide Java Developer Conference, June 28 - July 1 at the Moscone Center in San Francisco, CA REGISTER AND SAVE! http://java.sun.com/javaone/sf Priority Code NWMGYKND _______________________________________________ NFS maillist - [email protected] https://lists.sourceforge.net/lists/listinfo/nfs
Quoted 7 lines · Greg Banks
Actually, I find the "authenticated mount request from..." message useful in tracking down strange but nonfatal bugs on busy servers with many mounts from many clients. Not all NFS or RPC error messages tell you which client was involved, so correlating those messages with mount messages can help narrow the list.
True... the authenticated message is a good way to see that a client is able to communicate with the server... but in reality it doesn't mean much... and every error message in the same code path (i.e. in auth_authenticate()) gives a pretty detail error message of who and what happen..
SteveD.
-------------------------------------------------------
This SF.Net email is sponsored by The 2004 JavaOne(SM) Conference Learn from the experts at JavaOne(SM), Sun's Worldwide Java Developer Conference, June 28 - July 1 at the Moscone Center in San Francisco, CA REGISTER AND SAVE! http://java.sun.com/javaone/sf Priority Code NWMGYKND
_______________________________________________
NFS maillist - [email protected]
https://lists.sourceforge.net/lists/listinfo/nfs
Quoted 10 lines · Steve Dickson
Quoted 3 lines · Greg Banks
Actually, I find the "authenticated mount request from..." message useful [...]
True... the authenticated message is a good way to see that a client is able to communicate with the server... but in reality it doesn't mean much... and every error message in the same code path (i.e. in
auth_authenticate()) gives a pretty detail error message of who and what happen..
Sure, but I'm talking about cases where you get wacky interop problems in NFS or NLM traffic in the few minutes after the mount sequence.
Also, there are times when it's useful to "tail -f" the syslog looking for these messages, e.g. at Cthon you can tell whose testing against your server at any moment. If you see a strange message you can wander over and talk to those guys and start a debugging session. This was how the MacOS X lock cookie issue was found at Cthon '03.
Greg.
Signature · 12 lines
Greg Banks, R&D Software Engineer, SGI Australian Software Group. I don't speak for SGI. ------------------------------------------------------- This SF.Net email is sponsored by The 2004 JavaOne(SM) Conference Learn from the experts at JavaOne(SM), Sun's Worldwide Java Developer Conference, June 28 - July 1 at the Moscone Center in San Francisco, CA REGISTER AND SAVE! http://java.sun.com/javaone/sf Priority Code NWMGYKND _______________________________________________ NFS maillist - [email protected] https://lists.sourceforge.net/lists/listinfo/nfs
Ok, here is the patch with the "authenticated message" put back... It turns out the message is more useful than I though...
SteveD.
utils/mountd/mountd.c renamed from utils/mountd/mountd.c.org +13 -9
@@ -90,10 +90,11 @@ mount_dump_1_svc(struct svc_req *rqstp, {struct sockaddr_in *addr = (struct sockaddr_in *)svc_getcaller (rqstp->rq_xprt); -xlog (L_NOTICE ,"dump request from %s" , -inet_ntoa (addr->sin_addr)); - *res =mountlist_list (); +if ((*res =mountlist_list ()) ==NULL ) +xlog (L_WARNING ,"dump request from %s failed." , +inet_ntoa (addr->sin_addr)); +return 1 ; }
@@ -143,9 +144,11 @@ mount_export_1_svc(struct svc_req *rqstp {struct sockaddr_in *addr = (struct sockaddr_in *)svc_getcaller (rqstp->rq_xprt); -xlog (L_NOTICE ,"export request from %s" , -inet_ntoa (addr->sin_addr)); - *resp =get_exportlist (); + +if ((*resp =get_exportlist ()) ==NULL ) +xlog (L_WARNING ,"export request from %s failed." , +inet_ntoa (addr->sin_addr)); +return 1 ; }
@@ -154,9 +157,10 @@ mount_exportall_1_svc(struct svc_req *rq {struct sockaddr_in *addr = (struct sockaddr_in *)svc_getcaller (rqstp->rq_xprt); -xlog (L_NOTICE ,"exportall request from %s" , -inet_ntoa (addr->sin_addr)); - *resp =get_exportlist (); + +if ((*resp =get_exportlist ()) ==NULL ) +xlog (L_WARNING ,"exportall request from %s failed." , +inet_ntoa (addr->sin_addr));return 1 ; }