Browse Source

服务器信息接口添加

demon 8 years ago
parent
commit
39b8b516b4

+ 7 - 0
hos-broker/pom.xml

@ -57,6 +57,13 @@
			<version>1.1.1-SNAPSHOT</version>
		</dependency>
		<!-- https://mvnrepository.com/artifact/org.apache.camel/camel-stream -->
		<!-- sigar -->
		<dependency>
			<groupId>org.fusesource</groupId>
			<artifactId>sigar</artifactId>
			<version>1.6.4</version>
		</dependency>
	</dependencies>

+ 2 - 0
hos-broker/src/main/java/com/yihu/hos/HosBrokerApplication.java

@ -5,8 +5,10 @@ import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.data.mongo.MongoDataAutoConfiguration;
import org.springframework.boot.autoconfigure.mongo.MongoAutoConfiguration;
import org.springframework.scheduling.annotation.EnableScheduling;
@SpringBootApplication(exclude = {MongoAutoConfiguration.class, MongoDataAutoConfiguration.class})
@EnableScheduling
public class HosBrokerApplication {
    public static void main(String[] args) {

+ 7 - 6
src/main/java/com/yihu/hos/scheduler/EnvScheduler.java

@ -1,16 +1,17 @@
package com.yihu.hos.scheduler;
package com.yihu.hos.common.scheduler;
import com.yihu.hos.common.MongodbUtil;
import com.yihu.hos.common.SigarUtil;
import com.yihu.hos.common.util.MongodbUtil;
import com.yihu.hos.common.util.SigarUtil;
import com.yihu.hos.core.datatype.DateUtil;
import com.yihu.hos.core.log.Logger;
import com.yihu.hos.core.log.LoggerFactory;
import com.yihu.hos.crawler.service.DataCollectDispatcher;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import org.bson.Document;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import java.util.Date;
import java.util.List;
/**
@ -23,7 +24,6 @@ import java.util.List;
public class EnvScheduler {
    private static Logger logger = LoggerFactory.getLogger(EnvScheduler.class);
    private static DataCollectDispatcher dispatch = DataCollectDispatcher.getInstance();
    @Scheduled(cron="0 0/1 * * * ?") //每分钟执行一次
    public void statusCheck() {
@ -36,8 +36,9 @@ public class EnvScheduler {
    public String collectEnvHealth(){
        MongodbUtil monoEnv = new MongodbUtil("envHealth");
        try {
            JSONObject result = new JSONObject();
            Document result = new Document();
            result.put("create_date", DateUtil.getCurrentString(DateUtil.DEFAULT_YMDHMSDATE_FORMAT));
            result.put("create_time", new Date());
            //cpu
            JSONObject cpu = JSONObject.fromObject( SigarUtil.cpu());

+ 44 - 0
hos-broker/src/main/java/com/yihu/hos/common/swagger/SwaggerConfig.java

@ -0,0 +1,44 @@
package com.yihu.hos.common.swagger;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.context.request.async.DeferredResult;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
@Configuration
@EnableSwagger2
public class SwaggerConfig  {
    private static final String PUBLIC_API = "Default";
    @Bean
    public Docket publicAPI() {
        return new Docket(DocumentationType.SWAGGER_2)
                .groupName(PUBLIC_API)
                .genericModelSubstitutes(DeferredResult.class)
                .useDefaultResponseMessages(false)
                .forCodeGeneration(true)
                .pathMapping("/")
                .select()
                .paths(PathSelectors.regex("/.*"))
                .build()
                .apiInfo(publicApiInfo());
    }
    private ApiInfo publicApiInfo() {
        ApiInfo apiInfo = new ApiInfo("ESB平台API",
                "向其他服务提供的接口。",
                "1.0",
                "No terms of service",
                "admin@jkzl.com",
                "The Apache License, Version 2.0",
                "http://www.apache.org/licenses/LICENSE-2.0.html"
        );
        return apiInfo;
    }
}

+ 3 - 3
src/main/java/com/yihu/hos/common/MongodbUtil.java

@ -1,4 +1,4 @@
package com.yihu.hos.common;
package com.yihu.hos.common.util;
import com.mongodb.client.MongoDatabase;
import com.yihu.ehr.dbhelper.mongodb.MongodbFactory;
@ -29,9 +29,9 @@ public class MongodbUtil extends MongodbHelper {
        this.db = MongodbFactory.getDB(dbName);
    }
    public synchronized boolean insert(String name, JSONObject data) {
    public synchronized boolean insert(String name, Document data) {
        try {
            this.db.getCollection(name).insertOne(Document.parse(data.toString()));
            this.db.getCollection(name).insertOne(data);
            return true;
        } catch (Exception var4) {
            var4.printStackTrace();

+ 1 - 1
src/main/java/com/yihu/hos/common/SigarUtil.java

@ -1,4 +1,4 @@
package com.yihu.hos.common;
package com.yihu.hos.common.util;
import org.hyperic.sigar.*;

+ 1 - 5
pom.xml

@ -113,11 +113,7 @@
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.fusesource</groupId>
            <artifactId>sigar</artifactId>
            <version>1.6.4</version>
        </dependency>
    </dependencies>

+ 0 - 2
src/main/java/com/yihu/hos/ESBApplication.java

@ -9,13 +9,11 @@ import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.context.web.SpringBootServletInitializer;
import org.springframework.context.annotation.Bean;
import org.springframework.jms.annotation.EnableJms;
import org.springframework.scheduling.annotation.EnableScheduling;
import javax.jms.Queue;
@SpringBootApplication(exclude = {MongoAutoConfiguration.class, MongoDataAutoConfiguration.class})
@EnableJms
@EnableScheduling
public class ESBApplication extends SpringBootServletInitializer {
    @Override