diff options
author | Christian Pointner <equinox@spreadspace.org> | 2014-10-18 04:35:51 +0200 |
---|---|---|
committer | Christian Pointner <equinox@spreadspace.org> | 2014-10-18 04:35:51 +0200 |
commit | 47f172dbcbe0cae3a6882acc46c74a755507afec (patch) | |
tree | 8f98c98b9ff8579181f35d61c4884f337a041b67 /src/daq/nginx-lua/s5-nginx-fetch.lua | |
parent | moved to resty-lock for fetch (diff) |
nginx lua now makes all work by itself
Diffstat (limited to 'src/daq/nginx-lua/s5-nginx-fetch.lua')
-rw-r--r-- | src/daq/nginx-lua/s5-nginx-fetch.lua | 73 |
1 files changed, 0 insertions, 73 deletions
diff --git a/src/daq/nginx-lua/s5-nginx-fetch.lua b/src/daq/nginx-lua/s5-nginx-fetch.lua deleted file mode 100644 index 8821094..0000000 --- a/src/daq/nginx-lua/s5-nginx-fetch.lua +++ /dev/null @@ -1,73 +0,0 @@ --- --- sfive --- --- sfive - spreadspace streaming statistics suite is a generic --- statistic collection tool for streaming server infrastuctures. --- The system collects and stores meta data like number of views --- and throughput from a number of streaming servers and stores --- it in a global data store. --- The data acquisition is designed to be generic and extensible in --- order to support different streaming software. --- sfive also contains tools and applications to filter and visualize --- live and recorded data. --- --- --- Copyright (C) 2014 Christian Pointner <equinox@spreadspace.org> --- Markus Grueneis <gimpf@gimpf.org> --- --- This file is part of sfive. --- --- sfive is free software: you can redistribute it and/or modify --- it under the terms of the GNU General Public License version 3 --- as published by the Free Software Foundation. --- --- sfive is distributed in the hope that it will be useful, --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the --- GNU General Public License for more details. --- --- You should have received a copy of the GNU General Public License --- along with sfive. If not, see <http://www.gnu.org/licenses/>. --- --- --- Install this by adding the following to your nginx.conf --- --- location /sfive { --- allow 127.0.0.1; --- allow ::1; --- deny all; --- --- content_by_lua_file '/path/to/s5-nginx-fetch.lua'; --- } --- - -local lock = locks:new("sfive_locks", { exptime = nil, timeout = 0.001 }) -local ok, err = lock:lock("fetch") -if not ok then - if err == "timeout" then - ngx.exit(ngx.HTTP_SERVICE_UNAVAILABLE) - else - ngx.log(ngx.ERR, "SFive(fetch): failed to acquire fetch lock: " .. err) - ngx.exit(ngx.HTTP_INTERNAL_SERVER_ERROR) - end -else - ngx.log(ngx.INFO, "SFive(fetch): client connected") - local sfive_data = ngx.shared.sfive_data - while true do - logs = sfive_data:get_keys() - for i, k in ipairs(logs) do - local ok, err = ngx.say(sfive_data:get(k)) - if not ok then - ngx.log(ngx.ERR, "SFive(fetch): failed to send data set: ", err) - break - end - sfive_data:delete(k) - end - ngx.flush() - ngx.sleep(0.1) - end - ok, err = lock:unlock("fetch") - if not ok then - ngx.log(ngx.ERR, "SFive(fetch): unlock error: " .. err) - end -end |