Documentation

排除写入数据的问题

学习如何避免意外结果以及在写入 InfluxDB 时从错误中恢复。

处理 writedelete 响应

如果 InfluxDB OSS 成功地将所有请求数据写入桶中,InfluxDB 将返回 成功 (HTTP 204 状态码)。第一条在批处理中被拒绝的点会导致 InfluxDB 拒绝整个批处理,并以 HTTP 错误状态 进行响应。

查看HTTP状态码

InfluxDB 使用传统的 HTTP 状态码来指示请求的成功或失败。 写请求返回以下状态码:

  • 204 成功:所有请求数据已写入存储桶。
  • 400 错误请求: 请求中的行协议数据格式不正确。 响应主体包含数据中第一个格式不正确的行。所有请求数据均被拒绝并未写入。
  • 401 未授权: 可能指以下之一:
  • 404 未找到: 请求的资源(例如组织或桶)未找到。响应体包含请求的资源类型,例如“organization”,以及资源名称。
  • 413 请求实体太大:所有请求数据均被拒绝且未被写入。只有在Go (golang) ioutil.ReadAll() 函数抛出错误时,InfluxDB OSS才会返回此错误。
  • 500 内部服务器错误: 错误的默认HTTP状态。
  • 503 服务不可用: 服务器暂时无法接受写入。Retry-After 头部描述何时可以再次尝试写入。

响应体的 message 属性可能包含有关错误的更多细节。 如果您的部分数据未写入桶中,请查看如何 排查被拒绝的点

故障排除

如果您注意到您的桶中缺少数据,请执行以下操作:

  • 检查响应主体中的 message 属性以获取有关错误的详细信息。
  • 如果 message 描述了一个字段错误,排查拒绝的点
  • 验证所有行都包含有效的语法(line protocolCSV)。
  • 验证时间戳与精度参数匹配。
  • 通过 优化写入 来最小化负载大小和网络错误。

排查被拒绝的要点

InfluxDB 因以下原因拒绝数据点:

  • 批次包含另一个具有相同系列的点,但其中一个字段具有不同的值类型。
  • 这个 bucket 包含另一个具有相同系列的点,但其中一个字段具有不同的值类型。

检查缺失数据点与其他具有相同系列的点之间的字段类型差异——例如,您是否尝试将string数据写入int字段?



Flux的未来

Flux 正在进入维护模式。您可以像现在一样继续使用它,而无需对您的代码进行任何更改。

阅读更多

InfluxDB 3 开源版本现已公开Alpha测试

InfluxDB 3 Open Source is now available for alpha testing, licensed under MIT or Apache 2 licensing.

我们将发布两个产品作为测试版的一部分。

InfluxDB 3 核心,是我们新的开源产品。 它是一个用于时间序列和事件数据的实时数据引擎。 InfluxDB 3 企业版是建立在核心基础之上的商业版本,增加了历史查询能力、读取副本、高可用性、可扩展性和细粒度安全性。

有关如何开始的更多信息,请查看: