xref: /trunk/main/offapi/com/sun/star/logging/SyslogHandler.idl (revision 448486c680931f7025e1bc43b5f9036acef42990)
1*448486c6SDamjan Jovanovic/**************************************************************
2*448486c6SDamjan Jovanovic *
3*448486c6SDamjan Jovanovic * Licensed to the Apache Software Foundation (ASF) under one
4*448486c6SDamjan Jovanovic * or more contributor license agreements.  See the NOTICE file
5*448486c6SDamjan Jovanovic * distributed with this work for additional information
6*448486c6SDamjan Jovanovic * regarding copyright ownership.  The ASF licenses this file
7*448486c6SDamjan Jovanovic * to you under the Apache License, Version 2.0 (the
8*448486c6SDamjan Jovanovic * "License"); you may not use this file except in compliance
9*448486c6SDamjan Jovanovic * with the License.  You may obtain a copy of the License at
10*448486c6SDamjan Jovanovic *
11*448486c6SDamjan Jovanovic *   http://www.apache.org/licenses/LICENSE-2.0
12*448486c6SDamjan Jovanovic *
13*448486c6SDamjan Jovanovic * Unless required by applicable law or agreed to in writing,
14*448486c6SDamjan Jovanovic * software distributed under the License is distributed on an
15*448486c6SDamjan Jovanovic * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*448486c6SDamjan Jovanovic * KIND, either express or implied.  See the License for the
17*448486c6SDamjan Jovanovic * specific language governing permissions and limitations
18*448486c6SDamjan Jovanovic * under the License.
19*448486c6SDamjan Jovanovic *
20*448486c6SDamjan Jovanovic *************************************************************/
21*448486c6SDamjan Jovanovic
22*448486c6SDamjan Jovanovic
23*448486c6SDamjan Jovanovic
24*448486c6SDamjan Jovanovic#ifndef __com_sun_star_logging_SyslogHandler_idl__
25*448486c6SDamjan Jovanovic#define __com_sun_star_logging_SyslogHandler_idl__
26*448486c6SDamjan Jovanovic
27*448486c6SDamjan Jovanovic#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
28*448486c6SDamjan Jovanovic#include <com/sun/star/lang/IllegalArgumentException.idl>
29*448486c6SDamjan Jovanovic#endif
30*448486c6SDamjan Jovanovic#ifndef __com_sun_star_beans_NamedValue_idl__
31*448486c6SDamjan Jovanovic#include <com/sun/star/beans/NamedValue.idl>
32*448486c6SDamjan Jovanovic#endif
33*448486c6SDamjan Jovanovic
34*448486c6SDamjan Jovanovic//=============================================================================
35*448486c6SDamjan Jovanovic
36*448486c6SDamjan Jovanovicmodule com { module sun { module star { module logging {
37*448486c6SDamjan Jovanovic
38*448486c6SDamjan Jovanovicinterface XLogHandler;
39*448486c6SDamjan Jovanovic
40*448486c6SDamjan Jovanovic//=============================================================================
41*448486c6SDamjan Jovanovic
42*448486c6SDamjan Jovanovic/** specifies a component implementing a log handler whose output
43*448486c6SDamjan Jovanovic    channel is the syslog network protocol.
44*448486c6SDamjan Jovanovic
45*448486c6SDamjan Jovanovic    <p>The handler will use the <code>Encoding</code> attribute of <type>XLogHandler</type>
46*448486c6SDamjan Jovanovic    to determine how to encode strings before actually writing them to the output
47*448486c6SDamjan Jovanovic    file.</p>
48*448486c6SDamjan Jovanovic
49*448486c6SDamjan Jovanovic    <p>The output is sent over UDP to the given Host and Port
50*448486c6SDamjan Jovanovic    in RFC5424 format, in plaintext, with APPNAME "soffice" and facility USER.
51*448486c6SDamjan Jovanovic    LogLevel::SEVERE becomes syslog's "error" severity, LogLevel::WARNING becomes syslog's
52*448486c6SDamjan Jovanovic    "warning" severity, LogLevel::INFO and LogLevel::CONFIG become syslog's "notice"
53*448486c6SDamjan Jovanovic    severity, and LogLevel::FINE and below become syslog's "debug" severity.</p>
54*448486c6SDamjan Jovanovic
55*448486c6SDamjan Jovanovic    @see XLogHandler::Encoding
56*448486c6SDamjan Jovanovic
57*448486c6SDamjan Jovanovic    @since OpenOffice 4.5
58*448486c6SDamjan Jovanovic */
59*448486c6SDamjan Jovanovicservice SyslogHandler : XLogHandler
60*448486c6SDamjan Jovanovic{
61*448486c6SDamjan Jovanovic    /** creates an instance of the log handler
62*448486c6SDamjan Jovanovic
63*448486c6SDamjan Jovanovic        @param Settings
64*448486c6SDamjan Jovanovic            contains the initial settings for the log handler
65*448486c6SDamjan Jovanovic
66*448486c6SDamjan Jovanovic            <p>The following settings are recognized and supported:
67*448486c6SDamjan Jovanovic            <ul><li><code>Encoding</code> - denotes the initial value of the <member>XLogHandler::Encoding</member></li>
68*448486c6SDamjan Jovanovic                <li><code>Formatter</code> - denotes the initial value of the <member>XLogHandler::Formatter</member></li>
69*448486c6SDamjan Jovanovic                <li><code>Level</code> - denotes the initial value of the <member>XLogHandler::Level</member></li>
70*448486c6SDamjan Jovanovic            </ul></p>
71*448486c6SDamjan Jovanovic
72*448486c6SDamjan Jovanovic            <p>Additionally, the following settings are required for this particular handler:
73*448486c6SDamjan Jovanovic            <ul><li><code>Host</code> - the hostname of the syslog server</li>
74*448486c6SDamjan Jovanovic                <li><code>Port</code> - the port of the syslog server</li>
75*448486c6SDamjan Jovanovic            </ul></p>
76*448486c6SDamjan Jovanovic
77*448486c6SDamjan Jovanovic        @throws ::com::sun::star::lang::IllegalArgumentException
78*448486c6SDamjan Jovanovic            if <arg>Settings</args> contains settings whose value is of the wrong type.
79*448486c6SDamjan Jovanovic    */
80*448486c6SDamjan Jovanovic    createWithSettings( [in] sequence< ::com::sun::star::beans::NamedValue > Settings )
81*448486c6SDamjan Jovanovic        raises ( ::com::sun::star::lang::IllegalArgumentException );
82*448486c6SDamjan Jovanovic};
83*448486c6SDamjan Jovanovic
84*448486c6SDamjan Jovanovic//=============================================================================
85*448486c6SDamjan Jovanovic
86*448486c6SDamjan Jovanovic}; }; }; };
87*448486c6SDamjan Jovanovic
88*448486c6SDamjan Jovanovic//=============================================================================
89*448486c6SDamjan Jovanovic
90*448486c6SDamjan Jovanovic#endif
91