Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
I
indicators
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
zhangkb
indicators
Commits
b1ffbd58
Commit
b1ffbd58
authored
Jul 28, 2020
by
zhangkb
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
添加操作日志代码
parent
d68ba542
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
408 additions
and
346 deletions
+408
-346
DriveIndCalResultCtrl.java
...obile/indicators/api/hytobacco/DriveIndCalResultCtrl.java
+8
-0
IndicatorsDefCtrl.java
...keymobile/indicators/api/hytobacco/IndicatorsDefCtrl.java
+7
-0
Constants.java
...ain/java/com/keymobile/indicators/constant/Constants.java
+158
-154
LogManager.java
src/main/java/com/keymobile/indicators/utils/LogManager.java
+171
-165
ModelPathEnum.java
...in/java/com/keymobile/indicators/utils/ModelPathEnum.java
+31
-0
logback-custom.xml
src/main/resources/logback-custom.xml
+33
-27
No files found.
src/main/java/com/keymobile/indicators/api/hytobacco/DriveIndCalResultCtrl.java
View file @
b1ffbd58
...
...
@@ -10,10 +10,12 @@ import org.springframework.web.bind.annotation.RequestMapping;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
import
com.keymobile.indicators.constant.Constants
;
import
com.keymobile.indicators.model.entity.indicators.CompareUnitDef
;
import
com.keymobile.indicators.model.entity.indicators.DriveIndCalResultDef
;
import
com.keymobile.indicators.service.hytobacco.CompareUnitCalLogService
;
import
com.keymobile.indicators.service.hytobacco.DriveIndCalResultService
;
import
com.keymobile.indicators.utils.LogManager
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
...
...
@@ -36,6 +38,12 @@ public class DriveIndCalResultCtrl {
@ApiOperation
(
value
=
"对标单元综合计算"
,
notes
=
"对标单元综合计算"
)
@PostMapping
(
value
=
"/compareUnitListCal"
)
public
void
compareUnitListCal
(
@RequestBody
List
<
CompareUnitDef
>
compareUnitList
)
{
StringBuilder
compUnitDefString
=
new
StringBuilder
(
""
);
for
(
CompareUnitDef
compUnitDef
:
compareUnitList
)
{
compUnitDefString
.
append
(
compUnitDef
.
getCompareId
()).
append
(
";"
);
}
LogManager
.
logInfo
(
Constants
.
LOG_INDICATOR_UNIT_CAL_API
,
"执行对标单元id:{},日期:{} 的计算"
,
compUnitDefString
.
toString
(),
compareUnitList
.
get
(
0
).
getDate
());
driveIndCalResultService
.
compareUnitListCal
(
compareUnitList
);
}
...
...
src/main/java/com/keymobile/indicators/api/hytobacco/IndicatorsDefCtrl.java
View file @
b1ffbd58
...
...
@@ -10,6 +10,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
import
com.keymobile.indicators.constant.Constants
;
import
com.keymobile.indicators.model.entity.indicators.BaseIndDef
;
import
com.keymobile.indicators.model.entity.indicators.BaseIndDefVersionData
;
import
com.keymobile.indicators.model.entity.indicators.DriveIndDef
;
...
...
@@ -18,6 +19,7 @@ import com.keymobile.indicators.service.hytobacco.BaseIndDefService;
import
com.keymobile.indicators.service.hytobacco.BaseIndDefVersionService
;
import
com.keymobile.indicators.service.hytobacco.DriveIndDefService
;
import
com.keymobile.indicators.service.hytobacco.DriveIndDefVersionService
;
import
com.keymobile.indicators.utils.LogManager
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
...
...
@@ -58,6 +60,11 @@ public class IndicatorsDefCtrl {
@RequestParam
String
catalogIdPath
,
@RequestParam
String
user
,
@RequestParam
String
isUpdate
,
@RequestParam
String
code
)
throws
Exception
{
baseIndDefService
.
saveOrUpdate
(
baseIndDef
,
catalogId
,
catalogIdPath
,
user
,
isUpdate
,
code
);
if
(
"0"
.
equals
(
isUpdate
))
{
LogManager
.
logInfo
(
Constants
.
LOG_INDICATOR_BASE_INDI_API
,
"新增基础项:{}"
,
baseIndDef
.
getIndName
());
}
else
{
LogManager
.
logInfo
(
Constants
.
LOG_INDICATOR_BASE_INDI_API
,
"修改基础项:{}"
,
baseIndDef
.
getIndName
());
}
}
@ApiOperation
(
value
=
"删除基础指标"
,
notes
=
"删除基础指标"
)
...
...
src/main/java/com/keymobile/indicators/constant/Constants.java
View file @
b1ffbd58
package
com
.
keymobile
.
indicators
.
constant
;
/**
* 数据标准常量定义
*/
public
class
Constants
{
/**
* 日志---操作日志
*/
public
static
final
String
LOG_CONTEXT_API
=
"indicator.operate"
;
/** collection Name */
/** collection Name */
/**
* 英文分隔符;
*/
public
static
final
String
SEP_NOUN
=
";"
;
/**
* 英文分隔符.
*/
public
static
final
String
SEP_DOT
=
"."
;
/**
* 分隔符,
*/
public
static
final
String
SEP_COMMA
=
","
;
/**
* 分隔符/
*/
public
static
final
String
SEP
=
"/"
;
/**
* N
*/
public
static
final
String
N
=
"N"
;
/**
* Y
*/
public
static
final
String
Y
=
"Y"
;
/**
* 申请状态-草稿
*/
public
static
final
int
APPLY_STATE_DRAFT
=
1
;
/**
* 申请状态-审核中
*/
public
static
final
int
APPLY_STATE_AUDITING
=
2
;
/**
* 申请状态-已通过
*/
public
static
final
int
APPLY_STATE_PASSED
=
3
;
/**
* 申请状态-已拒绝
*/
public
static
final
int
APPLY_STATE_REJECTED
=
4
;
/**
* 申请状态-部分通过
*/
public
static
final
int
APPLY_STATE_PART_PASSED
=
5
;
/**
* 正常
*/
public
static
final
int
DATA_STATE_A
=
1
;
/**
* 停用、废止
*/
public
static
final
int
DATA_STATE_S
=
2
;
/**
* 删除
*/
public
static
final
int
DATA_STATE_X
=
3
;
/**
* 数据项数据来源- excel填报-1
*/
public
static
final
int
INPUT_EXCEL
=
1
;
/**
* 数据项数据来源- 在线填报-2
*/
public
static
final
int
INPUT_ONLINE
=
2
;
/**
* 数据项数据来源- 接口填报-3
*/
public
static
final
int
INPUT_INTERFACE
=
3
;
/**
* 对象类型- 组织机构-1
*/
public
static
final
int
OBJ_TYPE_ORG
=
1
;
/**
* 对象类型- 组织机构-2
*/
public
static
final
int
OBJ_TYPE_USER
=
2
;
/**
* 任务规则-省级填报可选角色
*/
public
static
final
String
RULE_PROVINCE_ENTER_ROLE
=
"PROVINCE_ENTER_ROLE"
;
/**
* 任务规则-省级审核角色id
*/
public
static
final
String
RULE_PROVINCE_AUDIT_ROLE
=
"PROVINCE_AUDIT_ROLE"
;
/**
* 任务规则-市填报可选角色
*/
public
static
final
String
RULE_CITY_ENTER_ROLE
=
"CITY_ENTER_ROLE"
;
/**
* 任务规则-市填审核角色id
*/
public
static
final
String
RULE_CITY_AUDIT_ROLE
=
"CITY_AUDIT_ROLE"
;
/**
* 任务规则-县级填报可选角色
*/
public
static
final
String
RULE_COUNTY_ENTER_ROLE
=
"COUNTY_ENTER_ROLE"
;
/**
* 任务规则-县级审核角色id
*/
public
static
final
String
RULE_COUNTY_AUDIT_ROLE
=
"COUNTY_AUDIT_ROLE"
;
/**
* ruleType=1 省级对标
*/
public
static
final
int
RULE_TYPE_PROVINCE
=
1
;
/**
* ruleType=2 市级对标
*/
public
static
final
int
RULE_TYPE_CITY
=
2
;
/**
* ruleType=3 县级对标
*/
public
static
final
int
RULE_TYPE_COUNTY
=
3
;
}
package
com
.
keymobile
.
indicators
.
constant
;
/**
* 数据标准常量定义
*/
public
class
Constants
{
/**
* 日志---操作日志
*/
public
static
final
String
LOG_CONTEXT_API
=
"indicator.operate"
;
public
static
final
String
LOG_INDICATOR_UNIT_CAL_API
=
"indicator.unit.cal"
;
public
static
final
String
LOG_INDICATOR_BASE_INDI_API
=
"indicator.base.indi"
;
/** collection Name */
/** collection Name */
/**
* 英文分隔符;
*/
public
static
final
String
SEP_NOUN
=
";"
;
/**
* 英文分隔符.
*/
public
static
final
String
SEP_DOT
=
"."
;
/**
* 分隔符,
*/
public
static
final
String
SEP_COMMA
=
","
;
/**
* 分隔符/
*/
public
static
final
String
SEP
=
"/"
;
/**
* N
*/
public
static
final
String
N
=
"N"
;
/**
* Y
*/
public
static
final
String
Y
=
"Y"
;
/**
* 申请状态-草稿
*/
public
static
final
int
APPLY_STATE_DRAFT
=
1
;
/**
* 申请状态-审核中
*/
public
static
final
int
APPLY_STATE_AUDITING
=
2
;
/**
* 申请状态-已通过
*/
public
static
final
int
APPLY_STATE_PASSED
=
3
;
/**
* 申请状态-已拒绝
*/
public
static
final
int
APPLY_STATE_REJECTED
=
4
;
/**
* 申请状态-部分通过
*/
public
static
final
int
APPLY_STATE_PART_PASSED
=
5
;
/**
* 正常
*/
public
static
final
int
DATA_STATE_A
=
1
;
/**
* 停用、废止
*/
public
static
final
int
DATA_STATE_S
=
2
;
/**
* 删除
*/
public
static
final
int
DATA_STATE_X
=
3
;
/**
* 数据项数据来源- excel填报-1
*/
public
static
final
int
INPUT_EXCEL
=
1
;
/**
* 数据项数据来源- 在线填报-2
*/
public
static
final
int
INPUT_ONLINE
=
2
;
/**
* 数据项数据来源- 接口填报-3
*/
public
static
final
int
INPUT_INTERFACE
=
3
;
/**
* 对象类型- 组织机构-1
*/
public
static
final
int
OBJ_TYPE_ORG
=
1
;
/**
* 对象类型- 组织机构-2
*/
public
static
final
int
OBJ_TYPE_USER
=
2
;
/**
* 任务规则-省级填报可选角色
*/
public
static
final
String
RULE_PROVINCE_ENTER_ROLE
=
"PROVINCE_ENTER_ROLE"
;
/**
* 任务规则-省级审核角色id
*/
public
static
final
String
RULE_PROVINCE_AUDIT_ROLE
=
"PROVINCE_AUDIT_ROLE"
;
/**
* 任务规则-市填报可选角色
*/
public
static
final
String
RULE_CITY_ENTER_ROLE
=
"CITY_ENTER_ROLE"
;
/**
* 任务规则-市填审核角色id
*/
public
static
final
String
RULE_CITY_AUDIT_ROLE
=
"CITY_AUDIT_ROLE"
;
/**
* 任务规则-县级填报可选角色
*/
public
static
final
String
RULE_COUNTY_ENTER_ROLE
=
"COUNTY_ENTER_ROLE"
;
/**
* 任务规则-县级审核角色id
*/
public
static
final
String
RULE_COUNTY_AUDIT_ROLE
=
"COUNTY_AUDIT_ROLE"
;
/**
* ruleType=1 省级对标
*/
public
static
final
int
RULE_TYPE_PROVINCE
=
1
;
/**
* ruleType=2 市级对标
*/
public
static
final
int
RULE_TYPE_CITY
=
2
;
/**
* ruleType=3 县级对标
*/
public
static
final
int
RULE_TYPE_COUNTY
=
3
;
}
src/main/java/com/keymobile/indicators/utils/LogManager.java
View file @
b1ffbd58
package
com
.
keymobile
.
indicators
.
utils
;
import
org.apache.commons.lang.StringUtils
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.security.core.Authentication
;
import
org.springframework.security.core.context.SecurityContextHolder
;
import
org.springframework.web.context.request.RequestAttributes
;
import
org.springframework.web.context.request.RequestContextHolder
;
import
org.springframework.web.context.request.ServletRequestAttributes
;
import
javax.servlet.http.HttpServletRequest
;
/**
* 日志操作工具.
* @author linxu
* @version 1.0
* @date 2020/3/25 11:00
*/
public
class
LogManager
{
/**
* trace.
* @param context context
* @param e e
* @param message message
*/
public
static
void
logTrace
(
String
context
,
Throwable
e
,
String
message
)
{
Logger
logger
=
LoggerFactory
.
getLogger
(
context
);
if
(
logger
.
isTraceEnabled
())
{
logger
.
trace
(
message
,
e
);
}
}
/**
* trace.
* @param context context
* @param message message
*/
public
static
void
logTrace
(
String
context
,
String
message
)
{
logTrace
(
context
,
null
,
message
);
}
/**
* debug.
* @param context context
* @param message message
*/
public
static
void
logDebug
(
String
context
,
String
message
)
{
Logger
logger
=
LoggerFactory
.
getLogger
(
context
);
if
(
logger
.
isDebugEnabled
())
{
logger
.
debug
(
message
);
}
}
/**
* log.
* @param context context
* @param message message
*/
public
static
void
logInfo
(
String
context
,
String
message
)
{
Logger
logger
=
LoggerFactory
.
getLogger
(
context
);
if
(
logger
.
isInfoEnabled
())
{
logger
.
info
(
message
);
}
}
/**
* info.
* @param context context
* @param message message
* @param objects objects
*/
public
static
void
logInfo
(
String
context
,
String
message
,
Object
...
objects
)
{
Logger
logger
=
LoggerFactory
.
getLogger
(
context
);
String
ip
=
getIp
();
message
=
message
+
"; IP: "
+
ip
;
message
=
StringUtils
.
replace
(
message
,
"{}"
,
"%s"
);
message
=
String
.
format
(
message
,
objects
);
if
(
logger
.
isInfoEnabled
())
{
logger
.
info
(
message
,
getUser
(),
getSessionId
(),
ip
);
}
}
/**
* warning.
* @param context context
* @param e e
* @param message message
*/
public
static
void
logWarning
(
String
context
,
Throwable
e
,
String
message
)
{
Logger
logger
=
LoggerFactory
.
getLogger
(
context
);
if
(
logger
.
isWarnEnabled
())
{
logger
.
warn
(
message
,
e
);
}
}
/**
* warning.
* @param context context
* @param message message
*/
public
static
void
logWarning
(
String
context
,
String
message
)
{
logWarning
(
context
,
null
,
message
);
}
/**
* error.
* @param context context
* @param e e
* @param message message
*/
public
static
void
logError
(
String
context
,
Throwable
e
,
String
message
)
{
Logger
logger
=
LoggerFactory
.
getLogger
(
context
);
if
(
logger
.
isErrorEnabled
())
{
logger
.
error
(
message
,
e
);
}
}
/**
* error.
* @param context context
* @param message message
*/
public
static
void
logError
(
String
context
,
String
message
)
{
Logger
logger
=
LoggerFactory
.
getLogger
(
context
);
if
(
logger
.
isErrorEnabled
())
{
logger
.
error
(
message
);
}
}
/**
* 获取sessionId.
* @return sessionId
*/
public
static
String
getSessionId
()
{
RequestAttributes
attrs
=
RequestContextHolder
.
getRequestAttributes
();
if
(
attrs
!=
null
)
{
return
attrs
.
getSessionId
();
}
return
"NO_SESSION"
;
}
/**
* 获取IP.
* @return ip
*/
public
static
String
getIp
()
{
RequestAttributes
attrs
=
RequestContextHolder
.
getRequestAttributes
();
if
(
attrs
!=
null
)
{
HttpServletRequest
request
=
((
ServletRequestAttributes
)
attrs
).
getRequest
();
return
IpUtil
.
getIpAddr
(
request
);
}
return
""
;
}
/**
* 获取用户.
* @return user
*/
public
static
String
getUser
()
{
return
SystemUserUtil
.
getCurrentUser
();
}
}
package
com
.
keymobile
.
indicators
.
utils
;
import
org.apache.commons.lang.StringUtils
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.security.core.Authentication
;
import
org.springframework.security.core.context.SecurityContextHolder
;
import
org.springframework.web.context.request.RequestAttributes
;
import
org.springframework.web.context.request.RequestContextHolder
;
import
org.springframework.web.context.request.ServletRequestAttributes
;
import
javax.servlet.http.HttpServletRequest
;
/**
* 日志操作工具.
* @author linxu
* @version 1.0
* @date 2020/3/25 11:00
*/
public
class
LogManager
{
/**
* trace.
* @param context context
* @param e e
* @param message message
*/
public
static
void
logTrace
(
String
context
,
Throwable
e
,
String
message
)
{
Logger
logger
=
LoggerFactory
.
getLogger
(
context
);
if
(
logger
.
isTraceEnabled
())
{
logger
.
trace
(
message
,
e
);
}
}
/**
* trace.
* @param context context
* @param message message
*/
public
static
void
logTrace
(
String
context
,
String
message
)
{
logTrace
(
context
,
null
,
message
);
}
/**
* debug.
* @param context context
* @param message message
*/
public
static
void
logDebug
(
String
context
,
String
message
)
{
Logger
logger
=
LoggerFactory
.
getLogger
(
context
);
if
(
logger
.
isDebugEnabled
())
{
logger
.
debug
(
message
);
}
}
/**
* log.
* @param context context
* @param message message
*/
public
static
void
logInfo
(
String
context
,
String
message
)
{
Logger
logger
=
LoggerFactory
.
getLogger
(
context
);
if
(
logger
.
isInfoEnabled
())
{
logger
.
info
(
message
);
}
}
/**
* info.
* @param context context
* @param message message
* @param objects objects
*/
public
static
void
logInfo
(
String
context
,
String
message
,
Object
...
objects
)
{
Logger
logger
=
LoggerFactory
.
getLogger
(
context
);
String
ip
=
getIp
();
message
=
message
+
"; IP: "
+
ip
;
message
=
StringUtils
.
replace
(
message
,
"{}"
,
"%s"
);
message
=
String
.
format
(
message
,
objects
);
if
(
logger
.
isInfoEnabled
())
{
logger
.
info
(
message
,
getUser
(),
getSessionId
(),
ip
,
getMenuPath
(
context
));
}
}
/**
* warning.
* @param context context
* @param e e
* @param message message
*/
public
static
void
logWarning
(
String
context
,
Throwable
e
,
String
message
)
{
Logger
logger
=
LoggerFactory
.
getLogger
(
context
);
if
(
logger
.
isWarnEnabled
())
{
logger
.
warn
(
message
,
e
);
}
}
/**
* warning.
* @param context context
* @param message message
*/
public
static
void
logWarning
(
String
context
,
String
message
)
{
logWarning
(
context
,
null
,
message
);
}
/**
* error.
* @param context context
* @param e e
* @param message message
*/
public
static
void
logError
(
String
context
,
Throwable
e
,
String
message
)
{
Logger
logger
=
LoggerFactory
.
getLogger
(
context
);
if
(
logger
.
isErrorEnabled
())
{
logger
.
error
(
message
,
e
);
}
}
/**
* error.
* @param context context
* @param message message
*/
public
static
void
logError
(
String
context
,
String
message
)
{
Logger
logger
=
LoggerFactory
.
getLogger
(
context
);
if
(
logger
.
isErrorEnabled
())
{
logger
.
error
(
message
);
}
}
/**
* 获取sessionId.
* @return sessionId
*/
public
static
String
getSessionId
()
{
RequestAttributes
attrs
=
RequestContextHolder
.
getRequestAttributes
();
if
(
attrs
!=
null
)
{
return
attrs
.
getSessionId
();
}
return
"NO_SESSION"
;
}
/**
* 获取IP.
* @return ip
*/
public
static
String
getIp
()
{
RequestAttributes
attrs
=
RequestContextHolder
.
getRequestAttributes
();
if
(
attrs
!=
null
)
{
HttpServletRequest
request
=
((
ServletRequestAttributes
)
attrs
).
getRequest
();
return
IpUtil
.
getIpAddr
(
request
);
}
return
""
;
}
/**
* 获取用户.
* @return user
*/
public
static
String
getUser
()
{
return
SystemUserUtil
.
getCurrentUser
();
}
/**
* 获取模块路径
*/
public
static
String
getMenuPath
(
String
context
)
{
return
ModelPathEnum
.
getModelPath
(
context
);
}
}
src/main/java/com/keymobile/indicators/utils/ModelPathEnum.java
0 → 100644
View file @
b1ffbd58
package
com
.
keymobile
.
indicators
.
utils
;
public
enum
ModelPathEnum
{
LOG_CONTEXT_API
(
"indicator.operate"
,
"数据填报/数据填报"
),
LOG_INDICATOR_UNIT_CAL_API
(
"indicator.unit.cal"
,
"数据填报/数据运算"
),
LOG_INDICATOR_BASE_INDI_API
(
"indicator.base.indi"
,
"规则管理/数据项管理"
);
private
String
modelName
;
private
String
modelPath
;
private
ModelPathEnum
(
String
modelName
,
String
modelPath
)
{
this
.
modelName
=
modelName
;
this
.
modelPath
=
modelPath
;
}
public
static
String
getModelPath
(
String
modelName
)
{
for
(
ModelPathEnum
path
:
ModelPathEnum
.
values
())
{
if
(
modelName
.
equals
(
path
.
getModelName
()))
{
return
path
.
getModelPath
();
}
}
return
null
;
}
public
String
getModelName
()
{
return
modelName
;
}
public
String
getModelPath
()
{
return
modelPath
;
}
}
src/main/resources/logback-custom.xml
View file @
b1ffbd58
<?xml version="1.0" encoding="UTF-8"?>
<configuration
>
<springProperty
scope=
"context"
name=
"spring.datasource.url"
source=
"spring.datasource.url"
/>
<springProperty
scope=
"context"
name=
"spring.datasource.username"
source=
"spring.datasource.username"
/>
<springProperty
scope=
"context"
name=
"spring.datasource.password"
source=
"spring.datasource.password"
/>
<appender
name=
"stdout"
class=
"ch.qos.logback.core.ConsoleAppender"
>
<encoder>
<pattern>
%d{HH:mm:ss.SSS} [%thread] %X{user} %X{session} %-5level %logger{5} - %msg%n
</pattern>
</encoder>
</appender>
<appender
name=
"db"
class=
"ch.qos.logback.classic.db.DBAppender"
>
<connectionSource
class=
"ch.qos.logback.core.db.DriverManagerConnectionSource"
>
<driverClass>
com.mysql.jdbc.Driver
</driverClass>
<url>
${spring.datasource.url}
</url>
<user>
${spring.datasource.username}
</user>
<password>
${spring.datasource.password}
</password>
</connectionSource>
</appender>
<logger
name=
"indicator.operate"
>
<appender-ref
ref=
"db"
/>
</logger>
<root
level=
"INFO"
>
<appender-ref
ref=
"stdout"
/>
</root>
</configuration>
<?xml version="1.0" encoding="UTF-8"?>
<configuration
>
<springProperty
scope=
"context"
name=
"spring.datasource.url"
source=
"spring.datasource.url"
/>
<springProperty
scope=
"context"
name=
"spring.datasource.username"
source=
"spring.datasource.username"
/>
<springProperty
scope=
"context"
name=
"spring.datasource.password"
source=
"spring.datasource.password"
/>
<appender
name=
"stdout"
class=
"ch.qos.logback.core.ConsoleAppender"
>
<encoder>
<pattern>
%d{HH:mm:ss.SSS} [%thread] %X{user} %X{session} %-5level %logger{5} - %msg%n
</pattern>
</encoder>
</appender>
<appender
name=
"db"
class=
"ch.qos.logback.classic.db.DBAppender"
>
<connectionSource
class=
"ch.qos.logback.core.db.DriverManagerConnectionSource"
>
<driverClass>
com.mysql.jdbc.Driver
</driverClass>
<url>
${spring.datasource.url}
</url>
<user>
${spring.datasource.username}
</user>
<password>
${spring.datasource.password}
</password>
</connectionSource>
</appender>
<logger
name=
"indicator.operate"
>
<appender-ref
ref=
"db"
/>
</logger>
<logger
name=
"indicator.unit.cal"
>
<appender-ref
ref=
"db"
/>
</logger>
<logger
name=
"indicator.base.indi"
>
<appender-ref
ref=
"db"
/>
</logger>
<root
level=
"INFO"
>
<appender-ref
ref=
"stdout"
/>
</root>
</configuration>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment