irods  4.2.8
About: iRODS (the integrated Rule Oriented Data System) is a distributed data-management system for creating data grids, digital libraries, persistent archives, and real-time data systems.
  Fossies Dox: irods-4.2.8.tar.gz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

reIn2p3SysRule.hpp
Go to the documentation of this file.
1 
3 /* Written by Jean-Yves Nief of CCIN2P3 and copyright assigned to Data Intensive Cyberinfrastructure Foundation */
4 
5 #ifndef RE_IN2P3_SYS_RULE_HPP
6 #define RE_IN2P3_SYS_RULE_HPP
7 
8 #include "msParam.h"
9 //#include "reDataObjOpr.hpp"
10 #include "rods.h"
11 #include "rsGlobalExtern.hpp" /* server global */
12 #include "rcGlobalExtern.h" /* client global */
13 //#include "reGlobalsExtern.hpp"
14 #include "rsLog.hpp"
15 #include "rodsLog.h"
16 #include "sockComm.h"
17 #include "getRodsEnv.h"
18 #include "rcConnect.h"
19 #include "generalRowInsert.h"
20 #include "generalRowPurge.h"
21 #include "generalAdmin.h"
22 
23 #define NFIELDS 4 /* number of fields in HostControlAccess file:
24 <user> <group> <IP address> <subnet mask> */
25 #define MAXLEN 100
26 #define MAXSTR 30
27 #define MAXLIST 40 /* max number of entries in the access list tab. */
28 
29 #define HOST_ACCESS_CONTROL_FILE "host_access_control_config.json"
30 
31 #define MON_PERF_SCRIPT "irodsServerMonPerf"
32 #define MON_CFG_FILE "../config/irodsMonPerf.config" /* contains list of servers to monitor,
33 not mandatory */
34 #define NRESULT 7 /* number of metrics returned by MON_PERF_SCRIPT */
35 #define OUTPUT_MON_PERF "../log/rodsMonPerfLog"
36 #define MAX_VALUE 512 /* for array definition */
37 #define MAX_MESSAGE_SIZE 2000
38 #define MAX_NSERVERS 512 /* max number of servers that can be monitored (load balancing) */
39 #define TIMEOUT 20 /* number of seconds after which the request (the thread taking care of it)
40 for server load is canceled */
41 #define MON_OUTPUT_NO_ANSWER "#-1#-1#-1#-1#-1#-1#-1#-1#" /* used if no monitoring output from
42 remote server */
43 #define LEN_SECONDS 4 /* length in bytes for the encoding of number of seconds */
44 
45 typedef struct {
47  char cmdArgv[HUGE_NAME_LEN];
48  char execAddr[LONG_NAME_LEN];
49  char hintPath[MAX_NAME_LEN];
50  int threadId;
51  int addPathToArgv;
52  char rescName[MAX_NAME_LEN];
55 
56 typedef struct {
57  char serverName[LONG_NAME_LEN];
58  char rescName[MAX_NAME_LEN];
59  char rescType[LONG_NAME_LEN];
60  char vaultPath[LONG_NAME_LEN];
61 } monInfo_t;
62 
64  const std::string&, // user name
65  const std::string&, // client host
66  const std::string& ); // group name
68 int msiDigestMonStat( msParam_t *cpu_wght, msParam_t *mem_wght, msParam_t *swap_wght, msParam_t *runq_wght,
69  msParam_t *disk_wght, msParam_t *netin_wght, msParam_t *netout_wght,
70  ruleExecInfo_t *rei );
71 int msiFlushMonStat( msParam_t *timespan, msParam_t *tablename, ruleExecInfo_t *rei );
72 int msiServerMonPerf( msParam_t *verbosity, msParam_t *probtime, ruleExecInfo_t *rei );
73 
74 #endif /* RE_IN2P3_SYS_RULE_H */
msiServerMonPerf
int msiServerMonPerf(msParam_t *verbosity, msParam_t *probtime, ruleExecInfo_t *rei)
Definition: reIn2p3SysRule.cpp:564
rsLog.hpp
msParam.h
HUGE_NAME_LEN
#define HUGE_NAME_LEN
Definition: rodsDef.h:62
generalRowPurge.h
generalAdmin.h
rcConnect.h
LONG_NAME_LEN
#define LONG_NAME_LEN
Definition: rodsDef.h:57
monInfo_t
Definition: reIn2p3SysRule.hpp:52
checkHostAccessControl
int checkHostAccessControl(const std::string &, const std::string &, const std::string &)
Definition: reIn2p3SysRule.cpp:318
rcGlobalExtern.h
msiCheckHostAccessControl
int msiCheckHostAccessControl(ruleExecInfo_t *rei)
Definition: reIn2p3SysRule.cpp:470
generate_iadmin_commands_for_41_to_42_upgrade.cmd
list cmd
Definition: generate_iadmin_commands_for_41_to_42_upgrade.py:19
rsGlobalExtern.hpp
thrInp_t
Definition: reIn2p3SysRule.hpp:41
MAX_NAME_LEN
#define MAX_NAME_LEN
Definition: rodsDef.h:61
msiFlushMonStat
int msiFlushMonStat(msParam_t *timespan, msParam_t *tablename, ruleExecInfo_t *rei)
Definition: reIn2p3SysRule.cpp:774
MsParam
Definition: msParam.h:76
rodsLog.h
RuleExecInfo
Definition: irods_re_structs.hpp:18
sockComm.h
msiDigestMonStat
int msiDigestMonStat(msParam_t *cpu_wght, msParam_t *mem_wght, msParam_t *swap_wght, msParam_t *runq_wght, msParam_t *disk_wght, msParam_t *netin_wght, msParam_t *netout_wght, ruleExecInfo_t *rei)
Definition: reIn2p3SysRule.cpp:903
generalRowInsert.h
rods.h
getRodsEnv.h