tuonina 6 years ago
parent
commit
79d0376583

+ 2 - 2
build.gradle

@@ -17,8 +17,8 @@ buildscript {
         shiro_version = '1.4.0'
         pinyin4j_version = '2.5.1'
         rxJavaVersion='2.2.3'
-        jwtVersion = '1.3'
-        authVersion='1.1'
+        jwtVersion = '1.3.8.2'
+        authVersion='1.1.5.4'
     }
     repositories {
         mavenCentral()

+ 2 - 2
zen-web/src/main/kotlin/cn/gygxzc/envir/MainApplication.kt

@@ -3,7 +3,7 @@ package cn.gygxzc.envir
 import cn.gygxzc.cloud.tina.auth.EnableTinaAuth
 import cn.gygxzc.cloud.tina.fastdfs.client.EnableFastDFSClient
 import cn.gygxzc.tina.cloud.bus.EnableRabbitMessage
-import cn.gygxzc.tina.cloud.jwt.session.EnableJwtSpringRedisSession
+import cn.gygxzc.tina.cloud.jwt.session.EnableJwtRedisSession
 import org.mybatis.spring.annotation.MapperScan
 import org.springframework.boot.SpringApplication
 import org.springframework.boot.autoconfigure.SpringBootApplication
@@ -21,7 +21,7 @@ import org.springframework.cloud.openfeign.EnableFeignClients
 @EnableFastDFSClient
 @EnableRabbitMessage
 @EnableDiscoveryClient
-@EnableJwtSpringRedisSession
+@EnableJwtRedisSession
 @SpringBootApplication(scanBasePackages = ["cn.gygxzc.envir", "com.gxzc"], exclude = [RedisAutoConfiguration::class])
 @MapperScan(basePackages = ["cn.gygxzc.**.dao", "cn.gygxzc.**.mapper"])
 class MainApplication : SpringBootServletInitializer() {

+ 2 - 0
zen-web/src/main/kotlin/cn/gygxzc/envir/api/sys/controller/SysController.kt

@@ -1,5 +1,6 @@
 package cn.gygxzc.envir.api.sys.controller
 
+import cn.gygxzc.cloud.tina.auth.annotation.ResourceApi
 import com.gxzc.zen.common.dto.ResponseDto
 import io.swagger.annotations.Api
 import io.swagger.annotations.ApiOperation
@@ -17,6 +18,7 @@ class SysController {
 
     @GetMapping
     @ApiOperation("获取")
+    @ResourceApi(name = "获取系统信息", desc = "获取系统信息")
     fun info(): Any {
         return ResponseDto().data("this is registry server !! ")
     }

+ 9 - 1
zen-web/src/main/kotlin/cn/gygxzc/envir/api/sys/controller/TokenController.java

@@ -1,5 +1,10 @@
 package cn.gygxzc.envir.api.sys.controller;
 
+import cn.gygxzc.cloud.tina.auth.annotation.ResourceApi;
+import cn.gygxzc.cloud.tina.auth.enums.ResourceLevel;
+import io.swagger.annotations.Api;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
@@ -10,11 +15,14 @@ import org.springframework.web.bind.annotation.RestController;
  */
 @RestController
 @RequestMapping("/token")
+@Api("检查Token的有效性")
 public class TokenController {
 
+    private Logger logger = LoggerFactory.getLogger(TokenController.class);
 
     @GetMapping("/check")
+    @ResourceApi(name = "检查登陆状态", level = ResourceLevel.AUTHC)
     public void check() {
-
+        logger.info("token 有效=》{}");
     }
 }

+ 2 - 2
zen-web/src/main/resources/application.yml

@@ -10,7 +10,7 @@ spring:
     password: tuonina
     url: jdbc:mysql://192.168.1.206:3307/envir_test?useInformationSchema=true&autoReconnect=true&useUnicode=true&characterEncoding=utf-8&useSSL=false&zeroDateTimeBehavior=convertToNull
   jta:
-    log-dir: .logs
+    log-dir: .logs/${spring.application.name}/jta
 
 swagger:
   open: true
@@ -22,7 +22,7 @@ spring:
     password: tuonina
     url: jdbc:mysql://192.168.1.206:3307/envir_test?useInformationSchema=true&autoReconnect=true&useUnicode=true&characterEncoding=utf-8&useSSL=false&zeroDateTimeBehavior=convertToNull
   jta:
-    log-dir: .logs
+    log-dir: .logs/${spring.application.name}/jta
 
 swagger:
   open: false

+ 2 - 0
zen-web/src/main/resources/bootstrap.yml

@@ -17,6 +17,8 @@ spring:
       allow-override: true
 
 
+security:
+  scan: true
 ---
 spring:
   profiles: dev

+ 45 - 69
zen-web/src/main/resources/logback-spring.xml

@@ -1,23 +1,25 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <configuration scan="true">
 
-    <springProperty  scope="context" name="appName" source="spring.application.name"/>
+    <springProperty scope="context" name="appName" source="spring.application.name"/>
 
     <!--<include resource="org/springframework/boot/logging/logback/base.xml"/>-->
     <contextName>${appName}</contextName>
     <property name="LOG_PATH" value=".logs"/>
     <!--设置系统日志目录-->
-    <property name="APPDIR" value="${appName}" />
+    <property name="APPDIR" value="${appName}"/>
     <!--定义日志文件的存储地址 勿在 LogBack 的配置中使用相对路径-->
     <!-- %m输出的信息,%p日志级别,%t线程名,%d日期,%c类的全名,,,, -->
-    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
         <encoder>
             <!--<pattern>%d %p (%file:%line\)- %m%n</pattern>-->
             <!--格式化输出:%d:表示日期    %thread:表示线程名     %-5level:级别从左显示5个字符宽度  %msg:日志消息    %n:是换行符-->
-            <pattern>1-%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger - %msg%n</pattern>
+            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger Line:%-3L - %msg%n</pattern>
             <charset>UTF-8</charset>
         </encoder>
     </appender>
+
+
     <!--
           说明:
           1、日志级别及文件
@@ -42,6 +44,7 @@
         <file>${LOG_PATH}/${APPDIR}/log_error.log</file>
         <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
         <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+            <maxHistory>30</maxHistory>
             <!-- 归档的日志文件的路径,例如今天是2013-12-21日志,当前写的日志文件路径为file节点指定,可以将此文件与file指定文件路径设置为不同路径,从而将当前日志文件或归档日志文件置不同的目录。
             而2013-12-21的日志文件在由fileNamePattern指定。%d{yyyy-MM-dd}指定日期格式,%i指定索引 -->
             <fileNamePattern>${LOG_PATH}/${APPDIR}/error/log-error-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
@@ -67,19 +70,20 @@
     </appender>
 
     <!-- 日志记录器,日期滚动记录 -->
-    <appender name="FILEWARN" class="ch.qos.logback.core.rolling.RollingFileAppender">
+    <appender name="FILEINFO" class="ch.qos.logback.core.rolling.RollingFileAppender">
         <!-- 正在记录的日志文件的路径及文件名 -->
-        <file>${LOG_PATH}/${APPDIR}/log_warn.log</file>
+        <file>${LOG_PATH}/${APPDIR}/log_info.log</file>
         <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
         <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
             <!-- 归档的日志文件的路径,例如今天是2013-12-21日志,当前写的日志文件路径为file节点指定,可以将此文件与file指定文件路径设置为不同路径,从而将当前日志文件或归档日志文件置不同的目录。
             而2013-12-21的日志文件在由fileNamePattern指定。%d{yyyy-MM-dd}指定日期格式,%i指定索引 -->
-            <fileNamePattern>${LOG_PATH}/${APPDIR}/warn/log-warn-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
+            <fileNamePattern>${LOG_PATH}/${APPDIR}/info/log-info-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
             <!-- 除按日志记录之外,还配置了日志文件不能超过2M,若超过2M,日志文件会以索引0开始,
             命名日志文件,例如log-error-2013-12-21.0.log -->
             <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                 <maxFileSize>2MB</maxFileSize>
             </timeBasedFileNamingAndTriggeringPolicy>
+            <maxHistory>15</maxHistory>
         </rollingPolicy>
         <!-- 追加方式记录日志 -->
         <append>true</append>
@@ -90,21 +94,22 @@
         </encoder>
         <!-- 此日志文件只记录info级别的 -->
         <filter class="ch.qos.logback.classic.filter.LevelFilter">
-            <level>warn</level>
+            <level>info</level>
             <onMatch>ACCEPT</onMatch>
             <onMismatch>DENY</onMismatch>
         </filter>
     </appender>
 
     <!-- 日志记录器,日期滚动记录 -->
-    <appender name="FILEINFO" class="ch.qos.logback.core.rolling.RollingFileAppender">
+    <appender name="FILEWARN" class="ch.qos.logback.core.rolling.RollingFileAppender">
         <!-- 正在记录的日志文件的路径及文件名 -->
-        <file>${LOG_PATH}/${APPDIR}/log_info.log</file>
+        <file>${LOG_PATH}/${APPDIR}/log_warn.log</file>
         <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
         <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
             <!-- 归档的日志文件的路径,例如今天是2013-12-21日志,当前写的日志文件路径为file节点指定,可以将此文件与file指定文件路径设置为不同路径,从而将当前日志文件或归档日志文件置不同的目录。
             而2013-12-21的日志文件在由fileNamePattern指定。%d{yyyy-MM-dd}指定日期格式,%i指定索引 -->
-            <fileNamePattern>${LOG_PATH}/${APPDIR}/info/log-info-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
+            <maxHistory>7</maxHistory>
+            <fileNamePattern>${LOG_PATH}/${APPDIR}/warn/log-warn-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
             <!-- 除按日志记录之外,还配置了日志文件不能超过2M,若超过2M,日志文件会以索引0开始,
             命名日志文件,例如log-error-2013-12-21.0.log -->
             <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
@@ -120,81 +125,55 @@
         </encoder>
         <!-- 此日志文件只记录info级别的 -->
         <filter class="ch.qos.logback.classic.filter.LevelFilter">
-            <level>info</level>
+            <level>warn</level>
             <onMatch>ACCEPT</onMatch>
             <onMismatch>DENY</onMismatch>
         </filter>
     </appender>
 
+    <appender name="STDOUT" class="ch.qos.logback.core.FileAppender">
+        <file>${LOG_PATH}/${APPDIR}/log.log</file>
+        <append>false</append>
+        <encoder>
+            <!--<pattern>%d %p (%file:%line\)- %m%n</pattern>-->
+            <!--格式化输出:%d:表示日期    %thread:表示线程名     %-5level:级别从左显示5个字符宽度  %msg:日志消息    %n:是换行符-->
+            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger Line:%-3L - %msg%n</pattern>
+            <charset>UTF-8</charset>
+        </encoder>
+    </appender>
+
+
+
     <appender name="MQ" class="cn.gygxzc.envir.core.logger.MQAppender">
         <sysName>${appName}</sysName>
     </appender>
     <!--实现分布式收集日志的appender-->
     <appender name="ASYNC" class="ch.qos.logback.classic.AsyncAppender">
-        <appender-ref ref ="MQ"/>
+        <appender-ref ref="MQ"/>
     </appender>
 
 
-    <!--日志异步到数据库  -->
-    <!--<appender name="DBAPPENDER" class="ch.qos.logback.classic.db.DBAppender">-->
-    <!--<connectionSource class="ch.qos.logback.core.db.DataSourceConnectionSource">-->
-    <!--<dataSource class="com.zaxxer.hikari.HikariDataSource">-->
-    <!--<driverClassName>com.mysql.jdbc.Driver</driverClassName>-->
-    <!--<jdbcUrl>jdbc:mysql://localhost:3306/albedo-new?useUnicode=true&amp;characterEncoding=utf8&amp;useSSL=false</jdbcUrl>-->
-    <!--<username>root</username>-->
-    <!--<password>123456</password>-->
-    <!--<poolName>HikariPool-logback</poolName>-->
-    <!--</dataSource>-->
-    <!--</connectionSource>-->
-    <!--&lt;!&ndash; 此日志文件只记录info级别的 &ndash;&gt;-->
-    <!--<filter class="ch.qos.logback.classic.filter.LevelFilter">-->
-    <!--<level>warn</level>-->
-    <!--<onMatch>ACCEPT</onMatch>-->
-    <!--<onMismatch>DENY</onMismatch>-->
-    <!--</filter>-->
-    <!--&lt;!&ndash; 此日志文件只记录info级别的 &ndash;&gt;-->
-    <!--<filter class="ch.qos.logback.classic.filter.LevelFilter">-->
-    <!--<level>error</level>-->
-    <!--<onMatch>ACCEPT</onMatch>-->
-    <!--<onMismatch>DENY</onMismatch>-->
-    <!--</filter>-->
-    <!--</appender>-->
-    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
-        <encoder>
-            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger Line:%-3L - %msg%n</pattern>
-        </encoder>
-    </appender>
-    <!---->
-    <logger name="com.gxzc" level="DEBUG" additivity="true"/>
-    <logger name="cn.gygxzc" level="DEBUG"/>
+    <!-- 自己的打印的日志,保存到数据库。additivity 为true,表示会将日志向上级传递,否则不会打印到其他配置-->
+    <logger name="com.gxzc" level="DEBUG" additivity="true">
+        <appender-ref ref="ASYNC"/>
+    </logger>
+    <logger name="cn.gygxzc" level="DEBUG">
+        <appender-ref ref="ASYNC"/>
+    </logger>
+
     <logger name="org.springframework.data.mybatis" level="DEBUG"/>
     <logger name="org.springframework.aop.aspectj" level="ERROR"/>
 
     <logger name="javax.activation" level="WARN"/>
     <logger name="javax.mail" level="WARN"/>
     <logger name="javax.xml.bind" level="WARN"/>
-    <logger name="ch.qos.logback" level="INFO"/>
-    <logger name="com.codahale.metrics" level="WARN"/>
-    <logger name="com.ryantenney" level="WARN"/>
-    <logger name="com.sun" level="WARN"/>
-    <logger name="com.zaxxer" level="WARN"/>
-    <logger name="io.undertow" level="WARN"/>
-    <logger name="net.sf.ehcache" level="WARN"/>
-    <logger name="org.apache" level="WARN"/>
-    <logger name="org.apache.catalina.startup.DigesterFactory" level="OFF"/>
-    <logger name="org.bson" level="WARN"/>
-    <logger name="org.hibernate.validator" level="WARN"/>
-    <logger name="org.hibernate" level="WARN"/>
+    <logger name="ch.qos.logback" level="ERROR"/>
+
+
+    <logger name="org.hibernate.validator" level="ERROR"/>
+    <logger name="org.hibernate" level="ERROR"/>
     <logger name="org.hibernate.ejb.HibernatePersistence" level="OFF"/>
     <logger name="org.springframework.web" level="INFO"/>
-    <logger name="org.springframework.security" level="WARN"/>
-    <logger name="org.springframework.cache" level="WARN"/>
-    <logger name="org.thymeleaf" level="WARN"/>
-    <logger name="org.xnio" level="WARN"/>
-    <logger name="springfox" level="WARN"/>
-    <logger name="sun.rmi" level="WARN"/>
-    <logger name="liquibase" level="WARN"/>
-    <logger name="sun.rmi.transport" level="WARN"/>
 
     <logger name="jdbc.connection" level="ERROR"/>
     <logger name="jdbc.resultset" level="ERROR"/>
@@ -212,20 +191,17 @@
             <appender-ref ref="FILEERROR"/>
             <appender-ref ref="FILEWARN"/>
             <appender-ref ref="FILEINFO"/>
-            <appender-ref ref="DBAPPENDER"/>
-            <appender-ref ref="ASYNC"/>
         </root>
     </springProfile>
 
 
     <springProfile name="dev">
         <root level="INFO">
-            <appender-ref ref="STDOUT"/>
             <appender-ref ref="CONSOLE"/>
+            <appender-ref ref="STDOUT"/>
             <appender-ref ref="FILEERROR"/>
             <appender-ref ref="FILEWARN"/>
             <appender-ref ref="FILEINFO"/>
-            <appender-ref ref="ASYNC"/>
         </root>
     </springProfile>