本文整理汇总了Java中com.dianping.cat.Cat.logError方法的典型用法代码示例。如果您正苦于以下问题:Java Cat.logError方法的具体用法?Java Cat.logError怎么用?Java Cat.logError使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.dianping.cat.Cat
的用法示例。
在下文中一共展示了Cat.logError方法的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: initGroupDataSource
import com.dianping.cat.Cat; //导入方法依赖的package包/类
@Override
public void initGroupDataSource(GroupDataSource source, JdbcFilter chain) {
Transaction transaction = Cat.newTransaction(CAT_TYPE, "DataSource.Init-" + source.getJdbcRef());
try {
chain.initGroupDataSource(source, chain);
this.monitor = new GroupDataSourceMonitor(source);
StatusExtensionRegister.getInstance().register(this.monitor);
transaction.setStatus(Message.SUCCESS);
} catch (RuntimeException e) {
Cat.logError(e);
transaction.setStatus(e);
throw e;
} finally {
transaction.complete();
}
}
示例2: switchFailOverDataSource
import com.dianping.cat.Cat; //导入方法依赖的package包/类
@Override
public void switchFailOverDataSource(FailOverDataSource source, JdbcFilter chain) {
Transaction t = Cat.newTransaction(CAT_TYPE, "FailOver");
try {
chain.switchFailOverDataSource(source, chain);
Cat.logEvent("DAL.FailOver", "Success");
t.setStatus(Message.SUCCESS);
} catch (RuntimeException exp) {
Cat.logEvent("DAL.FailOver", "Failed");
Cat.logError(exp);
t.setStatus("Fail to find any master database");
throw exp;
} finally {
t.complete();
}
}
示例3: logError
import com.dianping.cat.Cat; //导入方法依赖的package包/类
private void logError(LogEvent event) {
Throwable info = event.getThrown();
if (info != null) {
Throwable exception = info;
Object message = event.getMessage();
String extra = ExceptionUtils.extractExtraMessage(info);
String logMessage = StringUtil.join(",", message, extra);
if (!StringUtil.isEmpty(logMessage)) {
Cat.logError(logMessage, exception);
} else {
Cat.logError(exception);
}
}
}
示例4: sendQueue
import com.dianping.cat.Cat; //导入方法依赖的package包/类
private void sendQueue(QueueName queueName, RabbitMessage rm) throws Exception {
if (rm == null || queueName == null) {
return;
}
initQueueChannel();
String _queueName = queueName.getNameByEnvironment(environment);
Transaction trans = Cat.newTransaction("RabbitMQ Message", "PUBLISH-QUEUE-" + _queueName);
Cat.logEvent("mq send queue", _queueName, Event.SUCCESS,rm.toJsonStr());
try {
queueChannel.queueDeclare(_queueName, true, false, false, null);
queueChannel.basicPublish("", _queueName, MessageProperties.PERSISTENT_TEXT_PLAIN, rm.toJsonStr().getBytes("UTF-8"));
if (LOGGER.isInfoEnabled()) {
LOGGER.info("SEND SUCCESS:[queue:{},message:{}]", _queueName, rm.toJsonStr());
}
Cat.logMetricForCount("PUBLISH-QUEUE-" + _queueName); // 统计请求次数, 可以查看对应队列中放入了多少信息
trans.setStatus(Transaction.SUCCESS);
} catch (Exception e) {
if (LOGGER.isErrorEnabled()) {
LOGGER.error("SEND ERROR:[queue:{},message:{},exception:{}]", _queueName, rm.toJsonStr(), e);
}
String err = queueName + " rabbitmq发送消息异常";
Cat.logError(err, e);
trans.setStatus(e);
throw new AsuraRabbitMqException(err, e);
} finally {
trans.complete();
}
}
示例5: sendTopic
import com.dianping.cat.Cat; //导入方法依赖的package包/类
/**
* 发送消息-topic方式
*
* @param exchangeName 格式为:系统标示_模块标示_功能标示
* @param msg 具体消息
* @author zhangshaobin
* @created 2016年3月1日 下午4:40:59
*/
public void sendTopic(ExchangeName exchangeName, RoutingKey routingKey, PublishSubscribeType type, String msg) throws Exception {
initTopicChannel();
String _exchange = exchangeName.getNameByEnvironment(environment);
Transaction trans = Cat.newTransaction("RabbitMQ Message", "PUBLISH-TOPIC-" + _exchange);
RabbitMessage rm = new RabbitMessage();
rm.setData(msg);
rm.setType(_exchange);
try {
Cat.logEvent("mq send topic",exchangeName.getName(),Event.SUCCESS, rm.toJsonStr());
rm.setType(_exchange);
topicChannel.exchangeDeclare(_exchange, type.getName(), true);
topicChannel.basicPublish(_exchange, routingKey.getKey(), null, rm.toJsonStr().getBytes("UTF-8"));
if (LOGGER.isInfoEnabled()) {
LOGGER.info("SEND SUCCESS:[queue:{},message:{}]", _exchange, rm.toJsonStr());
}
Cat.logMetricForCount("PUBLISH-TOPIC-" + _exchange); // 统计请求次数, 可以查看对应队列中放入了多少信息
trans.setStatus(Transaction.SUCCESS);
} catch (Exception e) {
if (LOGGER.isErrorEnabled()) {
LOGGER.error("SEND ERROR:[queue:{},message:{},exception:{}]", _exchange, rm.toJsonStr(), e);
}
String err = exchangeName + " rabbitmq发送消息异常";
Cat.logError(err, e);
trans.setStatus(e);
throw new AsuraRabbitMqException(err, e);
} finally {
trans.complete();
}
}
示例6: handleErrorException
import com.dianping.cat.Cat; //导入方法依赖的package包/类
/**
* 处理系统异常
* @param errorLogEntity
* @param e
* @param tran
* @return
*/
private DataTransferObject handleErrorException(ErrorLogEntity errorLogEntity,Exception e,Transaction tran){
errorLogEntity.setThrowMessage(e.getMessage());
//cat记录错误
Cat.logError(e);
tran.setStatus(e);
LogUtil.error(logger, " system error message:{}", errorLogEntity.toJsonStr(), e);
return getDTOFromException(DataTransferObject.SYS_ERROR, "服务错误");
}
示例7: init
import com.dianping.cat.Cat; //导入方法依赖的package包/类
/**
* 初始化zk连接
*
* @author zhangshaobin
* @created 2013-6-26 上午10:21:34
*/
private void init() {
applicationName = DynamicPropertyFactory.getInstance().getStringProperty(CommonConstant.CONFIG_APPLICATION_NAME_KEY, null).get();
String zkConfigEnsemble = DynamicPropertyFactory.getInstance().getStringProperty(CommonConstant.ZK_ENSEMABLE_KEY, null).get();
Integer zkConfigSessionTimeout = DynamicPropertyFactory.getInstance().getIntProperty(CommonConstant.ZK_SESSION_TIMEOUT_KEY, 15000).get();
Integer zkConfigConnTimeout = DynamicPropertyFactory.getInstance().getIntProperty(CommonConstant.ZK_CONN_TIMEOUT_KEY, 5000).get();
Transaction tran = Cat.newTransaction("Asura Configuration init", applicationName + "_" + zkConfigEnsemble);
try {
if (Check.NuNStr(zkConfigEnsemble)) {
logger.warn("ZooKeeper configuration running in file mode, zk is not enabled since not configured");
Cat.logError("zk is not enabled since not configured", new RuntimeException("ZooKeeper located at " + zkConfigEnsemble + " is not started."));
return;
}
client = createAndStartZKClient(zkConfigEnsemble, zkConfigSessionTimeout, zkConfigConnTimeout);
if (client.getState() != CuratorFrameworkState.STARTED) {
throw new RuntimeException("ZooKeeper located at " + zkConfigEnsemble + " is not started.");
}
tran.setStatus(Transaction.SUCCESS);
} catch (Exception e) {
logger.error("连接配置中心服务器超时,时间5000毫秒。", e);
Cat.logError("asura configuration init exception", e);
tran.setStatus(e);
System.exit(1);
} finally {
tran.complete();
}
logger.info(new SimpleDateFormat("[yyyy-MM-dd HH:mm:ss] ").format(new Date()) + applicationName + " connected to cofnig server(" + zkConfigEnsemble + ").");
logger.info(applicationName + " connected to cofnig server(" + zkConfigEnsemble + ").");
}
示例8: getConfigValue
import com.dianping.cat.Cat; //导入方法依赖的package包/类
/**
* 从zookeeper上获取配置信息
*
* @param suffixPath
* 配置路径
*
* @return 配置信息值
*/
@Override
public String getConfigValue(final String suffixPath) {
final String path = pasePath(suffixPath);
String data = DynamicPropertyFactory.getInstance().getStringProperty(paseKey(path), null).get();
if (Check.NuNStr(data)) {
try {
if (isExistsNode(path)) {
data = (String) SerializableSerializer.deserialize(client.getData().forPath(path));
} else {
throw new RuntimeException("zk configuration can not find. key:" + path);
}
if (!Check.NuNStr(data)) {
((ConcurrentCompositeConfiguration) ConfigurationManager.getConfigInstance()).setOverrideProperty(paseKey(path), data);
} else {
throw new RuntimeException("zk configuration value is null. key:" + path);
}
} catch (Exception e) {
logger.error("can't get asura configuration by " + path, e);
Transaction tran = Cat.newTransaction("get Asura Configuration", path);
Cat.logError("can't get asura configuration by " + path, e);
tran.setStatus(e);
tran.complete();
}
}
return DynamicPropertyFactory.getInstance().getStringProperty(paseKey(path), null).get();
}
示例9: bizException
import com.dianping.cat.Cat; //导入方法依赖的package包/类
@ExceptionHandler({ BizException.class })
public @ResponseBody
String bizException(BizException e, HttpServletRequest request) {
logger.error("BizException异常:"+e.getLocalizedMessage());
//将错误日志打印到大众点评cat
Cat.logError(e.getCode(),e);
return e.getReturnRestult().toJSONString();
}
示例10: getSingleConnection
import com.dianping.cat.Cat; //导入方法依赖的package包/类
@Override
public SingleConnection getSingleConnection(SingleDataSource source, JdbcFilter chain) throws SQLException {
try {
return chain.getSingleConnection(source, chain);
} catch (SQLException exp) {
Transaction t = Cat.newTransaction("SQL", DaoContextHolder.getSqlName());
Cat.logEvent("SQL.Database", source.getConfig().getJdbcUrl(), "ERROR", source.getConfig().getId());
Cat.logError(exp);
t.setStatus(exp);
t.complete();
throw exp;
}
}
示例11: refreshGroupDataSource
import com.dianping.cat.Cat; //导入方法依赖的package包/类
@Override
public void refreshGroupDataSource(GroupDataSource source, String propertiesName, JdbcFilter chain) {
Transaction t = Cat.newTransaction(CAT_TYPE, "DataSource.Refresh-" + source.getJdbcRef());
Cat.logEvent("DAL.Refresh.Property", propertiesName);
try {
chain.refreshGroupDataSource(source, propertiesName, chain);
t.setStatus(Message.SUCCESS);
} catch (RuntimeException exp) {
Cat.logError(exp);
t.setStatus(exp);
throw exp;
} finally {
t.complete();
}
}
示例12: isInTransaction
import com.dianping.cat.Cat; //导入方法依赖的package包/类
public boolean isInTransaction() {
try {
if (m_connection != null && m_connection.isClosed()) {
return false;
}
} catch (SQLException e) {
Cat.logError(e);
}
return m_inTransaction;
}
示例13: exception
import com.dianping.cat.Cat; //导入方法依赖的package包/类
@ExceptionHandler({ Exception.class })
public @ResponseBody String exception(Exception e, HttpServletRequest request) {
logger.error("Exception异常:"+e.getMessage());
Cat.logError(e);
return exceptionJson;
}