提交 a76abdc7 authored 作者: 李秋林's avatar 李秋林

1、修改pom文件中固定jar包名称finalName;2、添加日志配置;3、添加application生产环境配置

上级 884b4919
FROM openjdk:8
WORKDIR /promotion
ADD ./target/wangxiaolu-promotion-gateway.jar /promotion/app.jar
#设置时区
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone
# 定义容器启动命令ENTRYPOINT 和 CMD指令类似,都可以用于增加启动参数
ENTRYPOINT ["nohup","java", "-jar", "/promotion/app.jar"]
CMD ["--spring.profiles.active=live"]
EXPOSE 8011
1、更新parent代码、打包、更新依赖
2、更新common代码、打包、更新依赖
3、刷新依赖并打jar包,然后build镜像
docker build -t promotion-gateway:latest .
docker run -d -p 8010:8010 --name promotion-gateway \
-v /var/logs/promotion-gateway/:/var/logs/promotion-gateway/ \
--restart=always \
--network host \
promotion-gateway:latest
...@@ -229,6 +229,7 @@ ...@@ -229,6 +229,7 @@
<build> <build>
<finalName>wangxiaolu-promotion-gateway</finalName>
<plugins> <plugins>
<plugin> <plugin>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
......
...@@ -19,7 +19,7 @@ spring: ...@@ -19,7 +19,7 @@ spring:
server-addr: 42.193.103.153:8848 server-addr: 42.193.103.153:8848
namespace: dd681f3c-0d21-42e5-a96e-14863a7cdcdb namespace: dd681f3c-0d21-42e5-a96e-14863a7cdcdb
group: promotion group: promotion
cluster-name: wangxiaolu-promotion-gateway
gateway: gateway:
discovery: discovery:
locator: locator:
...@@ -30,3 +30,6 @@ spring: ...@@ -30,3 +30,6 @@ spring:
# uri: http://127.0.0.1:8011 # uri: http://127.0.0.1:8011
predicates: predicates:
- Path=/** - Path=/**
-
logging:
config: classpath:logback-spring.xml
\ No newline at end of file
spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://bj-cdb-j8ppdy86.sql.tencentcdb.com:63569/promotion_dev?autoReconnect=true
username: LnNDBM
password: fd0%bhD4@oO(%
redis:
port: 21101
host: bj-crs-oyzhz3c6.sql.tencentcdb.com
database: 0
password: u)R3jrHk(qwt~mv$Tg=U
main:
web-application-type: reactive
cloud:
nacos:
discovery:
server-addr: 192.168.0.2:8848
namespace: 5a4d4bfc-5297-4c6f-b475-0a6ae838d8d9
group: promotion
gateway:
discovery:
locator:
enabled: true
routes:
- id: wangxiaolu-promotion-service
uri: lb://wangxiaolu-promotion-service
# uri: http://127.0.0.1:8011
predicates:
- Path=/**
-
logging:
config: classpath:logback-spring.xml
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<!-- 日志级别从低到高分为 TRACE < DEBUG < INFO < WARN < ERROR < FATAL,如果设置为WARN,则低于WARN的信息都不会输出 -->
<!-- scan:当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true -->
<!-- scanPeriod:设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。当scan为true时,此属性生效。默认的时间间隔为1分钟。 -->
<!-- debug:当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false。 -->
<configuration scan="true" scanPeriod="10 seconds">
<property name="APP_NAME" value="promotion-gateway"/>
<contextName>${APP_NAME}</contextName>
<!-- <include resource="org/springframework/boot/logging/logback/defaults.xml" />-->
<property name="HOSTNAME" value="${HOSTNAME}"/>
<conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter" />
<conversionRule conversionWord="wex" converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter" />
<conversionRule conversionWord="wEx" converterClass="org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter" />
<!-- 对应yml文件中spring.profiles.active配置-->
<springProfile name="dev">
<property name="LOG_PATH" value="./logs/${APP_NAME}" />
</springProfile>
<springProfile name="qa,live">
<property name="LOG_PATH" value="/var/logs/${APP_NAME}" />
</springProfile>
<property name="CONSOLE_LOG_PATTERN" value="${CONSOLE_LOG_PATTERN:-%d{${LOG_DATEFORMAT_PATTERN:-yyyy-MM-dd HH:mm:ss.SSS}} ${LOG_LEVEL_PATTERN:-%5p} --- [%thread] %-40.40logger{39} : %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}"/>
<property name="FILE_LOG_PATTERN" value="${FILE_LOG_PATTERN:-%d{${LOG_DATEFORMAT_PATTERN:-yyyy-MM-dd HH:mm:ss.SSS}} ${LOG_LEVEL_PATTERN:-%5p} --- [%thread] %-40.40logger{39} : %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}"/>
<!-- 输出到控制台-->
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>${CONSOLE_LOG_PATTERN}</pattern>
<charset>UTF-8</charset>
</encoder>
</appender>
<!-- 日志发送至logstash -->
<!-- <appender name="logstash" class="net.logstash.logback.appender.LogstashTcpSocketAppender">-->
<!-- &lt;!&ndash; logstash的服务器地址和通信端口 (logstash.yml中配置的就是5043端口进行输入)&ndash;&gt;-->
<!-- <destination>localhost:5043</destination>-->
<!-- &lt;!&ndash; encoder is required &ndash;&gt;-->
<!-- <encoder class="net.logstash.logback.encoder.LogstashEncoder">-->
<!-- &lt;!&ndash; 在elasticsearch的index中追加applicationName字段 &ndash;&gt;-->
<!-- <customFields>{"applicationName":"${applicationName}"}</customFields>-->
<!-- </encoder>-->
<!-- </appender>-->
<!-- 按照每天生成日志文件 -->
<appender name="rollingFile"
class="ch.qos.logback.core.rolling.RollingFileAppender">
<encoder>
<pattern>${FILE_LOG_PATTERN}</pattern>
</encoder>
<file>${LOG_PATH}/gateway-today.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<cleanHistoryOnStart>false</cleanHistoryOnStart>
<fileNamePattern>${LOG_PATH}/gateway-%d{yyyy-MM-dd}.%i.gz</fileNamePattern>
<maxFileSize>200MB</maxFileSize>
<maxHistory>15</maxHistory>
<totalSizeCap>0</totalSizeCap>
</rollingPolicy>
</appender>
<!-- 按照每天生成日志文件 -->
<appender name="errorFile"
class="ch.qos.logback.core.rolling.RollingFileAppender">
<encoder>
<pattern>${FILE_LOG_PATTERN}</pattern>
</encoder>
<file>${LOG_PATH}/gateway-error-today.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<cleanHistoryOnStart>false</cleanHistoryOnStart>
<fileNamePattern>${LOG_PATH}/gateway-error-%d{yyyy-MM-dd}.%i.gz</fileNamePattern>
<maxFileSize>200MB</maxFileSize>
<maxHistory>15</maxHistory>
<totalSizeCap>0</totalSizeCap>
</rollingPolicy>
<!--
此日志文件只记录debug级别的
onMatch和onMismatch都有三个属性值,分别为Accept、DENY和NEUTRAL
onMatch="ACCEPT" 表示匹配该级别及以上
onMatch="DENY" 表示不匹配该级别及以上
onMatch="NEUTRAL" 表示该级别及以上的,由下一个filter处理,如果当前是最后一个,则表示匹配该级别及以上
onMismatch="ACCEPT" 表示匹配该级别以下
onMismatch="NEUTRAL" 表示该级别及以下的,由下一个filter处理,如果当前是最后一个,则不匹配该级别以下的
onMismatch="DENY" 表示不匹配该级别以下的
-->
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>ERROR</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
</appender>
<root level="INFO">
<appender-ref ref="console" />
<appender-ref ref="rollingFile" />
<appender-ref ref="errorFile" />
<!-- <appender-ref ref="logstash"/>-->
</root>
</configuration>
\ No newline at end of file
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论