@@ -380,7 +380,7 @@ Server::FillContainerMD(uint64_t id, eos::fusex::md& dir,
380380
381381 if (dir.operation () == dir.LS ) {
382382 // we put a hard-coded listing limit for service protection
383- if (vid.app != " fuse::restic " ) {
383+ if (vid.app != gOFS -> mFuseNoStallApp ) {
384384 // no restrictions for restic backups
385385 if ((uint64_t )dir.nchildren () > c_max_children) {
386386 // xrootd does not handle E2BIG ... sigh
@@ -1154,7 +1154,7 @@ Server::OpBeginFlush(const std::string& id,
11541154 std::string* response,
11551155 uint64_t * clock)
11561156{
1157- gOFS ->MgmStats .Add (" Eosxd::ext::BEGINFLUSH" , vid.uid , vid.gid , 1 );
1157+ gOFS ->MgmStats .Add (" Eosxd::ext::BEGINFLUSH" , vid.uid , vid.gid , 1 , vid. app );
11581158 EXEC_TIMING_BEGIN (" Eosxd::ext::BEGINFLUSH" );
11591159 // this is a flush begin/end indicator
11601160 Flushs ().beginFlush (md.md_ino (), md.clientuuid ());
@@ -1176,7 +1176,7 @@ Server::OpEndFlush(const std::string& id,
11761176 std::string* response,
11771177 uint64_t * clock)
11781178{
1179- gOFS ->MgmStats .Add (" Eosxd::ext::ENDFLUSH" , vid.uid , vid.gid , 1 );
1179+ gOFS ->MgmStats .Add (" Eosxd::ext::ENDFLUSH" , vid.uid , vid.gid , 1 , vid. app );
11801180 EXEC_TIMING_BEGIN (" Eosxd::ext::ENDFLUSH" );
11811181 Flushs ().endFlush (md.md_ino (), md.clientuuid ());
11821182 eos::fusex::response resp;
@@ -1217,10 +1217,10 @@ Server::OpGetLs(const std::string& id,
12171217 " Eosxd::ext::GET" );
12181218
12191219 if (md.operation () == md.LS ) {
1220- gOFS ->MgmStats .Add (" Eosxd::ext::LS" , vid.uid , vid.gid , 1 );
1220+ gOFS ->MgmStats .Add (" Eosxd::ext::LS" , vid.uid , vid.gid , 1 , vid. app );
12211221 (*parent)[md.md_ino ()].set_operation (md.LS );
12221222 } else {
1223- gOFS ->MgmStats .Add (" Eosxd::ext::GET" , vid.uid , vid.gid , 1 );
1223+ gOFS ->MgmStats .Add (" Eosxd::ext::GET" , vid.uid , vid.gid , 1 , vid. app );
12241224 }
12251225
12261226 size_t n_attached = 1 ;
@@ -1242,7 +1242,7 @@ Server::OpGetLs(const std::string& id,
12421242 auto map = (*parent)[md.md_ino ()].children ();
12431243 auto it = map.begin ();
12441244 size_t n_caps = 0 ;
1245- gOFS ->MgmStats .Add (" Eosxd::ext::LS-Entry" , vid.uid , vid.gid , map.size ());
1245+ gOFS ->MgmStats .Add (" Eosxd::ext::LS-Entry" , vid.uid , vid.gid , map.size (), vid. app );
12461246
12471247 for (; it != map.end (); ++it) {
12481248 // this is a map by inode
@@ -1390,7 +1390,7 @@ Server::OpSet(const std::string& id,
13901390 std::string* response,
13911391 uint64_t * clock)
13921392{
1393- gOFS ->MgmStats .Add (" Eosxd::ext::SET" , vid.uid , vid.gid , 1 );
1393+ gOFS ->MgmStats .Add (" Eosxd::ext::SET" , vid.uid , vid.gid , 1 , vid. app );
13941394
13951395 if (!ValidateCAP (md, W_OK | SA_OK, vid)) {
13961396 std::string perm = " W" ;
@@ -1432,7 +1432,7 @@ Server::OpSetDirectory(const std::string& id,
14321432 std::string* response,
14331433 uint64_t * clock)
14341434{
1435- gOFS ->MgmStats .Add (" Eosxd::ext::SETDIR" , vid.uid , vid.gid , 1 );
1435+ gOFS ->MgmStats .Add (" Eosxd::ext::SETDIR" , vid.uid , vid.gid , 1 , vid. app );
14361436 EXEC_TIMING_BEGIN (" Eosxd::ext::SETDIR" );
14371437 uint64_t md_pino = md.md_pino ();
14381438
@@ -1715,19 +1715,19 @@ Server::OpSetDirectory(const std::string& id,
17151715
17161716 switch (op) {
17171717 case MOVE:
1718- gOFS ->MgmStats .Add (" Eosxd::ext::MV" , vid.uid , vid.gid , 1 );
1718+ gOFS ->MgmStats .Add (" Eosxd::ext::MV" , vid.uid , vid.gid , 1 , vid. app );
17191719 break ;
17201720
17211721 case UPDATE:
1722- gOFS ->MgmStats .Add (" Eosxd::ext::UPDATE" , vid.uid , vid.gid , 1 );
1722+ gOFS ->MgmStats .Add (" Eosxd::ext::UPDATE" , vid.uid , vid.gid , 1 , vid. app );
17231723 break ;
17241724
17251725 case CREATE:
1726- gOFS ->MgmStats .Add (" Eosxd::ext::MKDIR" , vid.uid , vid.gid , 1 );
1726+ gOFS ->MgmStats .Add (" Eosxd::ext::MKDIR" , vid.uid , vid.gid , 1 , vid. app );
17271727 break ;
17281728
17291729 case RENAME:
1730- gOFS ->MgmStats .Add (" Eosxd::ext::RENAME" , vid.uid , vid.gid , 1 );
1730+ gOFS ->MgmStats .Add (" Eosxd::ext::RENAME" , vid.uid , vid.gid , 1 , vid. app );
17311731 break ;
17321732 }
17331733
@@ -1796,7 +1796,7 @@ Server::OpSetFile(const std::string& id,
17961796 std::string* response,
17971797 uint64_t * clock)
17981798{
1799- gOFS ->MgmStats .Add (" Eosxd::ext::SETFILE" , vid.uid , vid.gid , 1 );
1799+ gOFS ->MgmStats .Add (" Eosxd::ext::SETFILE" , vid.uid , vid.gid , 1 , vid. app );
18001800 EXEC_TIMING_BEGIN (" Eosxd::ext::SETFILE" );
18011801 enum set_type {
18021802 CREATE, UPDATE, RENAME, MOVE
@@ -2492,19 +2492,19 @@ Server::OpSetFile(const std::string& id,
24922492
24932493 switch (op) {
24942494 case MOVE:
2495- gOFS ->MgmStats .Add (" Eosxd::ext::MV" , vid.uid , vid.gid , 1 );
2495+ gOFS ->MgmStats .Add (" Eosxd::ext::MV" , vid.uid , vid.gid , 1 , vid. app );
24962496 break ;
24972497
24982498 case UPDATE:
2499- gOFS ->MgmStats .Add (" Eosxd::ext::UPDATE" , vid.uid , vid.gid , 1 );
2499+ gOFS ->MgmStats .Add (" Eosxd::ext::UPDATE" , vid.uid , vid.gid , 1 , vid. app );
25002500 break ;
25012501
25022502 case CREATE:
2503- gOFS ->MgmStats .Add (" Eosxd::ext::CREATE" , vid.uid , vid.gid , 1 );
2503+ gOFS ->MgmStats .Add (" Eosxd::ext::CREATE" , vid.uid , vid.gid , 1 , vid. app );
25042504 break ;
25052505
25062506 case RENAME:
2507- gOFS ->MgmStats .Add (" Eosxd::ext::RENAME" , vid.uid , vid.gid , 1 );
2507+ gOFS ->MgmStats .Add (" Eosxd::ext::RENAME" , vid.uid , vid.gid , 1 , vid. app );
25082508 break ;
25092509 }
25102510
@@ -2575,7 +2575,7 @@ Server::OpSetLink(const std::string& id,
25752575 std::string* response,
25762576 uint64_t * clock)
25772577{
2578- gOFS ->MgmStats .Add (" Eosxd::ext::SETLNK" , vid.uid , vid.gid , 1 );
2578+ gOFS ->MgmStats .Add (" Eosxd::ext::SETLNK" , vid.uid , vid.gid , 1 , vid. app );
25792579 EXEC_TIMING_BEGIN (" Eosxd::ext::SETLNK" );
25802580 enum set_type {
25812581 CREATE, UPDATE, RENAME, MOVE
@@ -2716,22 +2716,22 @@ Server::OpSetLink(const std::string& id,
27162716 switch (op) {
27172717 case MOVE:
27182718 s += " M" ;
2719- gOFS ->MgmStats .Add (" Eosxd::ext::MV" , vid.uid , vid.gid , 1 );
2719+ gOFS ->MgmStats .Add (" Eosxd::ext::MV" , vid.uid , vid.gid , 1 , vid. app );
27202720 break ;
27212721
27222722 case UPDATE:
27232723 s += " U" ;
2724- gOFS ->MgmStats .Add (" Eosxd::ext::UPDATE" , vid.uid , vid.gid , 1 );
2724+ gOFS ->MgmStats .Add (" Eosxd::ext::UPDATE" , vid.uid , vid.gid , 1 , vid. app );
27252725 break ;
27262726
27272727 case CREATE:
27282728 s += " C" ;
2729- gOFS ->MgmStats .Add (" Eosxd::ext::CREATELNK" , vid.uid , vid.gid , 1 );
2729+ gOFS ->MgmStats .Add (" Eosxd::ext::CREATELNK" , vid.uid , vid.gid , 1 , vid. app );
27302730 break ;
27312731
27322732 case RENAME:
27332733 s += " R" ;
2734- gOFS ->MgmStats .Add (" Eosxd::ext::RENAME" , vid.uid , vid.gid , 1 );
2734+ gOFS ->MgmStats .Add (" Eosxd::ext::RENAME" , vid.uid , vid.gid , 1 , vid. app );
27352735 break ;
27362736
27372737 default :
@@ -2838,7 +2838,7 @@ Server::OpDelete(const std::string& id,
28382838 std::string* response,
28392839 uint64_t * clock)
28402840{
2841- gOFS ->MgmStats .Add (" Eosxd::ext::RM" , vid.uid , vid.gid , 1 );
2841+ gOFS ->MgmStats .Add (" Eosxd::ext::RM" , vid.uid , vid.gid , 1 , vid. app );
28422842
28432843 if (!ValidateCAP (md, D_OK, vid)) {
28442844 std::string perm = " D" ;
@@ -2877,7 +2877,7 @@ Server::OpDeleteDirectory(const std::string& id,
28772877 std::string* response,
28782878 uint64_t * clock)
28792879{
2880- gOFS ->MgmStats .Add (" Eosxd::ext::RMDIR" , vid.uid , vid.gid , 1 );
2880+ gOFS ->MgmStats .Add (" Eosxd::ext::RMDIR" , vid.uid , vid.gid , 1 , vid. app );
28812881 EXEC_TIMING_BEGIN (" Eosxd::ext::RMDIR" );
28822882 eos::fusex::response resp;
28832883 resp.set_type (resp.ACK );
@@ -2966,7 +2966,7 @@ Server::OpDeleteFile(const std::string& id,
29662966 std::string* response,
29672967 uint64_t * clock)
29682968{
2969- gOFS ->MgmStats .Add (" Eosxd::ext::DELETE" , vid.uid , vid.gid , 1 );
2969+ gOFS ->MgmStats .Add (" Eosxd::ext::DELETE" , vid.uid , vid.gid , 1 , vid. app );
29702970 EXEC_TIMING_BEGIN (" Eosxd::ext::DELETE" );
29712971
29722972 if (!ValidateCAP (md, D_OK, vid)) {
@@ -3193,7 +3193,7 @@ Server::OpDeleteLink(const std::string& id,
31933193 std::string* response,
31943194 uint64_t * clock)
31953195{
3196- gOFS ->MgmStats .Add (" Eosxd::ext::DELETELNK" , vid.uid , vid.gid , 1 );
3196+ gOFS ->MgmStats .Add (" Eosxd::ext::DELETELNK" , vid.uid , vid.gid , 1 , vid. app );
31973197 EXEC_TIMING_BEGIN (" Eosxd::ext::DELETELNK" );
31983198
31993199 if (!ValidateCAP (md, D_OK, vid)) {
@@ -3291,7 +3291,7 @@ Server::OpGetCap(const std::string& id,
32913291 std::string* response,
32923292 uint64_t * clock)
32933293{
3294- gOFS ->MgmStats .Add (" Eosxd::ext::GETCAP" , vid.uid , vid.gid , 1 );
3294+ gOFS ->MgmStats .Add (" Eosxd::ext::GETCAP" , vid.uid , vid.gid , 1 , vid. app );
32953295 EXEC_TIMING_BEGIN (" Eosxd::ext::GETCAP" );
32963296 eos::fusex::container cont;
32973297 cont.set_type (cont.CAP );
@@ -3341,7 +3341,7 @@ Server::OpGetLock(const std::string& id,
33413341 std::string* response,
33423342 uint64_t * clock)
33433343{
3344- gOFS ->MgmStats .Add (" Eosxd::ext::GETLK" , vid.uid , vid.gid , 1 );
3344+ gOFS ->MgmStats .Add (" Eosxd::ext::GETLK" , vid.uid , vid.gid , 1 , vid. app );
33453345 EXEC_TIMING_BEGIN (" Eosxd::ext::GETLK" );
33463346 eos::fusex::response resp;
33473347 resp.set_type (resp.LOCK );
@@ -3398,10 +3398,10 @@ Server::OpSetLock(const std::string& id,
33983398 bool xattr_lock = false ;
33993399
34003400 if (md.operation () == md.SETLKW ) {
3401- gOFS ->MgmStats .Add (" Eosxd::ext::SETLKW" , vid.uid , vid.gid , 1 );
3401+ gOFS ->MgmStats .Add (" Eosxd::ext::SETLKW" , vid.uid , vid.gid , 1 , vid. app );
34023402 sleep = 1 ;
34033403 } else {
3404- gOFS ->MgmStats .Add (" Eosxd::ext::SETLK" , vid.uid , vid.gid , 1 );
3404+ gOFS ->MgmStats .Add (" Eosxd::ext::SETLK" , vid.uid , vid.gid , 1 , vid. app );
34053405 }
34063406
34073407 struct flock lock;
0 commit comments