All Classes Files Functions Variables Pages
Logger.idl
Go to the documentation of this file.
1 /**
2  * @file Logger.idl
3  * @brief API for writing to logs and handling Kerio Control specified functions related to logs
4  * @version 2
5  */
6 
7 #import <kerio/web/idl/Logs.idl>
8 #import <common.idl>
9 
10 module webadmin {
11 
13  kerio::web::KId id;
14  string name;
15 };
16 typedef sequence<StatusFunction> StatusFunctionList;
17 
18 enum HttpLogType {
19  HttpLogApache,
20  HttpLogSquid
21 };
22 
23 interface Logger {
24 
25  /**
26  * Write a message to given log
27  *
28  * @param type - type of target log file, @see Logs.idl shared in lib - supported types: config, debug, dial, error, security, warning
29  * @param message - text to be written into log file
30  * @throws kerio::web::ApiException \n
31  * 8000 Internal error. - "Internal error."
32  */
33  void logWrite(in kerio::web::LogType type, in string message);
34 
35  /**
36  * Returns list of Functions displayed in debug log context menu 'Show status'
37  * @throws kerio::web::ApiException \n
38  * -32001 Session expired. - "The user is not logged in." \n
39  * 1004 Access denied. - "Insufficient rights to perform the requested operation."
40  */
41  void getStatusFunctionList(out StatusFunctionList functions);
42 
43  /**
44  * Calls function from StatusFunctionList referenced by id
45  * @throws kerio::web::ApiException \n
46  * -32001 Session expired. - "The user is not logged in." \n
47  * 1004 Access denied. - "Insufficient rights to perform the requested operation."
48  */
49  void callStatusFunction(in kerio::web::KId id);
50 
51  /**
52  * Returns actual Http log type
53  * @throws kerio::web::ApiException \n
54  * -32001 Session expired. - "The user is not logged in." \n
55  * 1004 Access denied. - "Insufficient rights to perform the requested operation."
56  */
57  void getHttpLogType(out HttpLogType logType);
58 
59  /**
60  * Stores Http log type
61  * @throws kerio::web::ApiException \n
62  * -32001 Session expired. - "The user is not logged in." \n
63  * 1004 Access denied. - "Insufficient rights to perform the requested operation."
64  */
65  void setHttpLogType(in HttpLogType logType);
66 
67  /**
68  * Returns expression for dialog from debug log context menu 'IP Traffic...'
69  * @throws kerio::web::ApiException \n
70  * -32001 Session expired. - "The user is not logged in." \n
71  * 1004 Access denied. - "Insufficient rights to perform the requested operation."
72  */
73  void getLogExpression(out string expression);
74 
75  /**
76  * Stores expression from debug log context menu dialog 'IP Traffic...'
77  * @throws kerio::web::ApiException \n
78  * -32001 Session expired. - "The user is not logged in." \n
79  * 1004 Access denied. - "Insufficient rights to perform the requested operation."
80  */
81  void setLogExpression(in string expression);
82 
83 
84  /**
85  * Returns format for dialog from debug log context menu 'Packet Log format...'
86  * @throws kerio::web::ApiException \n
87  * -32001 Session expired. - "The user is not logged in." \n
88  * 1004 Access denied. - "Insufficient rights to perform the requested operation."
89  */
90  void getPacketLogFormat(out string format);
91 
92  /**
93  * Stores format from debug log context menu dialog 'Packet Log format...'
94  * @throws kerio::web::ApiException \n
95  * -32001 Session expired. - "The user is not logged in." \n
96  * 1004 Access denied. - "Insufficient rights to perform the requested operation."
97  */
98  void setPacketLogFormat(in string format);
99 
100 };
101 
102 }; //webadmin
Common Kerio Control structures, enums and types.
Definition: Logger.idl:12
Definition: Logger.idl:23
Definition: Accounting.idl:11