GeoIP 数据库管理
编辑GeoIP 数据库管理编辑
Logstash 提供了一种机制来配置和维护 GeoIP 数据库,插件可以使用该机制来确保它们能够访问始终最新的且符合 EULA 的数据库以进行地理位置丰富。此机制需要互联网访问或到 Elastic GeoIP 数据库服务的网络路由。
如果在 logstash.yml
中启用了数据库管理器(默认情况下已启用),则插件可以订阅数据库,如果尚未提供有效的数据库,则会触发下载。Logstash 每天检查更新。当发现更新的数据库时,它将在后台下载并提供给依赖它的插件。
GeoIP 数据库是根据 MaxMind 的最终用户许可协议单独许可的,该协议禁止在更新可用超过 30 天后使用数据库。当 Logstash 无法在 30 天或更长时间内访问数据库服务以验证托管数据库是否是最新的时,该数据库将被删除,并对订阅了它的插件不可用。
GeoIP 数据库管理是 Logstash 的一项许可功能,仅在 Elastic 许可的完整 Logstash 发行版中可用。
数据库指标编辑
您可以通过 节点统计信息 API 监控托管数据库的状态。
以下请求返回包含数据库管理器统计信息的 JSON 文档,包括
-
数据库状态和新鲜度
-
geoip_download_manager.database.*.status
-
init
: 初始 CC 数据库状态 -
up_to_date
: 使用最新的 EULA 数据库 -
to_be_expired
: 25 天未调用服务 -
expired
: 30 天未调用服务
-
-
fail_check_in_days
: Logstash 自上次成功调用服务以来无法调用服务的持续天数
-
-
有关下载成功和失败的信息
-
geoip_download_manager.download_stats.successes
成功检查和下载次数 -
geoip_download_manager.download_stats.failures
检查或下载失败次数 -
geoip_download_manager.download_stats.status
-
updating
: 正在检查和下载 -
succeeded
: 上次下载成功 -
failed
: 上次下载失败
-
-
curl -XGET 'localhost:9600/_node/stats/geoip_download_manager?pretty'
示例响应
{ "geoip_download_manager" : { "database" : { "ASN" : { "status" : "up_to_date", "fail_check_in_days" : 0, "last_updated_at": "2021-06-21T16:06:54+02:00" }, "City" : { "status" : "up_to_date", "fail_check_in_days" : 0, "last_updated_at": "2021-06-21T16:06:54+02:00" } }, "download_stats" : { "successes" : 15, "failures" : 1, "last_checked_at" : "2021-06-21T16:07:03+02:00", "status" : "succeeded" } } }