mirror of
https://github.com/tiennm99/zfoo.git
synced 2026-10-20 00:15:55 +00:00
perf[monitor]: add logback-test config
This commit is contained in:
1 parent
4e4fc86956
commit
2b3d40cae7
3 files changed
+66
-13
No files matched your search
@@ -1,7 +1,5 @@
|
|||||||
package com.zfoo.monitor.model;
|
package com.zfoo.monitor.model;
|
||||||
|
|
||||||
import lombok.Builder;
|
|
||||||
|
|
||||||
import java.lang.management.MemoryUsage;
|
import java.lang.management.MemoryUsage;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -40,14 +38,31 @@ public class JvmMemoryVo {
|
|||||||
return name;
|
return name;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void setName(String name) {
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getTotal() {
|
||||||
|
return total;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTotal(double total) {
|
||||||
|
this.total = total;
|
||||||
|
}
|
||||||
|
|
||||||
public double getMax() {
|
public double getMax() {
|
||||||
return max;
|
return max;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void setMax(double max) {
|
||||||
|
this.max = max;
|
||||||
|
}
|
||||||
|
|
||||||
public double getUsed() {
|
public double getUsed() {
|
||||||
return used;
|
return used;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void setUsed(double used) {
|
||||||
|
this.used = used;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -1,16 +1,10 @@
|
|||||||
package com.zfoo.monitor.util;
|
package com.zfoo.monitor.util;
|
||||||
|
|
||||||
import com.sun.jdi.ThreadReference;
|
|
||||||
import com.sun.tools.attach.AttachNotSupportedException;
|
|
||||||
import com.sun.tools.attach.VirtualMachine;
|
|
||||||
import com.sun.tools.attach.spi.AttachProvider;
|
|
||||||
import com.zfoo.monitor.model.JvmMemoryVo;
|
import com.zfoo.monitor.model.JvmMemoryVo;
|
||||||
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.lang.management.*;
|
import java.lang.management.*;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Properties;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author yh
|
* @author yh
|
||||||
@@ -19,19 +13,19 @@ import java.util.Properties;
|
|||||||
public class JvmUtils {
|
public class JvmUtils {
|
||||||
|
|
||||||
|
|
||||||
public static List<JvmMemoryVo> getJvmInfo(){
|
public static List<JvmMemoryVo> getJvmInfo() {
|
||||||
List<JvmMemoryVo> list=new ArrayList<>();
|
List<JvmMemoryVo> list = new ArrayList<>();
|
||||||
|
|
||||||
MemoryMXBean memoryMXBean = ManagementFactory.getMemoryMXBean();
|
MemoryMXBean memoryMXBean = ManagementFactory.getMemoryMXBean();
|
||||||
|
|
||||||
//堆内存
|
//堆内存
|
||||||
MemoryUsage heapMemoryUsage = ManagementFactory.getMemoryMXBean().getHeapMemoryUsage();
|
MemoryUsage heapMemoryUsage = ManagementFactory.getMemoryMXBean().getHeapMemoryUsage();
|
||||||
list.add(new JvmMemoryVo("heap",heapMemoryUsage));
|
list.add(new JvmMemoryVo("heap", heapMemoryUsage));
|
||||||
|
|
||||||
List<MemoryPoolMXBean> memoryPoolMXBeans = ManagementFactory.getMemoryPoolMXBeans();
|
List<MemoryPoolMXBean> memoryPoolMXBeans = ManagementFactory.getMemoryPoolMXBeans();
|
||||||
for (MemoryPoolMXBean mxBean : memoryPoolMXBeans) {
|
for (MemoryPoolMXBean mxBean : memoryPoolMXBeans) {
|
||||||
//获取堆内存明细
|
//获取堆内存明细
|
||||||
if (MemoryType.HEAP.equals(mxBean.getType())){
|
if (MemoryType.HEAP.equals(mxBean.getType())) {
|
||||||
MemoryUsage usage = mxBean.getUsage();
|
MemoryUsage usage = mxBean.getUsage();
|
||||||
list.add(new JvmMemoryVo(mxBean.getName(), usage));
|
list.add(new JvmMemoryVo(mxBean.getName(), usage));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,44 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
|
<configuration scan="false" debug="false">
|
||||||
|
|
||||||
|
<contextName>com.zfoo.monitor</contextName>
|
||||||
|
|
||||||
|
<property name="LOG_HOME" value="log/net"/>
|
||||||
|
<property name="PATTERN_FILE"
|
||||||
|
value="%d{yyyy-MM-dd HH:mm:ss} [%5level] [%thread] %logger.%M\\(%F:%line\\) - %msg%n"/>
|
||||||
|
<property name="PATTERN_CONSOLE"
|
||||||
|
value="%d{yyyy-MM-dd HH:mm:ss} [%highlight(%5level)] [%thread] %logger.%M\\(%F:%line\\) - %msg%n"/>
|
||||||
|
<!-- 负责写日志,控制台日志,会打印所有的包的所有级别日志 -->
|
||||||
|
<appender name="zfoo_console" class="ch.qos.logback.core.ConsoleAppender">
|
||||||
|
<encoder>
|
||||||
|
<pattern>${PATTERN_CONSOLE}</pattern>
|
||||||
|
<charset>UTF-8</charset>
|
||||||
|
</encoder>
|
||||||
|
</appender>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- 根logger -->
|
||||||
|
<root level="info">
|
||||||
|
<appender-ref ref="zfoo_console"/>
|
||||||
|
</root>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
- 1.name:包名或类名,用来指定受此logger约束的某一个包或者具体的某一个类
|
||||||
|
- 2.未设置打印级别,所以继承他的上级<root>的日志级别“DEBUG”
|
||||||
|
- 3.未设置additivity,默认为true,将此logger的打印信息向上级传递;
|
||||||
|
- 4.未设置appender,此logger本身不打印任何信息,级别为“DEBUG”及大于“DEBUG”的日志信息传递给root,
|
||||||
|
- root接到下级传递的信息,交给已经配置好的名为“STDOUT”的appender处理,“STDOUT”appender将信息打印到控制台;
|
||||||
|
-->
|
||||||
|
<logger name="ch.qos.logback" level="info"/>
|
||||||
|
|
||||||
|
<!--*******************************************Spring********************************************************-->
|
||||||
|
<!--logger中的name是指代码的包名或类名,路径要写全,可以配置不同包中的日志输出到不同的文件中。level是日志输出级别 -->
|
||||||
|
<!--过滤掉spring的一些无用的DEBUG信息-->
|
||||||
|
<logger name="org.springframework" level="info"/>
|
||||||
|
<!-- additivity="false"表示不继承父logger的配置和父类没有关系-->
|
||||||
|
<logger name="org.springframework.core" level="info"/>
|
||||||
|
|
||||||
|
<!--*******************************************Netty*********************************************************-->
|
||||||
|
<logger name="io.netty" level="info"/>
|
||||||
|
</configuration>
|
||||||
Reference in new issue
Block a user