bash
# 检查服务是否运行
sudo systemctl status your-swagger-service
# 检查端口监听
netstat -tulnp | grep <swagger-port>
# 检查防火墙设置
sudo ufw status
# 如果需要开放端口
sudo ufw allow <port>/tcp
bash
# 检查Swagger JSON/YAML文件路径是否正确
curl -v http://localhost:<port>/swagger.json
# 验证文件格式
python -m json.tool swagger.json
# 或对于YAML
yamllint swagger.yaml
javascript
// Node.js示例
const cors = require('cors');
app.use(cors());
# 查看应用日志
journalctl -u your-service-name -f
# 过滤Swagger相关日志
grep -i "swagger" /var/log/your-app.log
# 测试API端点
curl -v http://localhost:<port>/api-endpoint
# 检查DNS解析
dig your-domain.com
# 检查路由
traceroute your-domain.com
# 使用swagger-cli验证规范
npx swagger-cli validate swagger.json
# 使用OpenAPI Validator
docker run --rm -v $(pwd):/tmp openapitools/openapi-generator-cli validate -i /tmp/swagger.yaml
启用详细日志:
logging.level.io.swagger=DEBUG
使用Postman测试:
版本对比:
diff old-swagger.json new-swagger.json
内存检查:
# 检查进程内存使用
top -p $(pgrep -f your-swagger-app)
定期验证:
# 添加验证脚本到CI/CD流程
npx swagger-cli validate swagger.json || exit 1
监控设置:
文档备份:
# 定期备份Swagger文档
cp swagger.json swagger-$(date +%Y%m%d).json
通过以上方法和工具,您可以有效地诊断和解决Linux环境中Swagger相关的问题,确保API文档服务的稳定运行。