Do you use karaf vanilla or a custom distribution ? I confirm that it works fine for me on Karaf vanilla (at least on Linux).
Regards JB > Le 24 déc. 2020 à 14:02, michael e <[email protected]> a écrit : > > > I also add the absolute path i also get exception > > my configuration: > > # Sift - MDC routing > log4j2.appender.routing.type = Routing > log4j2.appender.routing.name = Routing > log4j2.appender.routing.routes.type = Routes > log4j2.appender.routing.routes.pattern = \$\$\\\{ctx:bundle.name\} > log4j2.appender.routing.routes.bundle.type = Route > log4j2.appender.routing.routes.bundle.appender.type = RollingRandomAccessFile > log4j2.appender.routing.routes.bundle.appender.name = > Bundle-\$\\\{ctx:bundle.name\} > log4j2.appender.routing.routes.bundle.appender.fileName = > D:/karaf/apache-karaf-4.3.0/data/log/bundle-\$\\\{ctx:camel.contextId\}.log > log4j2.appender.routing.routes.bundle.appender.filePattern = > ${karaf.log}/bundle-\$\\\{ctx:bundle.name\}.log.%i > log4j2.appender.routing.routes.bundle.appender.append = true > log4j2.appender.routing.routes.bundle.appender.layout.type = PatternLayout > log4j2.appender.routing.routes.bundle.appender.layout.pattern = > ${log4j2.pattern} > log4j2.appender.routing.routes.bundle.appender.policies.type = Policies > log4j2.appender.routing.routes.bundle.appender.policies.size.type = > SizeBasedTriggeringPolicy > log4j2.appender.routing.routes.bundle.appender.policies.size.size = 8MB > > Exception: > > org.ops4j.pax.logging.pax-logging-log4j2 [log4j2] ERROR : Cannot access > RandomAccessFile java.io.IOException: La syntaxe du nom de fichier, de > répertoire ou de volume est incorrecte > org.ops4j.pax.logging.pax-logging-log4j2 [log4j2] ERROR : Could not create > plugin of type class > org.apache.logging.log4j.core.appender.RollingRandomAccessFileAppender for > element RollingRandomAccessFile: java.lang.IllegalStateException: > ManagerFactory > [org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$RollingRandomAccessFileManagerFactory@7ab1ab29] > unable to create manager for > [D:/karaf/apache-karaf-4.3.0/data/log/bundle-${ctx:camel.contextId}.log] with > data > [org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$FactoryData@3219c6e6] > org.ops4j.pax.logging.pax-logging-log4j2 [log4j2] ERROR : Unable to invoke > factory method in class > org.apache.logging.log4j.core.appender.RollingRandomAccessFileAppender for > element RollingRandomAccessFile: java.lang.IllegalStateException: No factory > method found for class > org.apache.logging.log4j.core.appender.RollingRandomAccessFileAppender > org.ops4j.pax.logging.pax-logging-log4j2 [log4j2] ERROR : Unable to create > Appender of type RollingRandomAccessFile > > Regards, > Michael. > > De : Jean-Baptiste Onofre <[email protected]> > Envoyé : jeudi 24 décembre 2020 07:13 > À : [email protected] <[email protected]> > Objet : Re: Configuring MDC logging karaf 4 camel 3.7.0 > > Hi, > > I just tested the configuration I provided in etc/org.ops4j.pax.logging.cfg. > > Here’s my config (in etc/org.ops4j.pax.logging.cfg): > > First, I’ve enabled sift appender: > > log4j2.rootLogger.appenderRef.Sift.ref = Routing > > Then, I added the appender: > > log4j2.appender.routing.type = Routing > log4j2.appender.routing.name = Routing > log4j2.appender.routing.routes.type = Routes > log4j2.appender.routing.routes.pattern = \$\$\\\{ctx:bundle.name\} > log4j2.appender.routing.routes.bundle.type = Route > log4j2.appender.routing.routes.bundle.appender.type = RollingRandomAccessFile > log4j2.appender.routing.routes.bundle.appender.name = > Bundle-\$\\\{ctx:bundle.name\} > log4j2.appender.routing.routes.bundle.appender.fileName = > ${karaf.log}/bundle-\$\\\{ctx:bundle.name\}.log > log4j2.appender.routing.routes.bundle.appender.filePattern = > ${karaf.log}/bundle-\$\\\{ctx:bundle.name\}.log.%i > log4j2.appender.routing.routes.bundle.appender.append = true > log4j2.appender.routing.routes.bundle.appender.layout.type = PatternLayout > log4j2.appender.routing.routes.bundle.appender.layout.pattern = > ${log4j2.pattern} > log4j2.appender.routing.routes.bundle.appender.policies.type = Policies > log4j2.appender.routing.routes.bundle.appender.policies.size.type = > SizeBasedTriggeringPolicy > log4j2.appender.routing.routes.bundle.appender.policies.size.size = 8MB > > And it works fine. > > It seems that your problem is about Windows. > You are mixing windows style path with Unix style. > > For fileName and filePattern, can you please use absolution path. Something > like: > > log4j2.appender.routing.routes.bundle.appender.fileName = > D:\karaf\apache-karaf-4.3.0\bundle-\$\\\{ctx:bundle.name\}.log > > It should work. > > Regards > JB > >> Le 23 déc. 2020 à 10:58, michael e <[email protected]> a écrit : >> >> Hello, >> >> I'm getting in trouble trying to configure MDC logging with latest Karaf and >> Camel Version >> >> Here my logging configuration >> >> log4j2.appender.routing.type = Routing >> log4j2.appender.routing.name = Routing >> log4j2.appender.routing.routes.type = Routes >> log4j2.appender.routing.routes.pattern = \$\$\\\{ctx:bundle.name\} >> log4j2.appender.routing.routes.bundle.type = Route >> log4j2.appender.routing.routes.bundle.appender.type = RollingRandomAccessFile >> log4j2.appender.routing.routes.bundle.appender.name = >> Bundle-\$\\\{ctx:bundle.name\} >> log4j2.appender.routing.routes.bundle.appender.fileName = >> ${karaf.data}/log/sift-camel-\$\\\{ctx:camel.contextId\}.log >> log4j2.appender.routing.routes.bundle.appender.filePattern = >> ${karaf.log}/bundle-\$\\\{ctx:bundle.name\}.log.%i >> log4j2.appender.routing.routes.bundle.appender.append = true >> log4j2.appender.routing.routes.bundle.appender.layout.type = PatternLayout >> log4j2.appender.routing.routes.bundle.appender.layout.pattern = >> ${log4j2.pattern} >> log4j2.appender.routing.routes.bundle.appender.policies.type = Policies >> log4j2.appender.routing.routes.bundle.appender.policies.size.type = >> SizeBasedTriggeringPolicy >> log4j2.appender.routing.routes.bundle.appender.policies.size.size = 8MB >> >> Logging file is correctly created but i get exception in my Karaf >> >> >> karaf@root()> org.ops4j.pax.logging.pax-logging-log4j2 [log4j2] ERROR : >> Cannot access RandomAccessFile java.io.IOException: La syntaxe du nom de >> fichier, de répertoire ou de volume est incorrecte >> org.ops4j.pax.logging.pax-logging-log4j2 [log4j2] ERROR : Could not create >> plugin of type class >> org.apache.logging.log4j.core.appender.RollingRandomAccessFileAppender for >> element RollingRandomAccessFile: java.lang.IllegalStateException: >> ManagerFactory >> [org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$RollingRandomAccessFileManagerFactory@26d9daed] >> unable to create manager for >> [D:\karaf\apache-karaf-4.3.0\data/log/sift-camel-${ctx:camel.contextId}.log] >> with data >> [org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$FactoryData@34bd66be] >> org.ops4j.pax.logging.pax-logging-log4j2 [log4j2] ERROR : Unable to invoke >> factory method in class >> org.apache.logging.log4j.core.appender.RollingRandomAccessFileAppender for >> element RollingRandomAccessFile: java.lang.IllegalStateException: No factory >> method found for class >> org.apache.logging.log4j.core.appender.RollingRandomAccessFileAppender >> org.ops4j.pax.logging.pax-logging-log4j2 [log4j2] ERROR : Unable to create >> Appender of type RollingRandomAccessFile >> org.ops4j.pax.logging.pax-logging-log4j2 [log4j2] ERROR : Cannot access >> RandomAccessFile java.io.IOException: La syntaxe du nom de fichier, de >> répertoire ou de volume est incorrecte >> org.ops4j.pax.logging.pax-logging-log4j2 [log4j2] ERROR : Could not create >> plugin of type class >> org.apache.logging.log4j.core.appender.RollingRandomAccessFileAppender for >> element RollingRandomAccessFile: java.lang.IllegalStateException: >> ManagerFactory >> [org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$RollingRandomAccessFileManagerFactory@26d9daed] >> unable to create manager for >> [D:\karaf\apache-karaf-4.3.0\data/log/sift-camel-${ctx:camel.contextId}.log] >> with data >> [org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$FactoryData@19f28b4] >> org.ops4j.pax.logging.pax-logging-log4j2 [log4j2] ERROR : Unable to invoke >> factory method in class >> org.apache.logging.log4j.core.appender.RollingRandomAccessFileAppender for >> element RollingRandomAccessFile: java.lang.IllegalStateException: No factory >> method found for class >> org.apache.logging.log4j.core.appender.RollingRandomAccessFileAppender >> org.ops4j.pax.logging.pax-logging-log4j2 [log4j2] ERROR : Unable to create >> Appender of type RollingRandomAccessFile >> >> There is updated documentation about how to configure ? >> >> Michael. >
