我想知道是否有人将Tasseo用于他们的 Graphite 仪表板。我遇到了一些我不太明白的问题。基本上,Tasseo 轮询 Graphite 服务器以获取统计信息 - 如果您在 Graphite 服务器上启用了身份验证(http base auth),那么您必须将环境变量导出GRAPHITE_URL
到GRAPHITE_AUTH
运行 tasseo 的环境,即。如果您将 tasseo 作为 runit 服务运行,那么您的运行脚本应如下所示:
#!/bin/sh
exec 2>&1
export GRAPHITE_URL="https://graphite-url"
export GRAPHITE_AUTH="user:password"
cd /app
exec chpst -u tasseo bundle exec rackup -o 127.0.0.1 -p 5000 -s thin
但我注意到的是,如果我没有在另一个选项卡中运行 Tasseo 的同一浏览器中对 Graphite 进行身份验证(通过运行,我的字面意思是运行,因为 Tasseo 只是一个完全内置在 javascript 中的 sinatra 应用程序,即它在您的浏览器),然后我无法显示任何图表。一旦我在同一个浏览器中对 Graphite 进行身份验证,一切正常。Tasseo 正在使用 CORS,即。它从 JavaScript 中轮询 Graphite,所以它可能会用它做点什么。
最烦人的是,每次我重新启动 tasseo 应用服务器时我都必须这样做 :-( 所以当我重新启动 tasseo 时,我必须重新加载 Graphite 页面 - 我假设这是重新验证?我也注意到,即使当我重新加载 Graphite 选项卡,Tasseo 工作了一段时间,然后过了一段时间(没有确切的措施)它停止工作 - 在 Chrome 的开发控制台中,我可以看到OPTIONS
对 Graphite 的请求失败 - 所以GET
请求也必须。任何想法?