全部产品
弹性计算 会员服务 网络 安全 移动云 数加·大数据分析及展现 数加·大数据应用 管理与监控 云通信 阿里云办公 培训与认证 智能硬件
存储与CDN 数据库 域名与网站(万网) 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网 更多
高性能时间序列数据库 HiTSDB

异常处理

更新时间:2018-03-07 20:40:58

HiTSDB-Client SDK 不强制处理异常,所有异常均以 RuntimeException 的形式抛出。用户可以根据需要捕捉,处理异常。

常见异常

异常类描述
HttpClientExceptionClient 异常
HttpClientConnectionRefusedExceptionHiTSDB 服务器拒绝连接
HttpClientInitExceptionClient 初始化异常
HttpClientSocketTimeoutException请求超时
HttpServerErrorExceptionHiTSDB 服务端返回 5xx 错误码
HttpServerNotSupportExceptionHiTSDB 服务端返回 4xx 错误码
HttpUnknowStatusExceptionHiTSDB 服务端的响应码未知
BufferQueueFullException异步提交缓冲队列已满

异常处理

同步接口与异常处理

  1. try {
  2. tsdb.ttl(10000);
  3. } catch(HttpServerNotSupportException e) {
  4. int status = e.getStatus();
  5. String message = e.getMessage();
  6. System.err.println(status + "," + message);
  7. } catch(HttpServerErrorException e) {
  8. int status = e.getStatus();
  9. String message = e.getMessage();
  10. System.err.println(status + "," + message);
  11. }

异步接口与异常处理

在需要处理异常的时候,重写 failed 方法。

  1. QueryCallback cb = new QueryCallback() {
  2. @Override
  3. public void response(Query input, List<QueryResult> result) {
  4. System.out.println("查询参数:" + input);
  5. System.out.println("返回结果:" + result);
  6. }
  7. // 在需要处理异常的时候,重写 failed 方法
  8. @Override
  9. public void failed(Query request, Exception ex) {
  10. super.failed(request, ex);
  11. }
  12. };
  1. BatchPutCallback cb = new BatchPutCallback() {
  2. @Override
  3. public void response(List<Point> input, Result output) {
  4. long afterNum = num.addAndGet(input.size());
  5. System.out.println("成功处理" + input.size() + ",已处理" + afterNum);
  6. }
  7. @Override
  8. public void failed(List<Point> input, Exception ex) {
  9. ex.printStackTrace();
  10. long afterNum = num.addAndGet(input.size());
  11. System.out.println("失败处理" + input.size() + ",已处理" + afterNum);
  12. }
  13. };
本文导读目录