提交 656575b2 编写于 作者: Y youyong

modify the cat

上级 98e82c65
......@@ -133,22 +133,33 @@ public class CrossAnalyzer extends AbstractMessageAnalyzer<CrossReport> implemen
public boolean isIp(String ip) {
boolean result = false;
// try {
// if (ip.matches("\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}")) {
// String s[] = ip.split("\\.");
//
// if (Integer.parseInt(s[0]) <= 255) {
// if (Integer.parseInt(s[1]) <= 255) {
// if (Integer.parseInt(s[2]) <= 255) {
// if (Integer.parseInt(s[3]) <= 255) {
// result = true;
// }
// }
// }
// }
// }
// } catch (Exception e) {
// //ignore
// }
try {
if (ip.matches("\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}")) {
String s[] = ip.split("\\.");
if (Integer.parseInt(s[0]) <= 255) {
if (Integer.parseInt(s[1]) <= 255) {
if (Integer.parseInt(s[2]) <= 255) {
if (Integer.parseInt(s[3]) <= 255) {
result = true;
}
}
}
char first = ip.charAt(0);
char next = ip.charAt(1);
if (first >= '0' && first <= '9') {
if (next >= '0' && next <= '9') {
return true;
}
}
} catch (Exception e) {
//ignore
}
return result;
}
......@@ -157,22 +168,23 @@ public class CrossAnalyzer extends AbstractMessageAnalyzer<CrossReport> implemen
CrossInfo crossInfo = new CrossInfo();
String localIp = tree.getIpAddress();
// List<Message> messages = t.getChildren();
// for (Message message : messages) {
// if (message instanceof Event) {
// if (message.getType().equals("PigeonService.client")) {
// String name = message.getName();
// int index = name.indexOf(":");
// if (index > 0) {
// name = name.substring(0, index);
// }
// if (isIp(name)) {
// crossInfo.setRemoteAddress(name);
// }
// break;
// }
// }
// }
List<Message> messages = t.getChildren();
for (Message message : messages) {
if (message instanceof Event) {
if (message.getType().equals("PigeonService.client")) {
String name = message.getName();
int index = name.indexOf(":");
if (index > 0) {
name = name.substring(0, index);
}
if (isIp(name)) {
crossInfo.setRemoteAddress(name);
}
break;
}
}
}
if (crossInfo.getRemoteAddress().equals(UNKNOWN)) {
MessageId id = MessageId.parse(tree.getMessageId());
String remoteIp = id.getIpAddress();
......
......@@ -145,7 +145,7 @@ public class HeartbeatAnalyzer extends AbstractMessageAnalyzer<HeartbeatReport>
}
}
} catch (Exception e) {
e.printStackTrace();
Cat.logError(e);
}
return period;
......
......@@ -70,7 +70,13 @@ public class SqlParseManager {
}
private String parseSql(String sqlStatement) {
List<String> tables = SqlParsers.forTable().parse(sqlStatement);
List<String> tables = null;
try {
tables = SqlParsers.forTable().parse(sqlStatement);
} catch (Exception e) {
Cat.logError(e);
Cat.getProducer().logEvent("Parse", "SQL", "Error", sqlStatement);
}
String result = "";
boolean first = true;
......
......@@ -84,7 +84,8 @@ public abstract class AbstractMessageAnalyzer<R> extends ContainerHolder impleme
protected boolean shouldDiscard(Transaction t) {
// pigeon default heartbeat is no use
if (("Service").equals(t.getType()) && ("piegonService:heartTaskService:heartBeat").equals(t.getName())) {
if ((("Service").equals(t.getType()) || ("PigeonService").equals(t.getType()))
&& ("piegonService:heartTaskService:heartBeat").equals(t.getName())) {
return true;
}
return false;
......
......@@ -80,9 +80,6 @@ public class HdfsMessageBucketManager extends ContainerHolder implements Message
final String str = sb.toString();
final Path basePath = new Path(str);
final List<String> paths = new ArrayList<String>();
// final String key = "-" + id.getDomain() + "-";
// final String dataFile =path + id.getDomain() + "-" + id.getIpAddress();
fs.listStatus(basePath, new PathFilter() {
@Override
......@@ -97,7 +94,9 @@ public class HdfsMessageBucketManager extends ContainerHolder implements Message
}
});
t.addData(paths.toString());
for (String dataFile : paths) {
Cat.getProducer().logEvent("HDFSBucket", dataFile);
HdfsMessageBucket bucket = m_buckets.get(dataFile);
if (bucket == null) {
......
......@@ -6,4 +6,6 @@ public class CatString {
public static final String ALL_Domain = "All";
public static final String ALL_Database = "All";
public static final String ALL_NAME = "All";
}
......@@ -375,10 +375,10 @@ public class Handler implements PageHandler<Context> {
model.setPage(ReportPage.CACHE);
model.setDisplayDomain(payload.getDomain());
model.setQueryName(payload.getQueryName());
if (payload.getPeriod().isCurrent()) {
model.setCreatTime(new Date());
if (payload.getPeriod().isFuture()) {
model.setLongDate(payload.getCurrentDate());
} else {
model.setCreatTime(new Date(payload.getDate() + 60 * 60 * 1000 - 1000));
model.setLongDate(payload.getDate());
}
if (payload.getAction() == Action.HISTORY_REPORT) {
String type = payload.getReportType();
......
package com.dianping.cat.report.page.logview;
public enum Action implements com.site.web.mvc.Action {
MOBILE("mobile"), VIEW("view");
MOBILE("mobile"), VIEW("view"), DETAIL("detail");
public static Action getByName(String name, Action defaultAction) {
for (Action action : Action.values()) {
......
package com.dianping.cat.report.page.logview;
import java.io.IOException;
import java.util.Date;
import javax.servlet.ServletException;
import com.dianping.cat.Cat;
import com.dianping.cat.message.internal.MessageId;
import com.dianping.cat.message.spi.MessagePathBuilder;
import com.dianping.cat.report.ReportPage;
import com.dianping.cat.report.page.model.spi.ModelPeriod;
import com.dianping.cat.report.page.model.spi.ModelRequest;
......@@ -24,6 +26,9 @@ public class Handler implements PageHandler<Context> {
@Inject(type = ModelService.class, value = "logview")
private ModelService<String> m_service;
@Inject
private MessagePathBuilder m_pathBuilder;
private String getLogView(String messageId, boolean waterfall) {
try {
if (messageId != null) {
......@@ -88,8 +93,23 @@ public class Handler implements PageHandler<Context> {
case MOBILE:
model.setMobileResponse(logView);
break;
case DETAIL:
String path = getPath(messageId);
model.setLogviewPath(path);
break;
}
m_jspViewer.view(ctx, model);
}
private String getPath(String messageId) {
MessageId id = MessageId.parse(messageId);
final String path = m_pathBuilder.getPath(new Date(id.getTimestamp()), "");
final StringBuilder sb = new StringBuilder();
sb.append('/').append(path);
final String key = id.getDomain() + '-' + id.getIpAddress();
return path+key;
}
}
......@@ -5,7 +5,9 @@ public enum JspFile {
LOGVIEW_NO_HEADER("/jsp/report/logview_no_header.jsp"),
MOBILE("/jsp/report/logview_mobile.jsp");
MOBILE("/jsp/report/logview_mobile.jsp"),
DETAIL("/jsp/report/logview_detail.jsp");
private String m_path;
......
......@@ -18,6 +18,8 @@ public class JspViewer extends BaseJspViewer<ReportPage, Action, Context, Model>
}
case MOBILE:
return JspFile.MOBILE.getPath();
case DETAIL:
return JspFile.DETAIL.getPath();
}
throw new RuntimeException("Unknown action: " + action);
......
......@@ -11,6 +11,8 @@ public class Model extends AbstractReportModel<Action, Context> {
private String m_mobileResponse;
private String m_table;
private String m_logviewPath;
public Model(Context ctx) {
super(ctx);
......@@ -50,4 +52,13 @@ public class Model extends AbstractReportModel<Action, Context> {
public void setTable(String table) {
m_table = table;
}
public String getLogviewPath() {
return m_logviewPath;
}
public void setLogviewPath(String logviewPath) {
m_logviewPath = logviewPath;
}
}
......@@ -2,7 +2,6 @@ package com.dianping.cat.report.page.task;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
......@@ -12,6 +11,7 @@ import com.dainping.cat.consumer.dal.report.Task;
import com.dainping.cat.consumer.dal.report.TaskDao;
import com.dainping.cat.consumer.dal.report.TaskEntity;
import com.dianping.cat.Cat;
import com.dianping.cat.helper.CatString;
import com.dianping.cat.report.ReportPage;
import com.dianping.cat.report.task.spi.ReportFacade;
import com.site.dal.jdbc.DalException;
......@@ -23,8 +23,6 @@ import com.site.web.mvc.annotation.PayloadMeta;
public class Handler implements PageHandler<Context> {
private static final String ALL = "All";
private static final int PAGE_SIZE = 1000000;
@Inject
......@@ -42,8 +40,8 @@ public class Handler implements PageHandler<Context> {
int type = payload.getType();
int status = payload.getStatus();
List<String> domains = new ArrayList<String>(Arrays.asList(ALL));
List<String> names = new ArrayList<String>(Arrays.asList(ALL));
List<String> domains = new ArrayList<String>();
List<String> names = new ArrayList<String>();
List<Task> tasks = new ArrayList<Task>();
try {
List<Task> domainSet = m_taskDao.findAllDistinct(start, end, TaskEntity.READSET_REPORT_DOMAIN);
......@@ -117,15 +115,15 @@ public class Handler implements PageHandler<Context> {
model.setType(payload.getType());
model.setStatus(payload.getStatus());
if (isEmpty(domain) || ALL.equals(domain)) {
model.setDomain(ALL);
queryDomain = null;
if (isEmpty(domain)) {
model.setDomain("Cat");
queryDomain = "Cat";
} else {
model.setDomain(domain);
}
if (isEmpty(name) || ALL.equals(name)) {
model.setName(ALL);
if (isEmpty(name) || CatString.ALL_NAME.equals(name)) {
model.setName(CatString.ALL_NAME);
queryName = null;
} else {
model.setName(name);
......
......@@ -52,8 +52,7 @@ public class DefaultTaskConsumer extends TaskConsumer {
@Override
protected void taskNotFoundDuration() {
Date awakeTime = TaskHelper.nextTaskTime();
LockSupport.parkUntil(awakeTime.getTime());
LockSupport.parkNanos(5 * 60 * 1000 * 1000 * 1000);// sleep 5 min
}
@Override
......@@ -102,12 +101,12 @@ public class DefaultTaskConsumer extends TaskConsumer {
}
@Override
public String getName() {
return "Task-Consumer";
}
public String getName() {
return "Task-Consumer";
}
@Override
public void shutdown() {
}
public void shutdown() {
}
}
......@@ -1450,6 +1450,9 @@
<role-hint>logview</role-hint>
<field-name>m_service</field-name>
</requirement>
<requirement>
<role>com.dianping.cat.message.spi.MessagePathBuilder</role>
</requirement>
</requirements>
</component>
<component>
......
<%@ page session="false" language="java" pageEncoding="UTF-8" %>
<%@ page contentType="text/html; charset=utf-8" trimDirectiveWhitespaces="true" %>
<%@ taglib prefix="a" uri="/WEB-INF/app.tld"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="res" uri="http://www.unidal.org/webres"%>
<jsp:useBean id="ctx" type="com.dianping.cat.report.page.logview.Context" scope="request"/>
<jsp:useBean id="payload" type="com.dianping.cat.report.page.logview.Payload" scope="request"/>
<jsp:useBean id="model" type="com.dianping.cat.report.page.logview.Model" scope="request"/>
<a:body>
<res:useCss value="${res.css.local.logview_css}" target="head-css"/>
<res:useJs value="${res.js.local['jquery-1.7.1.js']}" target="head-js"/>
<res:useJs value="${res.js.local.logview_js}" target="head-js"/>
<br>
${model.logviewPath}
</a:body>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<parent>
<groupId>com.dianping.cat</groupId>
<artifactId>parent</artifactId>
<version>0.4.2</version>
</parent>
<parent>
<groupId>com.dianping.cat</groupId>
<artifactId>parent</artifactId>
<version>0.4.2</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>dog-home</artifactId>
<name>Dog Home</name>
......@@ -14,10 +14,10 @@
<groupId>com.dianping.cat</groupId>
<artifactId>dog-gateway</artifactId>
</dependency>
<dependency>
<groupId>com.dianping.cat</groupId>
<artifactId>cat-consumer</artifactId>
</dependency>
<dependency>
<groupId>com.dianping.cat</groupId>
<artifactId>cat-consumer</artifactId>
</dependency>
<dependency>
<groupId>com.site.common</groupId>
<artifactId>web-framework</artifactId>
......@@ -63,19 +63,23 @@
<version>6.1.14</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>velocity</groupId>
<artifactId>velocity-dep</artifactId>
<version>1.4</version>
</dependency>
<dependency>
<groupId>velocity</groupId>
<artifactId>velocity-dep</artifactId>
<version>1.4</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.20</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>com.site.dal</groupId>
<artifactId>dal-jdbc</artifactId>
<version>1.1.7</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
......@@ -112,7 +116,7 @@
<goal>dal-jdbc</goal>
</goals>
<configuration>
<manifest><![CDATA[${basedir}/src/main/resources/META-INF/dal/jdbc/report-manifest.xml,]]></manifest>
<manifest><![CDATA[${basedir}/src/main/resources/META-INF/dal/jdbc/alarm-manifest.xml,]]> <![CDATA[${basedir}/src/main/resources/META-INF/dal/jdbc/alarm-manifest.xml,]]></manifest>
</configuration>
</execution>
</executions>
......
......@@ -11,10 +11,11 @@ final class CatDatabaseConfigurator extends AbstractJdbcResourceConfigurator {
public List<Component> defineComponents() {
List<Component> all = new ArrayList<Component>();
all.add(defineJdbcDataSourceConfigurationManagerComponent("datasources.xml"));
all.add(defineJdbcDataSourceComponent("cat", "com.mysql.jdbc.Driver", "jdbc:mysql://192.168.7.43:3306/cat", "dpcom_cat", "password", "<![CDATA[useUnicode=true&autoReconnect=true]]>"));
defineSimpleTableProviderComponents(all, "cat", com.dainping.cat.consumer.dal.report._INDEX.getEntityClasses());
defineDaoComponents(all, com.dainping.cat.consumer.dal.report._INDEX.getDaoClasses());
defineSimpleTableProviderComponents(all, "cat", com.dianping.dog.dal._INDEX.getEntityClasses());
defineDaoComponents(all, com.dianping.dog.dal._INDEX.getDaoClasses());
return all;
}
......
<?xml version="1.0" encoding="UTF-8"?>
<entities>
<entity name="dailyreport" table="dailyreport" alias="d2">
<member name="id" field="id" value-type="int" length="10" nullable="false" key="true" auto-increment="true" />
<member name="name" field="name" value-type="String" length="20" nullable="false" />
<member name="ip" field="ip" value-type="String" length="20" nullable="false" />
<member name="domain" field="domain" value-type="String" length="50" />
<member name="period" field="period" value-type="Date" nullable="false" />
<member name="type" field="type" value-type="int" length="3" nullable="false" />
<member name="content" field="content" value-type="String" length="2147483647" nullable="false" />
<member name="creation-date" field="creation_date" value-type="Date" nullable="false" />
<var name="key-id" value-type="int" key-member="id" />
<primary-key name="PRIMARY" members="id" />
<index name="period" unique="true" members="period ASC, domain ASC, name ASC" />
<readsets>
<readset name="FULL" all="true" />
</readsets>
<updatesets>
<updateset name="FULL" all="true" />
</updatesets>
<query-defs>
<query name="find-by-PK" type="SELECT">
<param name="key-id" />
<statement><![CDATA[SELECT <FIELDS/> FROM <TABLE/> WHERE <FIELD name='id'/> = ${key-id}]]></statement>
</query>
<query name="insert" type="INSERT">
<statement><![CDATA[INSERT INTO <TABLE/>(<FIELDS/>) VALUES(<VALUES/>)]]></statement>
</query>
<query name="update-by-PK" type="UPDATE">
<param name="key-id" />
<statement><![CDATA[UPDATE <TABLE/> SET <FIELDS/> WHERE <FIELD name='id'/> = ${key-id}]]></statement>
</query>
<query name="delete-by-PK" type="DELETE">
<param name="key-id" />
<statement><![CDATA[DELETE FROM <TABLE/> WHERE <FIELD name='id'/> = ${key-id}]]></statement>
</query>
</query-defs>
</entity>
<entity name="maillog" table="maillog" alias="m">
<member name="id" field="id" value-type="int" length="10" nullable="false" key="true" auto-increment="true" />
<member name="address" field="address" value-type="String" length="500" nullable="false" />
<member name="title" field="title" value-type="String" length="500" nullable="false" />
<member name="content" field="content" value-type="String" length="65535" nullable="false" />
<member name="sendtime" field="sendtime" value-type="Date" nullable="false" />
<member name="status" field="status" value-type="int" length="10" nullable="false" />
<member name="error" field="error" value-type="String" length="1000" />
<member name="cc" field="cc" value-type="String" length="500" />
<var name="key-id" value-type="int" key-member="id" />
<primary-key name="PRIMARY" members="id" />
<readsets>
<readset name="FULL" all="true" />
</readsets>
<updatesets>
<updateset name="FULL" all="true" />
</updatesets>
<query-defs>
<query name="find-by-PK" type="SELECT">
<param name="key-id" />
<statement><![CDATA[SELECT <FIELDS/> FROM <TABLE/> WHERE <FIELD name='id'/> = ${key-id}]]></statement>
</query>
<query name="insert" type="INSERT">
<statement><![CDATA[INSERT INTO <TABLE/>(<FIELDS/>) VALUES(<VALUES/>)]]></statement>
</query>
<query name="update-by-PK" type="UPDATE">
<param name="key-id" />
<statement><![CDATA[UPDATE <TABLE/> SET <FIELDS/> WHERE <FIELD name='id'/> = ${key-id}]]></statement>
</query>
<query name="delete-by-PK" type="DELETE">
<param name="key-id" />
<statement><![CDATA[DELETE FROM <TABLE/> WHERE <FIELD name='id'/> = ${key-id}]]></statement>
</query>
</query-defs>
</entity>
<entity name="ruleinstance" table="ruleinstance" alias="r2">
<member name="id" field="id" value-type="int" length="10" nullable="false" key="true" auto-increment="true" />
<member name="template-id" field="template_id" value-type="int" length="10" nullable="false" />
<member name="content" field="content" value-type="String" length="16777215" nullable="false" />
<member name="domain" field="domain" value-type="String" length="250" nullable="false" />
<member name="creation-date" field="creation_date" value-type="Date" nullable="false" />
<member name="last-modified-date" field="last_modified_date" value-type="Date" nullable="false" />
<var name="key-id" value-type="int" key-member="id" />
<primary-key name="PRIMARY" members="id" />
<readsets>
<readset name="FULL" all="true" />
</readsets>
<updatesets>
<updateset name="FULL" all="true" />
</updatesets>
<query-defs>
<query name="find-by-PK" type="SELECT">
<param name="key-id" />
<statement><![CDATA[SELECT <FIELDS/> FROM <TABLE/> WHERE <FIELD name='id'/> = ${key-id}]]></statement>
</query>
<query name="insert" type="INSERT">
<statement><![CDATA[INSERT INTO <TABLE/>(<FIELDS/>) VALUES(<VALUES/>)]]></statement>
</query>
<query name="update-by-PK" type="UPDATE">
<param name="key-id" />
<statement><![CDATA[UPDATE <TABLE/> SET <FIELDS/> WHERE <FIELD name='id'/> = ${key-id}]]></statement>
</query>
<query name="delete-by-PK" type="DELETE">
<param name="key-id" />
<statement><![CDATA[DELETE FROM <TABLE/> WHERE <FIELD name='id'/> = ${key-id}]]></statement>
</query>
</query-defs>
</entity>
<entity name="ruletemplate" table="ruletemplate" alias="r3">
<member name="id" field="id" value-type="int" length="10" nullable="false" key="true" auto-increment="true" />
<member name="type" field="type" value-type="String" length="250" nullable="false" />
<member name="name" field="name" value-type="String" length="250" />
<member name="content" field="content" value-type="String" length="16777215" nullable="false" />
<member name="creation-date" field="creation_date" value-type="Date" nullable="false" />
<member name="last-modified-date" field="last_modified_date" value-type="Date" nullable="false" />
<var name="key-id" value-type="int" key-member="id" />
<primary-key name="PRIMARY" members="id" />
<readsets>
<readset name="FULL" all="true" />
</readsets>
<updatesets>
<updateset name="FULL" all="true" />
</updatesets>
<query-defs>
<query name="find-by-PK" type="SELECT">
<param name="key-id" />
<statement><![CDATA[SELECT <FIELDS/> FROM <TABLE/> WHERE <FIELD name='id'/> = ${key-id}]]></statement>
</query>
<query name="insert" type="INSERT">
<statement><![CDATA[INSERT INTO <TABLE/>(<FIELDS/>) VALUES(<VALUES/>)]]></statement>
</query>
<query name="update-by-PK" type="UPDATE">
<param name="key-id" />
<statement><![CDATA[UPDATE <TABLE/> SET <FIELDS/> WHERE <FIELD name='id'/> = ${key-id}]]></statement>
</query>
<query name="delete-by-PK" type="DELETE">
<param name="key-id" />
<statement><![CDATA[DELETE FROM <TABLE/> WHERE <FIELD name='id'/> = ${key-id}]]></statement>
</query>
</query-defs>
</entity>
<entity name="subscriber" table="subscriber" alias="s3">
<member name="id" field="id" value-type="int" length="10" nullable="false" key="true" auto-increment="true" />
<member name="domain" field="domain" value-type="String" length="250" nullable="false" />
<member name="group" field="group" value-type="String" length="250" nullable="false" />
<member name="owner" field="owner" value-type="String" length="250" nullable="false" />
<member name="address" field="address" value-type="String" length="1000" nullable="false" />
<member name="type" field="type" value-type="int" length="10" nullable="false" />
<var name="key-id" value-type="int" key-member="id" />
<primary-key name="PRIMARY" members="id" />
<readsets>
<readset name="FULL" all="true" />
</readsets>
<updatesets>
<updateset name="FULL" all="true" />
</updatesets>
<query-defs>
<query name="find-by-PK" type="SELECT">
<param name="key-id" />
<statement><![CDATA[SELECT <FIELDS/> FROM <TABLE/> WHERE <FIELD name='id'/> = ${key-id}]]></statement>
</query>
<query name="insert" type="INSERT">
<statement><![CDATA[INSERT INTO <TABLE/>(<FIELDS/>) VALUES(<VALUES/>)]]></statement>
</query>
<query name="update-by-PK" type="UPDATE">
<param name="key-id" />
<statement><![CDATA[UPDATE <TABLE/> SET <FIELDS/> WHERE <FIELD name='id'/> = ${key-id}]]></statement>
</query>
<query name="delete-by-PK" type="DELETE">
<param name="key-id" />
<statement><![CDATA[DELETE FROM <TABLE/> WHERE <FIELD name='id'/> = ${key-id}]]></statement>
</query>
</query-defs>
</entity>
</entities>
<?xml version="1.0" encoding="UTF-8"?>
<entities>
<entity name="ruleinstance" table="ruleinstance" alias="r">
<member name="id" field="id" value-type="int" length="10" nullable="false" key="true" auto-increment="true" />
<member name="template-id" field="template_id" value-type="int" length="10" nullable="false" />
<member name="content" field="content" value-type="String" length="16777215" nullable="false" />
<member name="domain" field="domain" value-type="String" length="250" nullable="false" />
<member name="creation-date" field="creation_date" value-type="Date" nullable="false" />
<member name="last-modified-date" field="last_modified_date" value-type="Date" nullable="false" />
<var name="key-id" value-type="int" key-member="id" />
<primary-key name="PRIMARY" members="id" />
<readsets>
<readset name="FULL" all="true" />
</readsets>
<updatesets>
<updateset name="FULL" all="true" />
</updatesets>
<query-defs>
<query name="find-by-PK" type="SELECT">
<param name="key-id" />
<statement><![CDATA[SELECT <FIELDS/> FROM <TABLE/> WHERE <FIELD name='id'/> = ${key-id}]]></statement>
</query>
<query name="insert" type="INSERT">
<statement><![CDATA[INSERT INTO <TABLE/>(<FIELDS/>) VALUES(<VALUES/>)]]></statement>
</query>
<query name="update-by-PK" type="UPDATE">
<param name="key-id" />
<statement><![CDATA[UPDATE <TABLE/> SET <FIELDS/> WHERE <FIELD name='id'/> = ${key-id}]]></statement>
</query>
<query name="delete-by-PK" type="DELETE">
<param name="key-id" />
<statement><![CDATA[DELETE FROM <TABLE/> WHERE <FIELD name='id'/> = ${key-id}]]></statement>
</query>
</query-defs>
</entity>
<entity name="ruletemplate" table="ruletemplate" alias="r2">
<member name="id" field="id" value-type="int" length="10" nullable="false" key="true" auto-increment="true" />
<member name="type" field="type" value-type="String" length="250" nullable="false" />
<member name="name" field="name" value-type="String" length="250" />
<member name="content" field="content" value-type="String" length="16777215" nullable="false" />
<member name="creation-date" field="creation_date" value-type="Date" nullable="false" />
<member name="last-modified-date" field="last_modified_date" value-type="Date" nullable="false" />
<var name="key-id" value-type="int" key-member="id" />
<primary-key name="PRIMARY" members="id" />
<readsets>
<readset name="FULL" all="true" />
</readsets>
<updatesets>
<updateset name="FULL" all="true" />
</updatesets>
<query-defs>
<query name="find-by-PK" type="SELECT">
<param name="key-id" />
<statement><![CDATA[SELECT <FIELDS/> FROM <TABLE/> WHERE <FIELD name='id'/> = ${key-id}]]></statement>
</query>
<query name="insert" type="INSERT">
<statement><![CDATA[INSERT INTO <TABLE/>(<FIELDS/>) VALUES(<VALUES/>)]]></statement>
</query>
<query name="update-by-PK" type="UPDATE">
<param name="key-id" />
<statement><![CDATA[UPDATE <TABLE/> SET <FIELDS/> WHERE <FIELD name='id'/> = ${key-id}]]></statement>
</query>
<query name="delete-by-PK" type="DELETE">
<param name="key-id" />
<statement><![CDATA[DELETE FROM <TABLE/> WHERE <FIELD name='id'/> = ${key-id}]]></statement>
</query>
</query-defs>
</entity>
<entity name="subscriber" table="subscriber" alias="s">
<member name="id" field="id" value-type="int" length="10" nullable="false" key="true" auto-increment="true" />
<member name="domain" field="domain" value-type="String" length="250" nullable="false" />
<member name="group" field="group" value-type="String" length="250" nullable="false" />
<member name="owner" field="owner" value-type="String" length="250" nullable="false" />
<member name="address" field="address" value-type="String" length="1000" nullable="false" />
<member name="type" field="type" value-type="int" length="10" nullable="false" />
<var name="key-id" value-type="int" key-member="id" />
<primary-key name="PRIMARY" members="id" />
<readsets>
<readset name="FULL" all="true" />
</readsets>
<updatesets>
<updateset name="FULL" all="true" />
</updatesets>
<query-defs>
<query name="find-by-PK" type="SELECT">
<param name="key-id" />
<statement><![CDATA[SELECT <FIELDS/> FROM <TABLE/> WHERE <FIELD name='id'/> = ${key-id}]]></statement>
</query>
<query name="insert" type="INSERT">
<statement><![CDATA[INSERT INTO <TABLE/>(<FIELDS/>) VALUES(<VALUES/>)]]></statement>
</query>
<query name="update-by-PK" type="UPDATE">
<param name="key-id" />
<statement><![CDATA[UPDATE <TABLE/> SET <FIELDS/> WHERE <FIELD name='id'/> = ${key-id}]]></statement>
</query>
<query name="delete-by-PK" type="DELETE">
<param name="key-id" />
<statement><![CDATA[DELETE FROM <TABLE/> WHERE <FIELD name='id'/> = ${key-id}]]></statement>
</query>
</query-defs>
</entity>
<entity name="dailyreport" table="dailyreport" alias="d">
<member name="id" field="id" value-type="int" length="10" nullable="false" key="true" auto-increment="true" />
<member name="name" field="name" value-type="String" length="20" nullable="false" />
<member name="ip" field="ip" value-type="String" length="20" nullable="false" />
<member name="domain" field="domain" value-type="String" length="50" />
<member name="period" field="period" value-type="Date" nullable="false" />
<member name="type" field="type" value-type="int" length="3" nullable="false" />
<member name="content" field="content" value-type="String" length="2147483647" nullable="false" />
<member name="creation-date" field="creation_date" value-type="Date" nullable="false" />
<var name="key-id" value-type="int" key-member="id" />
<primary-key name="PRIMARY" members="id" />
<index name="period" unique="true" members="period ASC, domain ASC, name ASC" />
<readsets>
<readset name="FULL" all="true" />
</readsets>
<updatesets>
<updateset name="FULL" all="true" />
</updatesets>
<query-defs>
<query name="find-by-PK" type="SELECT">
<param name="key-id" />
<statement><![CDATA[SELECT <FIELDS/> FROM <TABLE/> WHERE <FIELD name='id'/> = ${key-id}]]></statement>
</query>
<query name="insert" type="INSERT">
<statement><![CDATA[INSERT INTO <TABLE/>(<FIELDS/>) VALUES(<VALUES/>)]]></statement>
</query>
<query name="update-by-PK" type="UPDATE">
<param name="key-id" />
<statement><![CDATA[UPDATE <TABLE/> SET <FIELDS/> WHERE <FIELD name='id'/> = ${key-id}]]></statement>
</query>
<query name="delete-by-PK" type="DELETE">
<param name="key-id" />
<statement><![CDATA[DELETE FROM <TABLE/> WHERE <FIELD name='id'/> = ${key-id}]]></statement>
</query>
</query-defs>
</entity>
<entity name="maillog" table="maillog" alias="m">
<member name="id" field="id" value-type="int" length="10" nullable="false" key="true" auto-increment="true" />
<member name="address" field="address" value-type="String" length="500" nullable="false" />
<member name="title" field="title" value-type="String" length="500" nullable="false" />
<member name="content" field="content" value-type="String" length="65535" nullable="false" />
<member name="sendtime" field="sendtime" value-type="Date" nullable="false" />
<member name="status" field="status" value-type="int" length="10" nullable="false" />
<member name="error" field="error" value-type="String" length="1000" />
<member name="cc" field="cc" value-type="String" length="500" />
<var name="key-id" value-type="int" key-member="id" />
<primary-key name="PRIMARY" members="id" />
<readsets>
<readset name="FULL" all="true" />
</readsets>
<updatesets>
<updateset name="FULL" all="true" />
</updatesets>
<query-defs>
<query name="find-by-PK" type="SELECT">
<param name="key-id" />
<statement><![CDATA[SELECT <FIELDS/> FROM <TABLE/> WHERE <FIELD name='id'/> = ${key-id}]]></statement>
</query>
<query name="insert" type="INSERT">
<statement><![CDATA[INSERT INTO <TABLE/>(<FIELDS/>) VALUES(<VALUES/>)]]></statement>
</query>
<query name="update-by-PK" type="UPDATE">
<param name="key-id" />
<statement><![CDATA[UPDATE <TABLE/> SET <FIELDS/> WHERE <FIELD name='id'/> = ${key-id}]]></statement>
</query>
<query name="delete-by-PK" type="DELETE">
<param name="key-id" />
<statement><![CDATA[DELETE FROM <TABLE/> WHERE <FIELD name='id'/> = ${key-id}]]></statement>
</query>
</query-defs>
</entity>
</entities>
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<file path="report-codegen.xml" />
<file path="report-dal.xml" />
</manifest>
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<file path="alarm-codegen.xml" />
<file path="alarm-dal.xml" />
</manifest>
......@@ -173,6 +173,13 @@
</requirement>
</requirements>
</component>
<component>
<role>com.site.dal.jdbc.datasource.JdbcDataSourceConfigurationManager</role>
<implementation>com.site.dal.jdbc.datasource.JdbcDataSourceConfigurationManager</implementation>
<configuration>
<datasourceFile>datasources.xml</datasourceFile>
</configuration>
</component>
<component>
<role>com.site.dal.jdbc.datasource.DataSource</role>
<role-hint>cat</role-hint>
......@@ -199,57 +206,57 @@
</component>
<component>
<role>com.site.dal.jdbc.mapping.TableProvider</role>
<role-hint>report</role-hint>
<role-hint>ruleinstance</role-hint>
<implementation>com.site.dal.jdbc.mapping.SimpleTableProvider</implementation>
<configuration>
<logical-table-name>report</logical-table-name>
<logical-table-name>ruleinstance</logical-table-name>
<physical-table-name></physical-table-name>
<data-source-name>cat</data-source-name>
</configuration>
</component>
<component>
<role>com.site.dal.jdbc.mapping.TableProvider</role>
<role-hint>hostinfo</role-hint>
<role-hint>ruletemplate</role-hint>
<implementation>com.site.dal.jdbc.mapping.SimpleTableProvider</implementation>
<configuration>
<logical-table-name>hostinfo</logical-table-name>
<logical-table-name>ruletemplate</logical-table-name>
<physical-table-name></physical-table-name>
<data-source-name>cat</data-source-name>
</configuration>
</component>
<component>
<role>com.site.dal.jdbc.mapping.TableProvider</role>
<role-hint>sqltable</role-hint>
<role-hint>subscriber</role-hint>
<implementation>com.site.dal.jdbc.mapping.SimpleTableProvider</implementation>
<configuration>
<logical-table-name>sqltable</logical-table-name>
<logical-table-name>subscriber</logical-table-name>
<physical-table-name></physical-table-name>
<data-source-name>cat</data-source-name>
</configuration>
</component>
<component>
<role>com.site.dal.jdbc.mapping.TableProvider</role>
<role-hint>task</role-hint>
<role-hint>dailyreport</role-hint>
<implementation>com.site.dal.jdbc.mapping.SimpleTableProvider</implementation>
<configuration>
<logical-table-name>task</logical-table-name>
<logical-table-name>dailyreport</logical-table-name>
<physical-table-name></physical-table-name>
<data-source-name>cat</data-source-name>
</configuration>
</component>
<component>
<role>com.site.dal.jdbc.mapping.TableProvider</role>
<role-hint>logview</role-hint>
<role-hint>maillog</role-hint>
<implementation>com.site.dal.jdbc.mapping.SimpleTableProvider</implementation>
<configuration>
<logical-table-name>logview</logical-table-name>
<logical-table-name>maillog</logical-table-name>
<physical-table-name></physical-table-name>
<data-source-name>cat</data-source-name>
</configuration>
</component>
<component>
<role>com.dainping.cat.consumer.dal.report.ReportDao</role>
<implementation>com.dainping.cat.consumer.dal.report.ReportDao</implementation>
<role>com.dianping.dog.dal.RuleinstanceDao</role>
<implementation>com.dianping.dog.dal.RuleinstanceDao</implementation>
<requirements>
<requirement>
<role>com.site.dal.jdbc.QueryEngine</role>
......@@ -257,8 +264,8 @@
</requirements>
</component>
<component>
<role>com.dainping.cat.consumer.dal.report.HostinfoDao</role>
<implementation>com.dainping.cat.consumer.dal.report.HostinfoDao</implementation>
<role>com.dianping.dog.dal.RuletemplateDao</role>
<implementation>com.dianping.dog.dal.RuletemplateDao</implementation>
<requirements>
<requirement>
<role>com.site.dal.jdbc.QueryEngine</role>
......@@ -266,8 +273,8 @@
</requirements>
</component>
<component>
<role>com.dainping.cat.consumer.dal.report.SqltableDao</role>
<implementation>com.dainping.cat.consumer.dal.report.SqltableDao</implementation>
<role>com.dianping.dog.dal.SubscriberDao</role>
<implementation>com.dianping.dog.dal.SubscriberDao</implementation>
<requirements>
<requirement>
<role>com.site.dal.jdbc.QueryEngine</role>
......@@ -275,8 +282,8 @@
</requirements>
</component>
<component>
<role>com.dainping.cat.consumer.dal.report.TaskDao</role>
<implementation>com.dainping.cat.consumer.dal.report.TaskDao</implementation>
<role>com.dianping.dog.dal.DailyreportDao</role>
<implementation>com.dianping.dog.dal.DailyreportDao</implementation>
<requirements>
<requirement>
<role>com.site.dal.jdbc.QueryEngine</role>
......@@ -284,8 +291,8 @@
</requirements>
</component>
<component>
<role>com.dainping.cat.consumer.dal.report.LogviewDao</role>
<implementation>com.dainping.cat.consumer.dal.report.LogviewDao</implementation>
<role>com.dianping.dog.dal.MaillogDao</role>
<implementation>com.dianping.dog.dal.MaillogDao</implementation>
<requirements>
<requirement>
<role>com.site.dal.jdbc.QueryEngine</role>
......
<wizard package="com.dianping.cat.consumer">
<jdbc package="com.dainping.dog.dal" name="cat">
<datasource>
<driver>com.mysql.jdbc.Driver</driver>
<url>jdbc:mysql://192.168.7.43:3306/cat</url>
<user>dpcom_cat</user>
<password>password</password>
<properties>useUnicode=true&amp;autoReconnect=true</properties>
</datasource>
<group name="alarm" package="com.dainping.dog.dal">
<table name="ruleinstance"/>
<table name="ruletemplate"/>
<table name="subscriber"/>
<table name="dailyreport"/>
<table name="maillog"/>
</group>
</jdbc>
</wizard>
<wizard package="com.dianping.cat.consumer">
<jdbc package="com.diannping.dog.dal" name="cat">
<datasource>
<driver>com.mysql.jdbc.Driver</driver>
<url>jdbc:mysql://192.168.7.43:3306/cat</url>
<user>dpcom_cat</user>
<password>password</password>
<properties>useUnicode=true&amp;autoReconnect=true</properties>
</datasource>
<group name="alarm" package="com.diannping.dog.dal">
<table name="ruleinstance"/>
<table name="ruletemplate"/>
<table name="subscriber"/>
<table name="dailyreport"/>
<table name="maillog"/>
</group>
</jdbc>
</wizard>
package com.dianping.cat.consumer;
import org.junit.runner.RunWith;
import org.junit.runners.Suite;
import org.junit.runners.Suite.SuiteClasses;
@RunWith(Suite.class)
@SuiteClasses({
// add test classes here
})
public class AllTests {
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册