增加web_api

This commit is contained in:
2026-02-05 15:13:54 +08:00
parent 443ec09c5c
commit d5edbc0723
43 changed files with 7036 additions and 2640 deletions

View File

@ -14,6 +14,7 @@ GasFlux 是一个专门用于处理无人机或飞行器采集的气体浓度数
- **灵活配置**: 基于 YAML 的配置系统,支持自定义参数
- **可视化输出**: 自动生成数据分析图表和报告
- **命令行工具**: 提供直观的 CLI 接口
- **Web API 服务**: 提供完整的 RESTful API支持异步处理、实时监控和详细统计
- **跨平台支持**: 支持 Windows、macOS 和 Linux
## 📋 系统要求
@ -77,6 +78,62 @@ gasflux process /path/to/data/directory
python src/gasflux/run_example.py your_data.xlsx
```
## 🌐 Web API 服务
GasFlux 提供完整的 Web API 服务,支持通过 HTTP 接口进行数据处理。详见以下文档:
- [API 文档](API_DOCUMENTATION.md) - 完整的 API 接口说明
- [环境变量配置](ENVIRONMENT_VARIABLES.md) - 环境变量配置指南
- [Waitress 部署](WAITRESS_DEPLOYMENT.md) - 生产环境部署指南
### 启动 Web 服务
```bash
# 启动 API 服务(使用默认配置)
python run_api.py
# 或使用自定义环境变量
export GASFLUX_PORT=8080
export GASFLUX_LOG_LEVEL=DEBUG
python run_api.py
# 服务将在配置的地址和端口启动
# 访问 http://localhost:5000 查看 Web 界面
```
### 环境变量配置
GasFlux 支持通过环境变量进行灵活配置。详见 [ENVIRONMENT_VARIABLES.md](ENVIRONMENT_VARIABLES.md) 获取完整配置指南。
**常用配置示例**
```bash
# 端口配置
export GASFLUX_PORT=8080
# 日志配置
export GASFLUX_LOG_LEVEL=DEBUG
export GASFLUX_LOG_FILE=/var/log/gasflux/api.log
# 性能配置
export GASFLUX_THREADS=16
export GASFLUX_MAX_CONTENT_LENGTH=524288000 # 500MB
# 目录配置
export GASFLUX_UPLOAD_FOLDER=/data/uploads
export GASFLUX_OUTPUT_FOLDER=/data/outputs
```
### API 特性
- **异步处理**: 支持大文件处理,不阻塞客户端
- **实时监控**: 通过任务 ID 实时查询处理状态
- **文件管理**: 自动文件上传、处理和下载
- **健康检查**: 系统状态监控和诊断
- **详细日志**: 完整的请求日志和性能监控
- **统计监控**: 实时 API 统计、性能指标和系统资源监控
- **环境变量配置**: 通过环境变量灵活配置,无需修改代码
## 📖 使用指南
### 配置文件