Not exactly. You can do:

Appender appender = ctx.getConfiguration().getAppender(“syslogAppender”);

then you would have to do 

SyslogAppender syslogAppender = (SyslogAppender) appender;

normally you would probably use instanceof to verify it is actually a 
SyslogAppender.

Once you have that you can call whatever methods the SyslogAppender exposes for 
getting its attributes. They are not stored in a Map however, so you can’t just 
call a generic getAttribute method.

Ralph


> On Jan 26, 2016, at 11:58 AM, Apostolis Giannakidis 
> <[email protected]> wrote:
> 
> Hello team,
> 
> I have created a logger with an appender using the ConfigurationBuilder and
> the AppenderComponentBuilder.
> 
> Let's say that this is how I create my appender:
> 
> AppenderComponentBuilder appenderBuilder =
>                builder.newAppender( "syslogAppender", "Syslog" )
>                .addAttribute( "protocol", "TCP" )
>                .addAttribute( "host", "localhost" )
>                .addAttribute( "port", 514 )
>                .addAttribute( "facility", "LOCAL2" )
>                .addAttribute( "immediateFlush", true )
>                .addAttribute( "newLine", true );
> 
> Then, after I finish creating the builder I use the
> Configurator.initialize( builder.build() ) to get the LoggerContext.
> 
> Is there any way I can access the attributes of the appender through the
> LoggerContext?
> 
> For example something like this:
> 
> LoggerContext ctx = Configurator.initialize( builder.build() );
> 
> String hostname =
> ctx.getConfiguration()..getAppenders().get("syslogAppender").getAttribute("host");
> 
> Thank you all very much for your help.
> 
> Apostolis



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to