You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Geoserver ImageMosaic timeregex.properties无法正确读取时间戳问题

Geoserver ImageMosaic时间戳提取失败问题解决

问题背景

使用Ubuntu系统下的Geoserver 2.26.0配置ImageMosaic存储,用于提供小时级栅格数据。栅格文件存放在rasters/目录,命名格式为qpe_20241004060000.tif,但创建存储后DBF文件无法正确读取时间戳,时间字段无有效数据。

当前配置详情

栅格文件名示例

qpe_20241004060000.tif
qpe_20241004070000.tif
qpe_20241004080000.tif

timeregex.properties配置

regex=([0-9]{14}),format=yyyyMMddHHmmss

indexer.properties配置

TimeAttribute=ingestion
ElevationAttribute=elevation
Schema=*the_geom:Polygon,location:String,ingestion:java.util.Date,elevation:Integer
PropertyCollectors=TimestampFileNameExtractorSPI[timeregex](ingestion)

问题原因与修复方案

核心问题

当前正则表达式仅匹配14位数字,但未考虑文件名的前缀qpe_和后缀.tif,导致无法精准定位时间戳部分,匹配失败。

修复步骤

  1. 修正timeregex.properties的正则表达式
    更新为能匹配完整文件名结构的正则,精准捕获中间的14位时间戳:

    regex=qpe_([0-9]{14})\\.tif,format=yyyyMMddHHmmss
    

    说明:\\.是对.的转义(正则中.为通配符),确保只匹配.tif后缀的文件。

  2. 清理旧索引文件
    删除rasters/目录下已生成的index.dbf、index.shp、index.shx等索引文件,避免旧数据干扰。

  3. 重新创建ImageMosaic存储
    在Geoserver管理界面中重新创建ImageMosaic存储,系统会基于修正后的配置重新生成索引,此时DBF文件的ingestion字段应能正确显示解析后的时间戳。

额外排查点

  • 若问题仍存在,查看Geoserver日志文件(logs/geoserver.log),检查是否有正则匹配失败的报错信息
  • 确认Geoserver进程对rasters/目录及文件有读取权限
  • 验证indexer.properties中PropertyCollectors配置是否正确关联timeregex配置文件

内容的提问来源于stack exchange,提问作者DarwinsBeard

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 23:41:09