diff options
| author | Chris Lu <chris.lu@gmail.com> | 2021-01-23 03:43:48 -0800 |
|---|---|---|
| committer | Chris Lu <chris.lu@gmail.com> | 2021-01-23 03:43:48 -0800 |
| commit | 937cfacc01c0acd27f352f1f57b8abd6f1e8bc56 (patch) | |
| tree | 1efa593e6a77a38a3e36e8340383c7ada45c3b8a /weed/server/filer_server_handlers.go | |
| parent | 3ecd989500c9ee23460b3707e5713f944346d070 (diff) | |
| download | seaweedfs-937cfacc01c0acd27f352f1f57b8abd6f1e8bc56.tar.xz seaweedfs-937cfacc01c0acd27f352f1f57b8abd6f1e8bc56.zip | |
filer: add "proxyToFileId" to reverse proxy to a volume server
Diffstat (limited to 'weed/server/filer_server_handlers.go')
| -rw-r--r-- | weed/server/filer_server_handlers.go | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/weed/server/filer_server_handlers.go b/weed/server/filer_server_handlers.go index 451e2a2de..5b93c6d08 100644 --- a/weed/server/filer_server_handlers.go +++ b/weed/server/filer_server_handlers.go @@ -17,9 +17,16 @@ func (fs *FilerServer) filerHandler(w http.ResponseWriter, r *http.Request) { start := time.Now() switch r.Method { case "GET": - stats.FilerRequestCounter.WithLabelValues("get").Inc() - fs.GetOrHeadHandler(w, r, true) - stats.FilerRequestHistogram.WithLabelValues("get").Observe(time.Since(start).Seconds()) + fileId := r.FormValue("proxyToFileId") + if fileId != "" { + stats.FilerRequestCounter.WithLabelValues("proxy").Inc() + fs.proxyToVolumeServer(w,r,fileId) + stats.FilerRequestHistogram.WithLabelValues("proxy").Observe(time.Since(start).Seconds()) + } else { + stats.FilerRequestCounter.WithLabelValues("get").Inc() + fs.GetOrHeadHandler(w, r, true) + stats.FilerRequestHistogram.WithLabelValues("get").Observe(time.Since(start).Seconds()) + } case "HEAD": stats.FilerRequestCounter.WithLabelValues("head").Inc() fs.GetOrHeadHandler(w, r, false) |
