提交 39f597f1 编写于 作者: wu-sheng's avatar wu-sheng

Fix the version issue. And remove the duplicate definition of ConfigInitializer.

上级 5e6634d6
......@@ -6,7 +6,7 @@
<groupId>com.a.eye</groupId>
<artifactId>skywalking</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
<modules>
<module>skywalking-commons</module>
......
......@@ -4,7 +4,7 @@
<parent>
<artifactId>skywalking</artifactId>
<groupId>com.a.eye</groupId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<artifactId>skywalking-alarm</artifactId>
......@@ -70,6 +70,11 @@
<artifactId>HikariCP</artifactId>
<version>2.4.3</version>
</dependency>
<dependency>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-util</artifactId>
<version>2.1-2017</version>
</dependency>
</dependencies>
<build>
<finalName>skywalking-alarm</finalName>
......@@ -110,7 +115,7 @@
<dockerDirectory>${project.basedir}/docker</dockerDirectory>
<imageName>skywalking/skywalking-alarm</imageName>
<imageTags>
<imageTag>${skywalking.version}</imageTag>
<imageTag>2.1-2017</imageTag>
</imageTags>
<resources>
<resource>
......
package com.a.eye.skywalking.alarm;
import com.a.eye.skywalking.alarm.conf.ConfigInitializer;
import com.a.eye.skywalking.alarm.conf.Config;
import com.a.eye.skywalking.alarm.util.ZKUtil;
import com.a.eye.skywalking.util.ConfigInitializer;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
......
package com.a.eye.skywalking.alarm.conf;
import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
import java.util.LinkedList;
import java.util.Properties;
import java.util.logging.Logger;
public class ConfigInitializer {
private static Logger logger = Logger.getLogger(ConfigInitializer.class.getName());
public static void initialize(Properties properties, Class<?> rootConfigType) throws IllegalAccessException {
initNextLevel(properties, rootConfigType, new ConfigDesc());
}
private static void initNextLevel(Properties properties, Class<?> recentConfigType, ConfigDesc parentDesc) throws NumberFormatException, IllegalArgumentException, IllegalAccessException {
for (Field field : recentConfigType.getFields()) {
if (Modifier.isPublic(field.getModifiers()) && Modifier.isStatic(field.getModifiers())) {
String configKey = (parentDesc + "." +
field.getName()).toLowerCase();
String value = properties.getProperty(configKey);
if (value != null) {
if (field.getType().equals(int.class))
field.set(null, Integer.valueOf(value));
if (field.getType().equals(String.class))
field.set(null, value);
if (field.getType().equals(long.class))
field.set(null, Long.valueOf(value));
if (field.getType().equals(boolean.class))
field.set(null, Boolean.valueOf(value));
}
}
}
for (Class<?> innerConfiguration : recentConfigType.getClasses()) {
parentDesc.append(innerConfiguration.getSimpleName());
initNextLevel(properties, innerConfiguration, parentDesc);
parentDesc.removeLastDesc();
}
}
}
class ConfigDesc {
private LinkedList<String> descs = new LinkedList<String>();
void append(String currentDesc) {
descs.addLast(currentDesc);
}
void removeLastDesc() {
descs.removeLast();
}
@Override
public String toString() {
if (descs.size() == 0) {
return "";
}
StringBuilder ret = new StringBuilder(descs.getFirst());
boolean first = true;
for (String desc : descs) {
if (first) {
first = false;
continue;
}
ret.append(".").append(desc);
}
return ret.toString();
}
}
......@@ -3,7 +3,7 @@
<parent>
<artifactId>skywalking</artifactId>
<groupId>com.a.eye</groupId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>skywalking-application-toolkit</artifactId>
......
......@@ -5,7 +5,7 @@
<parent>
<artifactId>skywalking-application-toolkit</artifactId>
<groupId>com.a.eye</groupId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<modelVersion>4.0.0</modelVersion>
......
......@@ -5,7 +5,7 @@
<parent>
<artifactId>skywalking-application-toolkit</artifactId>
<groupId>com.a.eye</groupId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<modelVersion>4.0.0</modelVersion>
......
......@@ -5,7 +5,7 @@
<parent>
<artifactId>skywalking-application-toolkit</artifactId>
<groupId>com.a.eye</groupId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<modelVersion>4.0.0</modelVersion>
......
......@@ -5,7 +5,7 @@
<parent>
<artifactId>skywalking-application-toolkit</artifactId>
<groupId>com.a.eye</groupId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<modelVersion>4.0.0</modelVersion>
......
......@@ -4,7 +4,7 @@
<parent>
<artifactId>skywalking-application-toolkit</artifactId>
<groupId>com.a.eye</groupId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<modelVersion>4.0.0</modelVersion>
......
......@@ -3,7 +3,7 @@
<parent>
<artifactId>skywalking</artifactId>
<groupId>com.a.eye</groupId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<modelVersion>4.0.0</modelVersion>
......
......@@ -3,7 +3,7 @@
<parent>
<artifactId>skywalking-commons</artifactId>
<groupId>com.a.eye</groupId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<modelVersion>4.0.0</modelVersion>
......
......@@ -3,7 +3,7 @@
<parent>
<artifactId>skywalking-commons</artifactId>
<groupId>com.a.eye</groupId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<modelVersion>4.0.0</modelVersion>
......
......@@ -5,7 +5,7 @@
<parent>
<artifactId>skywalking-logging</artifactId>
<groupId>com.a.eye</groupId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<modelVersion>4.0.0</modelVersion>
......
......@@ -5,7 +5,7 @@
<parent>
<artifactId>skywalking-logging</artifactId>
<groupId>com.a.eye</groupId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<modelVersion>4.0.0</modelVersion>
......
......@@ -3,7 +3,7 @@
<parent>
<artifactId>skywalking-commons</artifactId>
<groupId>com.a.eye</groupId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<modelVersion>4.0.0</modelVersion>
......@@ -21,7 +21,7 @@
<dependency>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-logging-api</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</dependency>
<dependency>
<groupId>org.apache.zookeeper</groupId>
......
......@@ -3,7 +3,7 @@
<parent>
<artifactId>skywalking-commons</artifactId>
<groupId>com.a.eye</groupId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<modelVersion>4.0.0</modelVersion>
......@@ -21,7 +21,7 @@
<dependency>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-network</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</dependency>
</dependencies>
</project>
package com.a.eye.skywalking.web.config;
package com.a.eye.skywalking.util;
import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
......@@ -6,6 +6,12 @@ import java.util.LinkedList;
import java.util.Properties;
import java.util.logging.Logger;
/**
* Init a class's static fields by a {@link Properties},
* including static fields and static inner classes.
* <p>
* Created by wusheng on 2017/1/9.
*/
public class ConfigInitializer {
private static Logger logger = Logger.getLogger(ConfigInitializer.class.getName());
......@@ -13,11 +19,10 @@ public class ConfigInitializer {
initNextLevel(properties, rootConfigType, new ConfigDesc());
}
private static void initNextLevel(Properties properties, Class<?> recentConfigType, ConfigDesc parentDesc) throws NumberFormatException, IllegalArgumentException, IllegalAccessException {
private static void initNextLevel(Properties properties, Class<?> recentConfigType, ConfigDesc parentDesc) throws IllegalArgumentException, IllegalAccessException {
for (Field field : recentConfigType.getFields()) {
if (Modifier.isPublic(field.getModifiers()) && Modifier.isStatic(field.getModifiers())) {
String configKey = (parentDesc + "." +
field.getName()).toLowerCase();
String configKey = (parentDesc + "." + field.getName()).toLowerCase();
String value = properties.getProperty(configKey);
if (value != null) {
if (field.getType().equals(int.class))
......
......@@ -5,7 +5,7 @@
<parent>
<artifactId>skywalking</artifactId>
<groupId>com.a.eye</groupId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<modelVersion>4.0.0</modelVersion>
......@@ -27,7 +27,7 @@
<dependency>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-util</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</dependency>
</dependencies>
</project>
......@@ -3,7 +3,7 @@
<parent>
<artifactId>skywalking-sniffer</artifactId>
<groupId>com.a.eye</groupId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>skywalking-agent</artifactId>
......
......@@ -5,7 +5,7 @@
<parent>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-sniffer</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<artifactId>skywalking-agent</artifactId>
......@@ -30,56 +30,56 @@
<dependency>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-jedis-2.x-plugin</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</dependency>
<dependency>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-jdbc-plugin</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</dependency>
<dependency>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-httpClient-4.x-plugin</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</dependency>
<dependency>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-dubbo-plugin</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</dependency>
<dependency>
<groupId>com.a.eye</groupId>
<artifactId>tomcat-7.x-8.x-plugin</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</dependency>
<dependency>
<groupId>com.a.eye</groupId>
<artifactId>motan-plugin</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</dependency>
<!-- activation -->
<dependency>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-toolkit-log4j-1.x-activation</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</dependency>
<dependency>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-toolkit-log4j-2.x-activation</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</dependency>
<dependency>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-toolkit-logback-1.x-activation</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</dependency>
<dependency>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-toolkit-trace-context-activation</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</dependency>
</dependencies>
......
......@@ -2,7 +2,7 @@ package com.a.eye.skywalking.agent;
import com.a.eye.skywalking.agent.junction.SkyWalkingEnhanceMatcher;
import com.a.eye.skywalking.conf.Config;
import com.a.eye.skywalking.conf.ConfigInitializer;
import com.a.eye.skywalking.conf.SnifferConfigInitializer;
import com.a.eye.skywalking.logging.EasyLogResolver;
import com.a.eye.skywalking.logging.api.ILog;
import com.a.eye.skywalking.logging.api.LogManager;
......@@ -98,7 +98,7 @@ public class SkyWalkingAgent {
Config.SkyWalking.IS_PREMAIN_MODE = true;
Config.SkyWalking.AGENT_BASE_PATH = initAgentBasePath();
ConfigInitializer.initialize();
SnifferConfigInitializer.initialize();
}
/**
......
......@@ -5,7 +5,7 @@
<parent>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-sniffer</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
......@@ -29,7 +29,7 @@
<dependency>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-network</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</dependency>
<dependency>
<groupId>com.lmax</groupId>
......
......@@ -2,25 +2,23 @@ package com.a.eye.skywalking.conf;
import com.a.eye.skywalking.logging.api.ILog;
import com.a.eye.skywalking.logging.api.LogManager;
import com.a.eye.skywalking.util.ConfigInitializer;
import com.a.eye.skywalking.util.StringUtil;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
import java.util.LinkedList;
import java.util.Properties;
public class ConfigInitializer {
private static ILog logger = LogManager.getLogger(ConfigInitializer.class);
public class SnifferConfigInitializer {
private static ILog logger = LogManager.getLogger(SnifferConfigInitializer.class);
public static void initialize() {
InputStream configFileStream;
if (Config.SkyWalking.IS_PREMAIN_MODE) {
configFileStream = fetchAuthFileInputStream();
} else {
configFileStream = ConfigInitializer.class.getResourceAsStream("/sky-walking.config");
configFileStream = SnifferConfigInitializer.class.getResourceAsStream("/sky-walking.config");
}
if (configFileStream == null) {
......@@ -29,7 +27,7 @@ public class ConfigInitializer {
try {
Properties properties = new Properties();
properties.load(configFileStream);
initNextLevel(properties, Config.class, new ConfigDesc());
ConfigInitializer.initialize(properties, Config.class);
} catch (Exception e) {
logger.error("Failed to read the config file, sky-walking api run in default config.", e);
}
......@@ -49,31 +47,6 @@ public class ConfigInitializer {
}
}
private static void initNextLevel(Properties properties, Class<?> recentConfigType, ConfigDesc parentDesc) throws NumberFormatException, IllegalArgumentException, IllegalAccessException {
for (Field field : recentConfigType.getFields()) {
if (Modifier.isPublic(field.getModifiers()) && Modifier.isStatic(field.getModifiers())) {
String configKey = (parentDesc + "." +
field.getName()).toLowerCase();
String value = properties.getProperty(configKey);
if (value != null) {
if (field.getType().equals(int.class))
field.set(null, Integer.valueOf(value));
if (field.getType().equals(String.class))
field.set(null, value);
if (field.getType().equals(long.class))
field.set(null, Long.valueOf(value));
if (field.getType().equals(boolean.class))
field.set(null, Boolean.valueOf(value));
}
}
}
for (Class<?> innerConfiguration : recentConfigType.getClasses()) {
parentDesc.append(innerConfiguration.getSimpleName());
initNextLevel(properties, innerConfiguration, parentDesc);
parentDesc.removeLastDesc();
}
}
private static InputStream fetchAuthFileInputStream() {
try {
return new FileInputStream(Config.SkyWalking.AGENT_BASE_PATH + File.separator + "/sky-walking.config");
......@@ -83,32 +56,3 @@ public class ConfigInitializer {
}
}
}
class ConfigDesc {
private LinkedList<String> descs = new LinkedList<String>();
void append(String currentDesc) {
descs.addLast(currentDesc);
}
void removeLastDesc() {
descs.removeLast();
}
@Override
public String toString() {
if (descs.size() == 0) {
return "";
}
StringBuilder ret = new StringBuilder(descs.getFirst());
boolean first = true;
for (String desc : descs) {
if (first) {
first = false;
continue;
}
ret.append(".").append(desc);
}
return ret.toString();
}
}
......@@ -3,7 +3,7 @@
<parent>
<artifactId>skywalking-sdk-plugin</artifactId>
<groupId>com.a.eye</groupId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<modelVersion>4.0.0</modelVersion>
......@@ -21,7 +21,7 @@
<dependency>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-api</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
......
......@@ -6,7 +6,7 @@
<parent>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-sdk-plugin</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<artifactId>skywalking-httpClient-4.x-plugin</artifactId>
......@@ -23,7 +23,7 @@
<dependency>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-api</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</dependency>
......
......@@ -3,7 +3,7 @@
<parent>
<artifactId>skywalking-sdk-plugin</artifactId>
<groupId>com.a.eye</groupId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<modelVersion>4.0.0</modelVersion>
......@@ -21,7 +21,7 @@
<dependency>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-api</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
......
......@@ -6,7 +6,7 @@
<parent>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-sdk-plugin</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<artifactId>skywalking-jedis-2.x-plugin</artifactId>
......
......@@ -3,7 +3,7 @@
<parent>
<artifactId>skywalking-sdk-plugin</artifactId>
<groupId>com.a.eye</groupId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<modelVersion>4.0.0</modelVersion>
......
......@@ -6,7 +6,7 @@
<parent>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-sniffer</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<artifactId>skywalking-sdk-plugin</artifactId>
......@@ -31,7 +31,7 @@
<dependency>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-api</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</dependency>
</dependencies>
......
......@@ -3,7 +3,7 @@
<parent>
<artifactId>skywalking-sdk-plugin</artifactId>
<groupId>com.a.eye</groupId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<modelVersion>4.0.0</modelVersion>
......
......@@ -5,7 +5,7 @@
<parent>
<artifactId>skywalking-sniffer</artifactId>
<groupId>com.a.eye</groupId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<packaging>pom</packaging>
......@@ -23,7 +23,7 @@
<dependency>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-api</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</dependency>
</dependencies>
</project>
......@@ -5,7 +5,7 @@
<parent>
<artifactId>skywalking-toolkit-activation</artifactId>
<groupId>com.a.eye</groupId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<modelVersion>4.0.0</modelVersion>
......
......@@ -5,7 +5,7 @@
<parent>
<artifactId>skywalking-toolkit-activation</artifactId>
<groupId>com.a.eye</groupId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<modelVersion>4.0.0</modelVersion>
......
......@@ -5,7 +5,7 @@
<parent>
<artifactId>skywalking-toolkit-activation</artifactId>
<groupId>com.a.eye</groupId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<modelVersion>4.0.0</modelVersion>
......
......@@ -5,7 +5,7 @@
<parent>
<artifactId>skywalking-toolkit-activation</artifactId>
<groupId>com.a.eye</groupId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<modelVersion>4.0.0</modelVersion>
......
......@@ -4,7 +4,7 @@
<parent>
<artifactId>skywalking-toolkit-activation</artifactId>
<groupId>com.a.eye</groupId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<modelVersion>4.0.0</modelVersion>
......@@ -16,7 +16,7 @@
<dependency>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-api</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</dependency>
</dependencies>
</project>
......@@ -5,7 +5,7 @@
<parent>
<artifactId>skywalking</artifactId>
<groupId>com.a.eye</groupId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<modelVersion>4.0.0</modelVersion>
......@@ -22,7 +22,7 @@
<dependency>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-network</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</dependency>
<dependency>
<groupId>com.lmax</groupId>
......@@ -32,17 +32,17 @@
<dependency>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-registry</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</dependency>
<dependency>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-logging-impl-log4j2</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</dependency>
<dependency>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-health-report</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</dependency>
</dependencies>
......
......@@ -4,7 +4,7 @@
<parent>
<artifactId>skywalking-storage-center</artifactId>
<groupId>com.a.eye</groupId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<modelVersion>4.0.0</modelVersion>
......@@ -28,7 +28,7 @@
<dependency>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-util</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</dependency>
</dependencies>
......@@ -74,7 +74,7 @@
<dockerDirectory>${project.basedir}/docker</dockerDirectory>
<imageName>skywalking/skywalking-routing</imageName>
<imageTags>
<imageTag>${skywalking.version}</imageTag>
<imageTag>2.1-2017</imageTag>
</imageTags>
<resources>
<resource>
......
......@@ -9,15 +9,25 @@ import com.a.eye.skywalking.registry.api.RegistryCenter;
import com.a.eye.skywalking.registry.assist.NetUtils;
import com.a.eye.skywalking.registry.impl.zookeeper.ZookeeperConfig;
import com.a.eye.skywalking.routing.config.Config;
import com.a.eye.skywalking.routing.config.ConfigInitializer;
import com.a.eye.skywalking.routing.listener.SpanStorageListenerImpl;
import com.a.eye.skywalking.routing.listener.TraceSearchListenerImpl;
import com.a.eye.skywalking.routing.router.RoutingService;
import com.a.eye.skywalking.util.ConfigInitializer;
import java.io.IOException;
import java.util.Map;
import java.util.Properties;
/**
* Main Class of the routing server.
* It starts server in a sequence:
* 1. init config
* 2. init logManager
* 3. registry server
* 4. open service, and start listening port.
*
* @author wusheng
*/
public class Main {
private static final ILog logger = LogManager.getLogger(Main.class);
......
package com.a.eye.skywalking.routing.config;
import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
import java.util.LinkedList;
import java.util.Properties;
import java.util.logging.Logger;
public class ConfigInitializer {
private static Logger logger = Logger.getLogger(ConfigInitializer.class.getName());
public static void initialize(Properties properties, Class<?> rootConfigType) throws IllegalAccessException {
initNextLevel(properties, rootConfigType, new ConfigDesc());
}
private static void initNextLevel(Properties properties, Class<?> recentConfigType, ConfigDesc parentDesc) throws NumberFormatException, IllegalArgumentException, IllegalAccessException {
for (Field field : recentConfigType.getFields()) {
if (Modifier.isPublic(field.getModifiers()) && Modifier.isStatic(field.getModifiers())) {
String configKey = (parentDesc + "." +
field.getName()).toLowerCase();
String value = properties.getProperty(configKey);
if (value != null) {
if (field.getType().equals(int.class))
field.set(null, Integer.valueOf(value));
if (field.getType().equals(String.class))
field.set(null, value);
if (field.getType().equals(long.class))
field.set(null, Long.valueOf(value));
if (field.getType().equals(boolean.class))
field.set(null, Boolean.valueOf(value));
}
}
}
for (Class<?> innerConfiguration : recentConfigType.getClasses()) {
parentDesc.append(innerConfiguration.getSimpleName());
initNextLevel(properties, innerConfiguration, parentDesc);
parentDesc.removeLastDesc();
}
}
}
class ConfigDesc {
private LinkedList<String> descs = new LinkedList<String>();
void append(String currentDesc) {
descs.addLast(currentDesc);
}
void removeLastDesc() {
descs.removeLast();
}
@Override
public String toString() {
if (descs.size() == 0) {
return "";
}
StringBuilder ret = new StringBuilder(descs.getFirst());
boolean first = true;
for (String desc : descs) {
if (first) {
first = false;
continue;
}
ret.append(".").append(desc);
}
return ret.toString();
}
}
2
username_612
application_code_9app
\ No newline at end of file
2
username_612
application_code_9app
\ No newline at end of file
......@@ -5,7 +5,7 @@
<parent>
<artifactId>skywalking-storage-center</artifactId>
<groupId>com.a.eye</groupId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<artifactId>skywalking-storage</artifactId>
......@@ -36,7 +36,7 @@
<dependency>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-util</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</dependency>
</dependencies>
......@@ -116,7 +116,7 @@
<dockerDirectory>${project.basedir}/docker</dockerDirectory>
<imageName>skywalking/skywalking-storage</imageName>
<imageTags>
<imageTag>${skywalking.version}</imageTag>
<imageTag>2.1-2017</imageTag>
</imageTags>
<resources>
<resource>
......
......@@ -8,17 +8,16 @@ import com.a.eye.skywalking.network.Server;
import com.a.eye.skywalking.registry.RegistryCenterFactory;
import com.a.eye.skywalking.registry.api.CenterType;
import com.a.eye.skywalking.registry.api.RegistryCenter;
import com.a.eye.skywalking.registry.assist.NetUtils;
import com.a.eye.skywalking.registry.impl.zookeeper.ZookeeperConfig;
import com.a.eye.skywalking.storage.boot.ElasticBootstrap;
import com.a.eye.skywalking.storage.config.Config;
import com.a.eye.skywalking.storage.config.ConfigInitializer;
import com.a.eye.skywalking.storage.data.file.DataFilesManager;
import com.a.eye.skywalking.storage.data.index.IndexOperatorFactory;
import com.a.eye.skywalking.storage.listener.SearchListener;
import com.a.eye.skywalking.storage.listener.StorageListener;
import com.a.eye.skywalking.registry.assist.NetUtils;
import com.a.eye.skywalking.util.ConfigInitializer;
import java.io.File;
import java.io.IOException;
import java.util.Map;
import java.util.Properties;
......
package com.a.eye.skywalking.storage.config;
import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
import java.util.LinkedList;
import java.util.Properties;
import java.util.logging.Logger;
public class ConfigInitializer {
private static Logger logger = Logger.getLogger(ConfigInitializer.class.getName());
public static void initialize(Properties properties, Class<?> rootConfigType) throws IllegalAccessException {
initNextLevel(properties, rootConfigType, new ConfigDesc());
}
private static void initNextLevel(Properties properties, Class<?> recentConfigType, ConfigDesc parentDesc) throws NumberFormatException, IllegalArgumentException, IllegalAccessException {
for (Field field : recentConfigType.getFields()) {
if (Modifier.isPublic(field.getModifiers()) && Modifier.isStatic(field.getModifiers())) {
String configKey = (parentDesc + "." +
field.getName()).toLowerCase();
String value = properties.getProperty(configKey);
if (value != null) {
if (field.getType().equals(int.class))
field.set(null, Integer.valueOf(value));
if (field.getType().equals(String.class))
field.set(null, value);
if (field.getType().equals(long.class))
field.set(null, Long.valueOf(value));
if (field.getType().equals(boolean.class))
field.set(null, Boolean.valueOf(value));
}
}
}
for (Class<?> innerConfiguration : recentConfigType.getClasses()) {
parentDesc.append(innerConfiguration.getSimpleName());
initNextLevel(properties, innerConfiguration, parentDesc);
parentDesc.removeLastDesc();
}
}
}
class ConfigDesc {
private LinkedList<String> descs = new LinkedList<String>();
void append(String currentDesc) {
descs.addLast(currentDesc);
}
void removeLastDesc() {
descs.removeLast();
}
@Override
public String toString() {
if (descs.size() == 0) {
return "";
}
StringBuilder ret = new StringBuilder(descs.getFirst());
boolean first = true;
for (String desc : descs) {
if (first) {
first = false;
continue;
}
ret.append(".").append(desc);
}
return ret.toString();
}
}
......@@ -6,7 +6,7 @@
<parent>
<artifactId>skywalking</artifactId>
<groupId>com.a.eye</groupId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</parent>
<artifactId>skywalking-webui</artifactId>
......@@ -20,7 +20,7 @@
<dependency>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-network</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</dependency>
<dependency>
<groupId>com.a.eye</groupId>
......@@ -111,7 +111,7 @@
<dependency>
<groupId>com.a.eye</groupId>
<artifactId>skywalking-util</artifactId>
<version>${skywalking.version}</version>
<version>2.1-2017</version>
</dependency>
</dependencies>
......@@ -128,7 +128,7 @@
<dockerDirectory>${project.basedir}/docker</dockerDirectory>
<imageName>skywalking/skywalking-webui</imageName>
<imageTags>
<imageTag>${skywalking.version}</imageTag>
<imageTag>2.1-2017</imageTag>
</imageTags>
<resources>
<resource>
......
......@@ -3,11 +3,11 @@ package com.a.eye.skywalking.web.controller;
import com.a.eye.skywalking.registry.RegistryCenterFactory;
import com.a.eye.skywalking.registry.api.RegistryCenter;
import com.a.eye.skywalking.registry.impl.zookeeper.ZookeeperConfig;
import com.a.eye.skywalking.util.ConfigInitializer;
import com.a.eye.skywalking.util.StringUtil;
import com.a.eye.skywalking.web.client.routing.RoutingServerWatcher;
import com.a.eye.skywalking.web.common.BaseController;
import com.a.eye.skywalking.web.config.Config;
import com.a.eye.skywalking.web.config.ConfigInitializer;
import com.a.eye.skywalking.web.dto.TraceTreeInfo;
import com.a.eye.skywalking.web.service.inter.ITraceTreeService;
import com.alibaba.fastjson.JSON;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册