Skip to content

Commit a9444f8

Browse files
committed
feat: 🎸 simplify logging format
1 parent eae1a50 commit a9444f8

File tree

1 file changed

+54
-115
lines changed

1 file changed

+54
-115
lines changed

src/nfs/v4/format.ts

Lines changed: 54 additions & 115 deletions
Original file line numberDiff line numberDiff line change
@@ -541,157 +541,78 @@ const formatFileHandle = (fh: structs.Nfsv4Fh): string => {
541541

542542
export const formatNfsv4Request = (req: msg.Nfsv4Request, tab: string = ''): string => {
543543
if (req instanceof msg.Nfsv4AccessRequest) {
544-
return 'ACCESS' + printTree(tab, [(tab) => `access = ${formatNfsv4Access(req.access)}`]);
544+
return `ACCESS access = ${formatNfsv4Access(req.access)}`;
545545
} else if (req instanceof msg.Nfsv4CloseRequest) {
546546
return `CLOSE seqid = ${req.seqid}, stateid = ${formatStateid(req.openStateid, tab)}`;
547547
} else if (req instanceof msg.Nfsv4CommitRequest) {
548-
return 'COMMIT' + printTree(tab, [(tab) => `offset = ${req.offset}`, (tab) => `count = ${req.count}`]);
548+
return `COMMIT offset = ${req.offset}, count = ${req.count}`;
549549
} else if (req instanceof msg.Nfsv4CreateRequest) {
550-
return (
551-
'CREATE' +
552-
printTree(tab, [
553-
(tab) => `objtype = ${formatNfsv4FType(req.objtype.type)}`,
554-
(tab) => `objname = "${req.objname}"`,
555-
])
556-
);
550+
return `CREATE objtype = ${formatNfsv4FType(req.objtype.type)}, objname = "${req.objname}"`;
557551
} else if (req instanceof msg.Nfsv4DelegpurgeRequest) {
558-
return 'DELEGPURGE' + printTree(tab, [(tab) => `clientid = ${req.clientid}`]);
552+
return `DELEGPURGE clientid = ${req.clientid}`;
559553
} else if (req instanceof msg.Nfsv4DelegreturnRequest) {
560-
return 'DELEGRETURN' + printTree(tab, [(tab) => `stateid = ${formatStateid(req.delegStateid, tab)}`]);
554+
return `DELEGRETURN stateid = ${formatStateid(req.delegStateid, tab)}`;
561555
} else if (req instanceof msg.Nfsv4GetattrRequest) {
562-
return 'GETATTR' + printTree(tab, [(tab) => `attrs = ${formatNfsv4Bitmap(req.attrRequest)}`]);
556+
return `GETATTR attrs = ${formatNfsv4Bitmap(req.attrRequest)}`;
563557
} else if (req instanceof msg.Nfsv4GetfhRequest) {
564558
return 'GETFH';
565559
} else if (req instanceof msg.Nfsv4LinkRequest) {
566-
return 'LINK' + printTree(tab, [(tab) => `newname = "${req.newname}"`]);
560+
return `LINK newname = "${req.newname}"`;
567561
} else if (req instanceof msg.Nfsv4LockRequest) {
568-
return (
569-
'LOCK' +
570-
printTree(tab, [
571-
(tab) => `locktype = ${formatNfsv4LockType(req.locktype)}`,
572-
(tab) => `reclaim = ${req.reclaim}`,
573-
(tab) => `offset = ${req.offset}`,
574-
(tab) => `length = ${req.length}`,
575-
])
576-
);
562+
return `LOCK locktype = ${formatNfsv4LockType(req.locktype)}, reclaim = ${req.reclaim}, offset = ${req.offset}, length = ${req.length}`;
577563
} else if (req instanceof msg.Nfsv4LocktRequest) {
578-
return (
579-
'LOCKT' +
580-
printTree(tab, [
581-
(tab) => `locktype = ${formatNfsv4LockType(req.locktype)}`,
582-
(tab) => `offset = ${req.offset}`,
583-
(tab) => `length = ${req.length}`,
584-
])
585-
);
564+
return `LOCKT locktype = ${formatNfsv4LockType(req.locktype)}, offset = ${req.offset}, length = ${req.length}`;
586565
} else if (req instanceof msg.Nfsv4LockuRequest) {
587-
return (
588-
'LOCKU' +
589-
printTree(tab, [
590-
(tab) => `locktype = ${formatNfsv4LockType(req.locktype)}`,
591-
(tab) => `seqid = ${req.seqid}`,
592-
(tab) => `stateid = ${formatStateid(req.lockStateid, tab)}`,
593-
(tab) => `offset = ${req.offset}`,
594-
(tab) => `length = ${req.length}`,
595-
])
596-
);
566+
return `LOCKU locktype = ${formatNfsv4LockType(req.locktype)}, seqid = ${req.seqid}, stateid = ${formatStateid(req.lockStateid, tab)}, offset = ${req.offset}, length = ${req.length}`;
597567
} else if (req instanceof msg.Nfsv4LookupRequest) {
598-
return 'LOOKUP' + printTree(tab, [(tab) => `objname = "${req.objname}"`]);
568+
return `LOOKUP objname = "${req.objname}"`;
599569
} else if (req instanceof msg.Nfsv4LookuppRequest) {
600570
return 'LOOKUPP';
601571
} else if (req instanceof msg.Nfsv4NverifyRequest) {
602-
return 'NVERIFY' + printTree(tab, [(tab) => `attrs = ${formatNfsv4Bitmap(req.objAttributes.attrmask)}`]);
572+
return `NVERIFY attrs = ${formatNfsv4Bitmap(req.objAttributes.attrmask)}`;
603573
} else if (req instanceof msg.Nfsv4OpenRequest) {
604-
const items: Array<(tab: string) => string> = [
605-
(tab) => `seqid = ${req.seqid}`,
606-
(tab) => `shareAccess = ${formatNfsv4OpenAccess(req.shareAccess)}`,
607-
(tab) => `shareDeny = ${formatNfsv4OpenDeny(req.shareDeny)}`,
608-
(tab) => `opentype = ${formatNfsv4OpenFlags(req.openhow.opentype)}`,
609-
];
610-
if (req.openhow.how) {
611-
items.push((tab) => `createmode = ${formatNfsv4CreateMode(req.openhow.how!.mode)}`);
612-
}
613-
items.push((tab) => `claim = ${formatNfsv4OpenClaimType(req.claim.claimType)}`);
614-
return 'OPEN' + printTree(tab, items);
574+
const createInfo = req.openhow.how ? `, createmode = ${formatNfsv4CreateMode(req.openhow.how!.mode)}` : '';
575+
return `OPEN seqid = ${req.seqid}, shareAccess = ${formatNfsv4OpenAccess(req.shareAccess)}, shareDeny = ${formatNfsv4OpenDeny(req.shareDeny)}, opentype = ${formatNfsv4OpenFlags(req.openhow.opentype)}${createInfo}, claim = ${formatNfsv4OpenClaimType(req.claim.claimType)}`;
615576
} else if (req instanceof msg.Nfsv4OpenattrRequest) {
616-
return 'OPENATTR' + printTree(tab, [(tab) => `createdir = ${req.createdir}`]);
577+
return `OPENATTR createdir = ${req.createdir}`;
617578
} else if (req instanceof msg.Nfsv4OpenConfirmRequest) {
618-
return (
619-
'OPEN_CONFIRM' +
620-
printTree(tab, [(tab) => `stateid = ${formatStateid(req.openStateid, tab)}`, (tab) => `seqid = ${req.seqid}`])
621-
);
579+
return `OPEN_CONFIRM stateid = ${formatStateid(req.openStateid, tab)}, seqid = ${req.seqid}`;
622580
} else if (req instanceof msg.Nfsv4OpenDowngradeRequest) {
623-
return (
624-
'OPEN_DOWNGRADE' +
625-
printTree(tab, [
626-
(tab) => `stateid = ${formatStateid(req.openStateid, tab)}`,
627-
(tab) => `seqid = ${req.seqid}`,
628-
(tab) => `shareAccess = ${formatNfsv4OpenAccess(req.shareAccess)}`,
629-
(tab) => `shareDeny = ${formatNfsv4OpenDeny(req.shareDeny)}`,
630-
])
631-
);
581+
return `OPEN_DOWNGRADE stateid = ${formatStateid(req.openStateid, tab)}, seqid = ${req.seqid}, shareAccess = ${formatNfsv4OpenAccess(req.shareAccess)}, shareDeny = ${formatNfsv4OpenDeny(req.shareDeny)}`;
632582
} else if (req instanceof msg.Nfsv4PutfhRequest) {
633583
return `PUTFH fh = ${formatFileHandle(req.object)}`;
634584
} else if (req instanceof msg.Nfsv4PutpubfhRequest) {
635585
return 'PUTPUBFH';
636586
} else if (req instanceof msg.Nfsv4PutrootfhRequest) {
637587
return 'PUTROOTFH';
638588
} else if (req instanceof msg.Nfsv4ReadRequest) {
639-
return (
640-
'READ' +
641-
printTree(tab, [
642-
(tab) => `stateid = ${formatStateid(req.stateid, tab)}`,
643-
(tab) => `offset = ${req.offset}`,
644-
(tab) => `count = ${req.count}`,
645-
])
646-
);
589+
return `READ stateid = ${formatStateid(req.stateid, tab)}, offset = ${req.offset}, count = ${req.count}`;
647590
} else if (req instanceof msg.Nfsv4ReaddirRequest) {
648-
return (
649-
'READDIR' +
650-
printTree(tab, [
651-
(tab) => `cookie = ${req.cookie}`,
652-
(tab) => `dircount = ${req.dircount}`,
653-
(tab) => `maxcount = ${req.maxcount}`,
654-
(tab) => `attrs = ${formatNfsv4Bitmap(req.attrRequest)}`,
655-
])
656-
);
591+
return `READDIR cookie = ${req.cookie}, dircount = ${req.dircount}, maxcount = ${req.maxcount}, attrs = ${formatNfsv4Bitmap(req.attrRequest)}`;
657592
} else if (req instanceof msg.Nfsv4ReadlinkRequest) {
658593
return 'READLINK';
659594
} else if (req instanceof msg.Nfsv4RemoveRequest) {
660-
return 'REMOVE' + printTree(tab, [(tab) => `target = "${req.target}"`]);
595+
return `REMOVE target = "${req.target}"`;
661596
} else if (req instanceof msg.Nfsv4RenameRequest) {
662-
return 'RENAME' + printTree(tab, [(tab) => `oldname = "${req.oldname}"`, (tab) => `newname = "${req.newname}"`]);
597+
return `RENAME oldname = "${req.oldname}", newname = "${req.newname}"`;
663598
} else if (req instanceof msg.Nfsv4RenewRequest) {
664-
return 'RENEW' + printTree(tab, [(tab) => `clientid = ${req.clientid}`]);
599+
return `RENEW clientid = ${req.clientid}`;
665600
} else if (req instanceof msg.Nfsv4RestorefhRequest) {
666601
return 'RESTOREFH';
667602
} else if (req instanceof msg.Nfsv4SavefhRequest) {
668603
return 'SAVEFH';
669604
} else if (req instanceof msg.Nfsv4SecinfoRequest) {
670-
return 'SECINFO' + printTree(tab, [(tab) => `name = "${req.name}"`]);
605+
return `SECINFO name = "${req.name}"`;
671606
} else if (req instanceof msg.Nfsv4SetattrRequest) {
672-
return (
673-
'SETATTR' +
674-
printTree(tab, [
675-
(tab) => `stateid = ${formatStateid(req.stateid, tab)}`,
676-
(tab) => `attrs = ${formatNfsv4Bitmap(req.objAttributes.attrmask)}`,
677-
])
678-
);
607+
return `SETATTR stateid = ${formatStateid(req.stateid, tab)}, attrs = ${formatNfsv4Bitmap(req.objAttributes.attrmask)}`;
679608
} else if (req instanceof msg.Nfsv4SetclientidRequest) {
680-
return 'SETCLIENTID' + printTree(tab, [(tab) => `callbackIdent = ${req.callbackIdent}`]);
609+
return `SETCLIENTID callbackIdent = ${req.callbackIdent}`;
681610
} else if (req instanceof msg.Nfsv4SetclientidConfirmRequest) {
682-
return 'SETCLIENTID_CONFIRM' + printTree(tab, [(tab) => `clientid = ${req.clientid}`]);
611+
return `SETCLIENTID_CONFIRM clientid = ${req.clientid}`;
683612
} else if (req instanceof msg.Nfsv4VerifyRequest) {
684-
return 'VERIFY' + printTree(tab, [(tab) => `attrs = ${formatNfsv4Bitmap(req.objAttributes.attrmask)}`]);
613+
return `VERIFY attrs = ${formatNfsv4Bitmap(req.objAttributes.attrmask)}`;
685614
} else if (req instanceof msg.Nfsv4WriteRequest) {
686-
return (
687-
'WRITE' +
688-
printTree(tab, [
689-
(tab) => `stateid = ${formatStateid(req.stateid, tab)}`,
690-
(tab) => `offset = ${req.offset}`,
691-
(tab) => `stable = ${formatNfsv4StableHow(req.stable)}`,
692-
(tab) => `length = ${req.data.length}`,
693-
])
694-
);
615+
return `WRITE stateid = ${formatStateid(req.stateid, tab)}, offset = ${req.offset}, stable = ${formatNfsv4StableHow(req.stable)}, length = ${req.data.length}`;
695616
} else if (req instanceof msg.Nfsv4ReleaseLockOwnerRequest) {
696617
return 'RELEASE_LOCKOWNER';
697618
} else if (req instanceof msg.Nfsv4IllegalRequest) {
@@ -702,7 +623,10 @@ export const formatNfsv4Request = (req: msg.Nfsv4Request, tab: string = ''): str
702623

703624
export const formatNfsv4Response = (res: msg.Nfsv4Response, tab: string = ''): string => {
704625
if (res instanceof msg.Nfsv4AccessResponse) {
705-
return `ACCESS (${formatNfsv4Stat(res.status)}) supported = ${formatNfsv4Access(res.resok!.supported)}, access = ${formatNfsv4Access(res.resok!.access)}`;
626+
if (res.status === constants.Nfsv4Stat.NFS4_OK && res.resok) {
627+
return `ACCESS (${formatNfsv4Stat(res.status)}) supported = ${formatNfsv4Access(res.resok.supported)}, access = ${formatNfsv4Access(res.resok.access)}`;
628+
}
629+
return `ACCESS (${formatNfsv4Stat(res.status)})`;
706630
} else if (res instanceof msg.Nfsv4CloseResponse) {
707631
const items: Array<(tab: string) => string> = [];
708632
if (res.status === constants.Nfsv4Stat.NFS4_OK && res.resok) {
@@ -712,7 +636,7 @@ export const formatNfsv4Response = (res: msg.Nfsv4Response, tab: string = ''): s
712636
} else if (res instanceof msg.Nfsv4CommitResponse) {
713637
return `COMMIT (${formatNfsv4Stat(res.status)})`;
714638
} else if (res instanceof msg.Nfsv4CreateResponse) {
715-
return `CREATE (${formatNfsv4Stat(res.status)}) status = ${formatNfsv4Stat(res.status)}`);
639+
return `CREATE (${formatNfsv4Stat(res.status)})`;
716640
} else if (res instanceof msg.Nfsv4DelegpurgeResponse) {
717641
return `DELEGPURGE (${formatNfsv4Stat(res.status)})`;
718642
} else if (res instanceof msg.Nfsv4DelegreturnResponse) {
@@ -724,23 +648,35 @@ export const formatNfsv4Response = (res: msg.Nfsv4Response, tab: string = ''): s
724648
}
725649
return `GETATTR (${formatNfsv4Stat(res.status)})` + printTree(tab, items);
726650
} else if (res instanceof msg.Nfsv4GetfhResponse) {
727-
return `GETFH (${formatNfsv4Stat(res.status)}) fh = ${formatFileHandle(res.resok!.object)}`;
651+
if (res.status === constants.Nfsv4Stat.NFS4_OK && res.resok) {
652+
return `GETFH (${formatNfsv4Stat(res.status)}) fh = ${formatFileHandle(res.resok.object)}`;
653+
}
654+
return `GETFH (${formatNfsv4Stat(res.status)})`;
728655
} else if (res instanceof msg.Nfsv4LinkResponse) {
729656
return `LINK (${formatNfsv4Stat(res.status)})`;
730657
} else if (res instanceof msg.Nfsv4LockResponse) {
731-
return `LOCK (${formatNfsv4Stat(res.status)}) stateid = ${formatStateid(res.resok!.lockStateid, tab)}`;
658+
if (res.status === constants.Nfsv4Stat.NFS4_OK && res.resok) {
659+
return `LOCK (${formatNfsv4Stat(res.status)}) stateid = ${formatStateid(res.resok.lockStateid, tab)}`;
660+
}
661+
return `LOCK (${formatNfsv4Stat(res.status)})`;
732662
} else if (res instanceof msg.Nfsv4LocktResponse) {
733663
return `LOCKT (${formatNfsv4Stat(res.status)})`;
734664
} else if (res instanceof msg.Nfsv4LockuResponse) {
735-
return `LOCKU (${formatNfsv4Stat(res.status)}) stateid = ${formatStateid(res.resok!.lockStateid, tab)}`;
665+
if (res.status === constants.Nfsv4Stat.NFS4_OK && res.resok) {
666+
return `LOCKU (${formatNfsv4Stat(res.status)}) stateid = ${formatStateid(res.resok.lockStateid, tab)}`;
667+
}
668+
return `LOCKU (${formatNfsv4Stat(res.status)})`;
736669
} else if (res instanceof msg.Nfsv4LookupResponse) {
737670
return `LOOKUP (${formatNfsv4Stat(res.status)})`;
738671
} else if (res instanceof msg.Nfsv4LookuppResponse) {
739-
return `LOCKUPP (${formatNfsv4Stat(res.status)})`;
672+
return `LOOKUPP (${formatNfsv4Stat(res.status)})`;
740673
} else if (res instanceof msg.Nfsv4NverifyResponse) {
741674
return `NVERIFY (${formatNfsv4Stat(res.status)})`;
742675
} else if (res instanceof msg.Nfsv4OpenResponse) {
743-
return `OPEN (${formatNfsv4Stat(res.status)}) stateid = ${formatStateid(res.resok!.stateid, tab)}`;
676+
if (res.status === constants.Nfsv4Stat.NFS4_OK && res.resok) {
677+
return `OPEN (${formatNfsv4Stat(res.status)}) stateid = ${formatStateid(res.resok.stateid, tab)}`;
678+
}
679+
return `OPEN (${formatNfsv4Stat(res.status)})`;
744680
} else if (res instanceof msg.Nfsv4OpenattrResponse) {
745681
return `OPENATTR (${formatNfsv4Stat(res.status)})`;
746682
} else if (res instanceof msg.Nfsv4OpenConfirmResponse) {
@@ -762,7 +698,10 @@ export const formatNfsv4Response = (res: msg.Nfsv4Response, tab: string = ''): s
762698
} else if (res instanceof msg.Nfsv4PutrootfhResponse) {
763699
return `PUTROOTFH (${formatNfsv4Stat(res.status)})`;
764700
} else if (res instanceof msg.Nfsv4ReadResponse) {
765-
return `READ (${formatNfsv4Stat(res.status)}) eof = ${res.resok!.eof} length = ${res.resok!.data.length}`;
701+
if (res.status === constants.Nfsv4Stat.NFS4_OK && res.resok) {
702+
return `READ (${formatNfsv4Stat(res.status)}) eof = ${res.resok.eof}, length = ${res.resok.data.length}`;
703+
}
704+
return `READ (${formatNfsv4Stat(res.status)})`;
766705
} else if (res instanceof msg.Nfsv4ReaddirResponse) {
767706
return `READDIR (${formatNfsv4Stat(res.status)})`;
768707
} else if (res instanceof msg.Nfsv4ReadlinkResponse) {

0 commit comments

Comments
 (0)