Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 带有azure web服务主机名的log4j文件名_Java_Logging_Log4j_Hostname_Azure Web App Service - Fatal编程技术网

Java 带有azure web服务主机名的log4j文件名

Java 带有azure web服务主机名的log4j文件名,java,logging,log4j,hostname,azure-web-app-service,Java,Logging,Log4j,Hostname,Azure Web App Service,我有java中的Azure应用程序服务。我有log4j日志记录机制。我需要将日志文件创建为HOSTNAME\u servicename.log 当我在tomcat中本地部署代码时,它会创建具有所需文件名的文件,但在azure上它会创建_servicename.log 类别: package com.mastek.transaction.filter; import javax.servlet.ServletContextEvent; import javax.servlet.ServletCon

我有java中的Azure应用程序服务。我有log4j日志记录机制。我需要将日志文件创建为HOSTNAME\u servicename.log 当我在tomcat中本地部署代码时,它会创建具有所需文件名的文件,但在azure上它会创建_servicename.log

类别:

package com.mastek.transaction.filter;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class ApplicationConfiguration implements ServletContextListener{

@Override
public void contextDestroyed(ServletContextEvent arg0) {
    // TODO Auto-generated method stub
}

@Override
public void contextInitialized(ServletContextEvent arg0) {

    String siteName = System.getenv("COMPUTERNAME");
    System.setProperty("COMPUTERNAME",siteName);

/** The Constant logger. */
final Logger logger = LoggerFactory.getLogger(ApplicationConfiguration.class);

 logger.info("SITENAME: " + siteName);
}
}
log4j.properties文件:

# Root logger option
log4j.rootLogger=INFO, out, file
log4j.logger.com.mastek=DEBUG

# ConsoleAppender
log4j.appender.out=org.apache.log4j.ConsoleAppender
log4j.appender.out.Target=System.out
log4j.appender.out.layout=org.apache.log4j.PatternLayout
log4j.appender.out.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

# RollingFileAppender
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=../../LogFiles/${COMPUTERNAME}_transaction-rs.log
log4j.appender.file.MaxFileSize=10MB
log4j.appender.file.MaxBackupIndex=10
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
我在web.xml中添加了侦听器:

<listener>
        <listener-class>com.mastek.security.filter.ApplicationConfiguration</listener-class>
    </listener>

我已经记录了站点名称,该站点名称如上面的日志所示,但在WebApplicationContext:初始化完成后。

作为参考,Kudu的wiki页面列出了一些环境变量,您可以通过Java代码
System.getenv引用并获取它们的值(“将一些自定义变量添加到
applicationHost.xdt
,或者只需将它们添加到Azure portal的
应用程序设置
选项卡中


更新: 您可以为Azure应用程序服务的每个实例设置环境变量,请参见下文


作为参考,请参阅。

您似乎已经解决了问题,是吗?如果没有,请更新您的问题。没有。问题没有解决。是的,谢谢您的思考,我们如何才能访问2个实例的2个不同Kudus,以便我可以为每个实例添加2个不同的自定义环境变量。嗨,Peter,我也尝试过使用应用程序设置,是吗s仍然没有在log4j.properties文件中获取值。我认为日志记录是在java执行System.getenv()之前初始化的
2017-04-04 14:34:28 WARN  i18n:68 - RESTEASY002175: The use of javax.ws.rs.core.Application is deprecated, please use javax.ws.rs.Application as a context-param instead
2017-04-04 14:34:34 INFO  i18n:479 - RESTEASY002225: Deploying javax.ws.rs.core.Application: class com.mastek.security.rest.service.SwaggerConfiguration
2017-04-04 14:34:35 INFO  i18n:505 - RESTEASY002220: Adding singleton resource com.mastek.security.rest.service.RegistrationRESTImpl from Application class com.mastek.sec2017-04-04 14:34:40 INFO  i18n:479 - RESTEASY002225: Deploying javax.ws.rs.core.Application: class com.mastek.security.rest.service.Swagger2017-04-04 14:34:43 INFO  XmlWebApplicationContext:513 - Refreshing Root WebApplicationContext: startup date [Tue Apr 04 14:34:43 GMT 2017]; root of context hierarchy
2017-04-04 14:34:45 INFO  XmlBeanDefinitionReader:316 - Loading XML bean definitions from class path resource [application-context.xml]
2017-04-04 14:34:50 INFO  XmlBeanDefinitionReader:316 - Loading XML bean definitions from class path resource [persistence-config.xml]
2017-04-04 14:34:58 INFO  PropertySourcesPlaceholderConfigurer:172 - Loading properties file from URL [file:/sdt/configuration/services.properties]
2017-04-04 14:34:58 WARN  PropertySourcesPlaceholderConfigurer:181 - Could not load properties from URL [file:/sdt/configuration/services.properties]: \sdt\configuration\servi2017-04-04 14:35:02 INFO  PropertySourcesPlaceholderConfigurer:172 - Loading properties file from URL [file:/sdt/configuration/services.properties]
2017-04-04 14:35:02 WARN  PropertySourcesPlaceholderConfigurer:181 - Could not load properties from URL [file:/sdt/configuration/services.properties]: \sdt\configuration\services.properties (The system cannot 2017-04-04 14:35:06 INFO  DriverManagerDataSource:133 - Loaded JDBC driver: com.microsoft.sqlserver.jdbc.SQLServerDriver
2017-04-04 14:35:09 INFO  Version:66 - HCANN000001: Hibernate Commons Annotations {4.0.5.Final}
2017-04-04 14:35:09 INFO  Version:54 - HHH000412: Hibernate Core {4.3.6.Final}
2017-04-04 14:35:10 INFO  Environment:239 - HHH000206: hibernate.properties not found
2017-04-04 14:35:10 INFO  Environment:346 - HHH000021: Bytecode provider name : javassist
2017-04-04 14:35:22 INFO  Dialect:145 - HHH000400: Using dialect: org.hibernate.dialect.SQLServerDialect
2017-04-04 14:35:48 INFO  TransactionFactoryInitiator:62 - HHH000399: Using default transaction strategy (direct JDBC transactions)
2017-04-04 14:35:48 INFO  ASTQueryTranslatorFactory:47 - HHH000397: Using ASTQueryTranslatorFactory
2017-04-04 14:36:07 WARN  HqlSqlWalker:996 - [DEPRECATION] Encountered positional parameter near line 1, column 69.  Positional parameter are considered deprecated; use named parameters or JPA-style positional parameters instead.
2017-04-04 14:36:08 WARN  HqlSqlWalker:996 - [DEPRECATION] Encountered positional parameter near line 1, column 79.  Positional parameter are considered deprecated; use named parameters or JPA-style positional parameters instead.
2017-04-04 14:36:08 WARN  HqlSqlWalker:996 - [DEPRECATION] Encountered positional parameter near line 1, column 81.  Positional parameter are considered deprecated; use named parameters or JPA-style positional parameters instead.
2017-04-04 14:36:08 WARN  HqlSqlWalker:996 - [DEPRECATION] Encountered positional parameter near line 1, column 102.  Positional parameter are considered deprecated; use named parameters or JPA-style positional parameters instead.
2017-04-04 14:36:08 WARN  HqlSqlWalker:996 - [DEPRECATION] Encountered positional parameter near line 1, column 102.  Positional parameter are considered deprecated; use named parameters or JPA-style positional parameters instead.
2017-04-04 14:36:08 WARN  HqlSqlWalker:996 - [DEPRECATION] Encountered positional parameter near line 1, column 108.  Positional parameter are considered deprecated; use named parameters or JPA-style positional parameters instead.
2017-04-04 14:36:08 WARN  HqlSqlWalker:996 - [DEPRECATION] Encountered positional parameter near line 1, column 101.  Positional parameter are considered deprecated; use named parameters or JPA-style positional parameters instead.
2017-04-04 14:36:08 WARN  HqlSqlWalker:996 - [DEPRECATION] Encountered positional parameter near line 1, column 107.  Positional parameter are considered deprecated; use named parameters or JPA-style positional parameters instead.
2017-04-04 14:36:25 INFO  HibernateTransactionManager:339 - Using DataSource [org.springframework.jdbc.datasource.DriverManagerDataSource@12232e47] of Hibernate SessionFactory for HibernateTransactionManager
2017-04-04 14:36:26 INFO  ContextLoader:325 - Root WebApplicationContext: initialization completed in 107328 ms
2017-04-04 14:36:26 INFO  ApplicationConfiguration:25 - SITENAME: RD0003FF731D3E