Compare commits

...

5 Commits

Author SHA1 Message Date
wujiawei
c9b866885a 【fix】 cgroup2fs环境 2025-05-31 18:36:34 +08:00
wujiawei
f496f12fe3 【fix】 cgroup2fs环境 2025-05-31 18:25:49 +08:00
wujiawei
6e6ce666b8 【fix】注释 <!-- <dependency>-->
<!--            <groupId>org.springframework.boot</groupId>-->
        <!--            <artifactId>spring-boot-starter-actuator</artifactId>-->
        <!--        </dependency>-->
        原因与服务器架构x86 飞牛os不兼容
2025-05-31 18:23:55 +08:00
WJWJW
f82e9e5f0a fix 2025-05-31 17:53:45 +08:00
wujiawei
26e4990f0a 【fix】注释 <!-- <dependency>-->
<!--            <groupId>org.springframework.boot</groupId>-->
        <!--            <artifactId>spring-boot-starter-actuator</artifactId>-->
        <!--        </dependency>-->
        原因与服务器架构x86 飞牛os不兼容
2025-05-31 17:50:26 +08:00
3 changed files with 68 additions and 2 deletions

View File

@ -25,6 +25,10 @@
<groupId>top.wu2020</groupId>
<artifactId>wu-framework-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot</artifactId>
</dependency>
</dependencies>
</project>

View File

@ -6,10 +6,11 @@ RUN echo "Asia/Shanghai" > /etc/timezone
ENV APP_JAR_NAME=$APP_NAME \
JAVA_OPTS="-Xms512m -Xmx1024m -Djava.security.egd=file:/dev/./urandom" \
JAVA_OPTS="-Xms512m -Xmx1024m -XX:+UseContainerSupport -XX:InitialRAMPercentage=50.0 -XX:MaxRAMPercentage=80.0 -Djava.security.egd=file:/dev/./urandom" \
PARAMS=""
#UseContainerSupport启用容器感知内存和 CPU 限制。
#InitialRAMPercentage/MaxRAMPercentage自动计算 JVM 堆内存上限,避免 OOM。
COPY target/*.jar /app.jar

View File

@ -0,0 +1,61 @@
package org.framework.lazy.cloud.network.heartbeat.client;
import io.micrometer.core.instrument.Tags;
import io.micrometer.core.instrument.binder.system.FileDescriptorMetrics;
import io.micrometer.core.instrument.binder.system.ProcessorMetrics;
import io.micrometer.core.instrument.binder.system.UptimeMetrics;
import org.springframework.boot.actuate.autoconfigure.metrics.CompositeMeterRegistryAutoConfiguration;
import org.springframework.boot.actuate.autoconfigure.metrics.MetricsAutoConfiguration;
import org.springframework.boot.actuate.autoconfigure.metrics.MetricsProperties;
import org.springframework.boot.actuate.metrics.system.DiskSpaceMetricsBinder;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import;
import java.io.File;
import java.util.List;
@Configuration
@Import({MetricsAutoConfiguration.class, CompositeMeterRegistryAutoConfiguration.class})
public class MetricsConfig {
// fix cgroup2fs环境
@Bean
public UptimeMetrics uptimeMetrics() {
try {
return new UptimeMetrics();
} catch (Exception e) {
System.err.println("Failed to initialize UptimeMetrics: " + e.getMessage());
return null;
}
}
@Bean
public ProcessorMetrics processorMetrics() {
try {
return new ProcessorMetrics();
} catch (Exception e) {
System.err.println("Failed to initialize ProcessorMetrics: " + e.getMessage());
return null;
}
}
@Bean
public FileDescriptorMetrics fileDescriptorMetrics(){
try {
return new FileDescriptorMetrics();
}catch (Exception e){
System.err.println("Failed to initialize FileDescriptorMetrics: " + e.getMessage());
return null;
}
}
@Bean
public DiskSpaceMetricsBinder diskSpaceMetrics(MetricsProperties properties) {
try {
List<File> paths = properties.getSystem().getDiskspace().getPaths();
return new DiskSpaceMetricsBinder(paths, Tags.empty());
}catch (Exception e){
System.err.println("Failed to initialize DiskSpaceMetricsBinder: " + e.getMessage());
return null;
}
}
}