Kaynağa Gözat

Merge branch 'dev' of chenweida/jkzl-start into dev

chenweida 7 yıl önce
ebeveyn
işleme
df8bfa80e1

+ 2 - 1
.idea/modules.xml

@ -2,7 +2,6 @@
<project version="4">
  <component name="ProjectModuleManager">
    <modules>
      <module fileurl="file://$PROJECT_DIR$/common-activemq-starter/common-mq.iml" filepath="$PROJECT_DIR$/common-activemq-starter/common-mq.iml" />
      <module fileurl="file://$PROJECT_DIR$/common-async-starter/common-async-starter.iml" filepath="$PROJECT_DIR$/common-async-starter/common-async-starter.iml" />
      <module fileurl="file://$PROJECT_DIR$/common-cache-starter/common-cache-starter.iml" filepath="$PROJECT_DIR$/common-cache-starter/common-cache-starter.iml" />
      <module fileurl="file://$PROJECT_DIR$/common-data-es-starter/common-data-es-starter.iml" filepath="$PROJECT_DIR$/common-data-es-starter/common-data-es-starter.iml" />
@ -12,9 +11,11 @@
      <module fileurl="file://$PROJECT_DIR$/common-data-redis-starter/common-data-redis-starter.iml" filepath="$PROJECT_DIR$/common-data-redis-starter/common-data-redis-starter.iml" />
      <module fileurl="file://$PROJECT_DIR$/common-data-solr-starter/common-data-solr-starter.iml" filepath="$PROJECT_DIR$/common-data-solr-starter/common-data-solr-starter.iml" />
      <module fileurl="file://$PROJECT_DIR$/common-logback-starter/common-logback-starter.iml" filepath="$PROJECT_DIR$/common-logback-starter/common-logback-starter.iml" />
      <module fileurl="file://$PROJECT_DIR$/common-activemq-starter/common-mq.iml" filepath="$PROJECT_DIR$/common-activemq-starter/common-mq.iml" />
      <module fileurl="file://$PROJECT_DIR$/common-quartz-starter/common-quartz.iml" filepath="$PROJECT_DIR$/common-quartz-starter/common-quartz.iml" />
      <module fileurl="file://$PROJECT_DIR$/common-security-starter/common-security.iml" filepath="$PROJECT_DIR$/common-security-starter/common-security.iml" />
      <module fileurl="file://$PROJECT_DIR$/common-swagger-starter/common-swagger.iml" filepath="$PROJECT_DIR$/common-swagger-starter/common-swagger.iml" />
      <module fileurl="file://$PROJECT_DIR$/demo/demo.iml" filepath="$PROJECT_DIR$/demo/demo.iml" />
      <module fileurl="file://$PROJECT_DIR$/jkzl-start.iml" filepath="$PROJECT_DIR$/jkzl-start.iml" />
    </modules>
  </component>

+ 4 - 0
common-logback-starter/src/main/java/com.yihu.base/hbase/HbaseAppender.java

@ -67,6 +67,10 @@ public class HbaseAppender extends AppenderBase<LoggingEvent> {
        hbaseAppenderProperties.getHbaseProperties().setRowkey(rowkey);
    }
    public void setZkPort(String zkPort) {
        hbaseAppenderProperties.getHbaseProperties().setZkPort(zkPort);
    }
    //==============hbase end==============
    //==============buffer start==============
    public void setSleepTime(Long sleepTime) {

+ 9 - 4
common-logback-starter/src/main/java/com.yihu.base/hbase/config/HbaseFactory.java

@ -1,7 +1,6 @@
package com.yihu.base.hbase.config;
import com.yihu.base.hbase.properties.HbaseProperties;
import com.yihu.base.hbase.rowkey.IRowkeyGenerate;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.HBaseConfiguration;
import org.apache.hadoop.hbase.HColumnDescriptor;
@ -10,6 +9,7 @@ import org.apache.hadoop.hbase.TableName;
import org.apache.hadoop.hbase.client.*;
import org.springframework.data.hadoop.hbase.HbaseTemplate;
import org.springframework.data.hadoop.hbase.TableCallback;
import org.springframework.util.StringUtils;
import java.io.IOException;
import java.util.ArrayList;
@ -31,7 +31,6 @@ public class HbaseFactory {
        this.hbaseProperties = hbaseProperties;
    }
    private IRowkeyGenerate rowkeyRule;
    /**
     * 批量新增行
@ -111,8 +110,14 @@ public class HbaseFactory {
                    configuration = HBaseConfiguration.create();
                    configuration.set("hbase.zookeeper.quorum", hbaseProperties.getZkHosts());
                    configuration.set("zookeeper.znode.parent",HbaseProperties.default_zkZnodeParent);
                    configuration.set("hbase.zookeeper.property.clientPort",HbaseProperties.default_zkPort);
                    if(StringUtils.isEmpty(hbaseProperties.getZkZnodeParent())){
                        hbaseProperties.setZkZnodeParent(HbaseProperties.default_zkZnodeParent);
                    }
                    configuration.set("zookeeper.znode.parent",hbaseProperties.getZkZnodeParent());
                    if(StringUtils.isEmpty(hbaseProperties.getZkPort())){
                        hbaseProperties.setZkPort(HbaseProperties.default_zkPort);
                    }
                    configuration.set("hbase.zookeeper.property.clientPort",hbaseProperties.getZkPort());
                    hbaseTemplate.setConfiguration(configuration);
                }
            }

+ 14 - 0
common-logback-starter/src/main/java/com.yihu.base/hbase/properties/HbaseProperties.java

@ -17,6 +17,12 @@ public class HbaseProperties {
    private String zkHosts;//zookeeper路劲
    private String zkPort;//zookeeper路劲
    /**
     * 对于Hortonworks:  hconfig.set("zookeeper.znode.parent", "/hbase-unsecure")
     对于cloudera:  hconfig.set("zookeeper.znode.parent", "/hbase")
     */
    private String zkZnodeParent ;//zk上的路径
    private String hdfsUserName;//hdfs用户名称
@ -75,4 +81,12 @@ public class HbaseProperties {
    public void setRowkey(String rowkey) {
        this.rowkey = rowkey;
    }
    public void setZkPort(String zkPort) {
        this.zkPort = zkPort;
    }
    public String getZkPort() {
        return zkPort;
    }
}

+ 2 - 1
common-logback-starter/src/main/resources/hbaseAppender_logback_demo.xml

@ -25,4 +25,5 @@
    <root level="INFO">
    </root>
</configuration>
</configuration>

+ 4 - 0
demo/pom.xml

@ -36,5 +36,9 @@
            <artifactId>guava</artifactId>
            <version>15.0</version>
        </dependency>
        <dependency>
            <groupId>net.sf.json-lib</groupId>
            <artifactId>json-lib</artifactId>
        </dependency>
    </dependencies>
</project>

+ 13 - 1
demo/src/main/java/com/demo/controller/DemoController.java

@ -1,11 +1,17 @@
package com.demo.controller;
import net.sf.json.JSONObject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Random;
import java.util.UUID;
/**
 * Created by chenweida on 2018/2/24.
 */
@ -17,8 +23,14 @@ public class DemoController {
    @RequestMapping(value = "/loginfo", method = RequestMethod.GET)
    public String loginfo() {
        boolean flag = true;
        Random random1 = new Random();
        SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy-MM-dd HH:MM:ss");
        while (flag) {
            logger.info("{\"aaa\":\"123\",\"bbb\":\"123\",\"ccc\":\"123\"}");
            JSONObject jsonObject=new JSONObject();
            jsonObject.put("name", UUID.randomUUID().toString().substring(0,6));
            jsonObject.put("age",random1.nextInt(100)+"");
            jsonObject.put("date",simpleDateFormat.format(new Date()));
            logger.info(jsonObject.toString());
        }
        return "成功";
    }

+ 6 - 5
demo/src/main/resources/logback.xml

@ -10,10 +10,11 @@
    <appender name="hbase_appender" class="com.yihu.base.hbase.HbaseAppender">
        <tableName>tableName</tableName><!--表明-->
        <familyName>familyName</familyName> <!--列族-->
        <zkHosts>node1.hde.h3c.com,node2.hde.h3c.com,node3.hde.h3c.com</zkHosts>  <!--zk 路径-->
        <hdfsUserName>root</hdfsUserName> <!--hdfs的用户名-->
        <tableName>flumeLog</tableName><!--表明-->
        <familyName>flumeLogFamily</familyName> <!--列族-->
        <zkHosts>master,slave1,slave2</zkHosts>  <!--zk 路径-->
        <hdfsUserName>hadoop</hdfsUserName> <!--hdfs的用户名-->
        <zkZnodeParent>/hbase</zkZnodeParent>
        <rowkey>UUID</rowkey> <!--rowKey规则  目前只支持UUID 默认UUID -->
    </appender>
@ -26,7 +27,7 @@
    <logger name="hbase_logger" level="INFO" additivity="false">
        <appender-ref ref="hbase_appender"/>
        <appender-ref ref="console"/>
    </logger>