admin
2021-06-09 a2944f47783f03f30c86768b7577b9378c862d6a
日志调整
1个文件已修改
7个文件已添加
432 ■■■■■ 已修改文件
service-vip/src/main/java/com/ks/vip/config/RedisConfig.java 73 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-vip/src/main/resources/application-pro.yml 107 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-vip/src/main/resources/application-test.yml 102 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-vip/src/main/resources/logback.xml 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-vip/src/main/resources/wx/apiclient_key.pem 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-vip/src/test/java/com/ks/LogTest.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-vip/src/test/java/com/ks/OrderTest.java 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-vip/src/test/java/com/ks/RedisTest.java 50 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-vip/src/main/java/com/ks/vip/config/RedisConfig.java
New file
@@ -0,0 +1,73 @@
package com.ks.vip.config;
import com.fasterxml.jackson.annotation.JsonAutoDetect;
import com.fasterxml.jackson.annotation.PropertyAccessor;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.redis.connection.RedisConnectionFactory;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer;
import org.springframework.data.redis.serializer.StringRedisSerializer;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
@Configuration
public class RedisConfig {
    Logger log = LoggerFactory.getLogger(RedisConfig.class);
    @Value("${spring.redis.jedis.pool.max-total}")
    private int maxTotal;
    @Value("${spring.redis.jedis.pool.max-idle}")
    private int maxIdle;
    private boolean testOnBorrow = true;
    @Value("${spring.redis.host}")
    private String host;
    @Value("${spring.redis.port}")
    private int port;
    @Value("${spring.redis.timeout}")
    private String timeout;
    @Value("${spring.redis.password}")
    private String password;
    @Value("${spring.redis.database}")
    private int database;
    @Bean
    public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory factory) {
        RedisTemplate<String, Object> template = new RedisTemplate<>();
        template.setConnectionFactory(factory);
        Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class);
        ObjectMapper om = new ObjectMapper();
        om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
        om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);
        jackson2JsonRedisSerializer.setObjectMapper(om);
        StringRedisSerializer stringRedisSerializer = new StringRedisSerializer();
        // key采用String的序列化方式
        template.setKeySerializer(stringRedisSerializer);
        // hash的key也采用String的序列化方式
        template.setHashKeySerializer(stringRedisSerializer);
        // value序列化方式采用jackson
        template.setValueSerializer(jackson2JsonRedisSerializer);
        // hash的value序列化方式采用jackson
        template.setHashValueSerializer(jackson2JsonRedisSerializer);
        template.afterPropertiesSet();
        return template;
    }
    @Bean
    public JedisPool jedisPool() {
        JedisPoolConfig config = new JedisPoolConfig();
        config.setMaxTotal(maxTotal);
        config.setMaxIdle(maxIdle);
        config.setTestOnBorrow(testOnBorrow);
        JedisPool jedisPool = new JedisPool(config, host, port, Integer.parseInt(timeout.replace("ms", "")), password, database);
        return jedisPool;
    }
}
service-vip/src/main/resources/application-pro.yml
New file
@@ -0,0 +1,107 @@
server:
  port: 80
  tomcat:
    uri-encoding: UTF-8
spring:
  main:
    allow-bean-definition-overriding: true
  http:
    encoding:
      force: true
      charset: UTF-8
      enabled: true
  data:
    mongodb:
      username: yeshi
      password: Yeshi2016@
      host: 172.16.16.44
      port: 27017
      database: tejia-vip
      authentication-database: admin
  datasource:
    #gz-cdb-r13d0yi9.sql.tencentcdb.com:62929
    #172.16.16.17:3306
    url: jdbc:mysql://172.16.16.17:3306/ec_tejia_vip?&useTimezone=true&serverTimezone=GMT%2B8
    username: root
    password: Yeshi2016@
    driver-class-name: com.mysql.jdbc.Driver
    type: com.alibaba.druid.pool.DruidDataSource
    druid:
      initial-size: 8
      min-idle: 1
      max-active: 20
      max-wait: 60000
      time-between-eviction-runsMillis: 60000
      min-evictable-idle-timeMillis: 300000
      validation-query: select 'x' FROM DUAL
      test-while-idle: true
      test-on-borrow: false
      test-on-return: false
      pool-prepared-statements: true
      max-open-prepared-statements: 20
      max-pool-prepared-statement-per-connection-size: 20
      filters: stat
      connection-properties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
      use-global-data-source-stat: true
  redis:
    host: 172.16.16.15
    port: 6379
    password: crs-43yhgz0i:Yeshi2016@
    timeout: 5000ms
    database: 9
    lettuce:
      pool:
        max-active: 1024
        max-wait: 3000ms
        max-idle: 200
        time-between-eviction-runs: 300000ms
        min-idle: 2
    jedis:
      pool:
        max-total: 1024
        max-wait: 3000
        max-idle: 20
        time-between-eviction-runs: 300000
        min-idle: 2
mybatis:
  mapper-locations: classpath:mapper/*.xml
  type-aliases-package: com.ks.vip.pojo.DO
  configuration:
    log-impl: org.apache.ibatis.logging.slf4j.Slf4jImpl
dubbo:
  application:
    name: tejia-vip-provider
  registry:
    protocol: zookeeper
    address: zookeeper://172.16.16.26:2181
    client: curator
  protocol:
    name: dubbo
    port: 20902
  scan:
    base-packages: com.ks.vip.service.remote
  provider:
    timeout: 10000
#    host: 193.112.35.168
xxl:
  job:
    accessToken:
    executor:
      appname: demo
      ip:
      logpath: /data/applogs/xxl-job/jobhandler
      logretentiondays: -1
      port: 9993
    admin:
      addresses: http://111.231.250.166:9000/xxl-job-admin
logging:
  level:
    com:
      ks:
        vip:
          mapper: debug
    org.springframework.data.mongodb.core: DEBUG
service-vip/src/main/resources/application-test.yml
New file
@@ -0,0 +1,102 @@
server:
  port: 8089
  tomcat:
    uri-encoding: UTF-8
spring:
  main:
    allow-bean-definition-overriding: true
  http:
    encoding:
      force: true
      charset: UTF-8
      enabled: true
  data:
    mongodb:
      username: admin
      password: admin
      #172.16.16.44
      #193.112.35.168
      host: 118.195.138.153
      port: 27017
      database: lijin
      authentication-database: admin
  datasource:
    #gz-cdb-r13d0yi9.sql.tencentcdb.com:62929
    #172.16.16.17:3306
    url: jdbc:mysql://gz-cdb-r13d0yi9.sql.tencentcdb.com:62929/ec_tejia_vip?&useTimezone=true&serverTimezone=GMT%2B8
    username: root
    password: Yeshi2016@
    driver-class-name: com.mysql.jdbc.Driver
    type: com.alibaba.druid.pool.DruidDataSource
    druid:
      initial-size: 8
      min-idle: 1
      max-active: 20
      max-wait: 60000
      time-between-eviction-runsMillis: 60000
      min-evictable-idle-timeMillis: 300000
      validation-query: select 'x' FROM DUAL
      test-while-idle: true
      test-on-borrow: false
      test-on-return: false
      pool-prepared-statements: true
      max-open-prepared-statements: 20
      max-pool-prepared-statement-per-connection-size: 20
      filters: stat
      connection-properties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
      use-global-data-source-stat: true
  redis:
    #172.16.16.3
    #193.112.34.40
    host: 193.112.34.40
    port: 6379
    password: weikou2014
    timeout: 5000ms
    jedis:
      pool:
        max-wait: 10000
        max-idle: 200
        max-total: 1024
    database: 9
mybatis:
  mapper-locations : classpath:mapper/*.xml
  type-aliases-package: com.ks.vip.pojo.DO
  configuration:
    log-impl: org.apache.ibatis.logging.slf4j.Slf4jImpl
dubbo:
  application:
    name: lijin-provider
  registry:
    protocol: zookeeper
    address: zookeeper://193.112.35.168:2181
    client: curator
  protocol:
    name: dubbo
    port: 20903
  scan:
    base-packages: com.ks.vip.service.remote
  provider:
    timeout: 10000
    host: 127.0.0.1
xxl:
  job:
    accessToken:
    executor:
      appname: demo
      ip:
      logpath: /data/applogs/xxl-job/jobhandler
      logretentiondays: -1
      port: 9999
    admin:
      addresses: http://localhost:8081/xxl-job-admin
logging:
  level:
    com:
      ks:
        vip:
          mapper: debug
    org.springframework.data.mongodb.core: DEBUG
service-vip/src/main/resources/logback.xml
@@ -14,8 +14,8 @@
    <!--日志存储的根路径 ${catalina.base}指向每个Tomcat目录私有信息的位置,
             就是conf、logs、temp、webapps和work的父目录-->
    <!-- E:/logback -->
    <property name="log.filePath" value="/tmp/logs/lucky"/>
    <property name="log.filePath" value="/tmp/logs"/>
    <!--<property name="log.filePath" value="D:/logs"/>-->
    <!--日志展示的格式-->
    <property name="log.pattern" value="%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n"/>
@@ -25,6 +25,18 @@
        <!--encoder作用是既把日志信息转换为字符串,也输出到指定的位置 -->
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
            <!--pattern为配置输出的格式-->
            <pattern>${log.pattern}</pattern>
        </encoder>
    </appender>
    <!-- INFO -->
    <appender name="infoAppender" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${log.filePath}/info.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <fileNamePattern>${log.filePath}/info/info.log.gz.%d{yyyy-MM-dd}</fileNamePattern>
            <maxHistory>${log.maxHistory}</maxHistory>
        </rollingPolicy>
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
            <pattern>${log.pattern}</pattern>
        </encoder>
    </appender>
@@ -95,6 +107,7 @@
    <root level="INFO">
        <!--在控制台中输出所在层级对应level(以及大于level)的日志信息,因为这里并没有设置LevelFilter-->
        <appender-ref ref="STDOUT"></appender-ref>
        <appender-ref ref="infoAppender"></appender-ref>
        <appender-ref ref="errorAppender"></appender-ref>
    </root>
</configuration>
service-vip/src/main/resources/wx/apiclient_key.pem
New file
@@ -0,0 +1,28 @@
-----BEGIN PRIVATE KEY-----
MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDMD+LQJ3LJJZAR
+ix+XEO6GjClzau5unLZQNNF6KwqISV/x2oyIFwV7rNvmVNByfA3OcxZKTsW4iXT
1DI5v7cUr4dwRgOLxya7IBaziJEQ70IHqmPVjf2aR381HvF4t4ILS1PDhlHEqNXY
onCDhqDbjCGcboV21wd7+borEWst6Kx8qud59Duv8bwcmwshSQFX7k/nyqmn8DWQ
JXB8GwZUQy7i9xtnAvhjgzsaUcSj5GH8NRmuW8bb2uPOlYZ5BwuEd25zq7cy1Y94
Ji3ZX3QCl3KXk1QluxRM/hMJAnBgRok+BdTR62xmsDDpdfXgjYMzxDarB2keCnZa
A9AM7wvZAgMBAAECggEARd4+k3SeSZ6x2GXm7BDdI5AqDesAnCPphNc8P1ht8jLN
KxX1F1qbDOtgxpohtonU1KPWgsSqNaiSuReTZtBseAmtftSKDEbQzQssmqXsvXae
Dg/aBNmL9lH6jQ6eMO3r+b/92xlXT9Va+sSLb40d8G3naC8zRUBUkK8tfeeF4f6G
jcdZOvDLEb3CzULxT+l9gVhJ4fUvolPZqGFHsW0j+j73YMviatKUN21s0vnJt/xp
z3kcyIAKa7f7fy+WsDUudbkq1aVTU4Aq11Wv5AcMRx1PT5rF7XXafW27hbf09Mal
oMd3E9YS5dOo/7dIcEjZqi1nPA/iUzGLrFU1rFvPcQKBgQD0HTcf7BVdolp45RaZ
BRv2Bg/m+KPT5pzHIrfme/0ccrel2td9lNHXrjMiUWngBMWN+gB6hUeeyXcnB7Tv
c+NmnPGPC/cIO/zRF0sj/6Sv1T6I7pqF6OqeBlL1DWPxdKJCdBx4x/b0G+Mi42pB
n+rX1MMFKny8/+Re/O9Q/LOUxQKBgQDV/3AMe3fS5pM0zrJzVRuPsmlgdGeVhK7f
UGHMdaPNNN/5tPN2XJdK1EHj3dtNI6pQN22VHSLFoPuBR03dLK7s6tAaT3Xg+2Si
ItT0fyUmJzyo8H38G/uHy+5WeUH8fN4gHqeFgY/nuOCTurji9Ai4jEA12tzykM7L
GQdI9PLUBQKBgDB7fO9CHBw0mnNYTFynvx3lplLhHuh+7LRAGPYVufdkcUTnadTv
MZ38Yvt13+k2CWZhOKccwVSv/pIp3a2Q/qDqmq8mWTGxeEyuq6XCqBqj53+ao+Xk
lHQ+HUu+FRNnbrJ0DROP42QoBbxwHjJaaHHlN7ZW8d83k0uqQH19Ms1hAoGBAJpk
n7+xuMKlbmF0G1WQesES9GoNscozH0Oop9aurU5ZLprnDZxAszrepucy4ozmBXO4
ecxSaArz2WDtQ+Ul3tK5mwjQeXinh3Re8wuvS+sZ9e7hC9Q/kBrqa/thotT6dfvw
geaVknCZdxW+arP7Yuta7NyuGii7hycK2LGvYB7NAoGAYTdxBkLw0jIseDPYbMsA
TRo7HVfleduhUZdNfrjQokJbsbEeLbHb1DFM/BH99xAQ/Kv6L/tXXoExLHbU4xQq
nwT6DLzn9pTbAhbSqVQE8H0oelJQLxjyk/d8fNutIiSmhXaHpc++LycHgfBDgOpf
00bxvSPu1/7qJ1dN0jwxPxA=
-----END PRIVATE KEY-----
service-vip/src/test/java/com/ks/LogTest.java
New file
@@ -0,0 +1,16 @@
package com.ks;
import org.junit.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class LogTest {
    Logger logger = LoggerFactory.getLogger(LogTest.class);
    @Test
    public void test1() {
        logger.info("123123");
    }
}
service-vip/src/test/java/com/ks/OrderTest.java
New file
@@ -0,0 +1,39 @@
package com.ks;
import com.ks.vip.VIPApplication;
import com.ks.vip.exception.VipOrderException;
import com.ks.vip.pojo.DTO.VipOrderDTO;
import com.ks.vip.pojo.Enums.PayWayEnum;
import com.ks.vip.service.VipOrederPayService;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
import javax.annotation.Resource;
import java.math.BigDecimal;
@SpringBootTest(classes = VIPApplication.class)
public class OrderTest {
    @Resource
    private VipOrederPayService vipOrederPayService;
    @Test
    public void addAlipayOrder() {
        String notifuUrl = "http://api.tejia.yeshitv.com/fanli/client/v1/callback/alipay";
        String resturnUrl = "http://192.168.3.122:8848/tejia-web/vip/index.html";
        VipOrderDTO dto = new VipOrderDTO();
        dto.setUid("tejia-6845887");
        dto.setComboId(1l);
        dto.setPayAccount(null);
        dto.setPayMoney(new BigDecimal("19.9"));
        dto.setPayWay(PayWayEnum.weChat);
        dto.setThreeOrderId("tejia-vip-" + System.currentTimeMillis());
        try {
            vipOrederPayService.addOrderWithPay(dto, notifuUrl, resturnUrl,"192.168.3.122");
        } catch (VipOrderException e) {
            e.printStackTrace();
        }
    }
}
service-vip/src/test/java/com/ks/RedisTest.java
New file
@@ -0,0 +1,50 @@
package com.ks;
import com.ks.vip.VIPApplication;
import com.ks.vip.exception.VipOrderException;
import com.ks.vip.pojo.DTO.VipOrderDTO;
import com.ks.vip.pojo.Enums.PayWayEnum;
import com.ks.vip.service.VipOrederPayService;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import javax.annotation.Resource;
import java.math.BigDecimal;
@SpringBootTest(classes = VIPApplication.class)
public class RedisTest {
    @Resource
    private JedisPool jedisPool;
    @Test
    public void test() {
        Jedis jedis = jedisPool.getResource();
        try {
            String key = "test123123";
            jedis.set(key, 1312 + "");
            jedis.expire(key, 120);
        } finally {
            jedis.close();
        }
        try {
            Thread.sleep(2000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        jedis = jedisPool.getResource();
        try {
            String key = "test123123";
            System.out.println(jedis.get(key));
        } finally {
            jedis.close();
        }
    }
}