Merge pull request #7510 from darkk/fix-prometheus-zombies

prometheus-node-exporter-lua: close io.popen files to reap zombies
This commit is contained in:
champtar 2018-11-25 16:54:56 -05:00 committed by GitHub
commit eae9f8cb9e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 9 additions and 3 deletions

View File

@ -5,7 +5,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=prometheus-node-exporter-lua
PKG_VERSION:=2018.07.23
PKG_RELEASE:=1
PKG_RELEASE:=2
PKG_MAINTAINER:=Etienne CHAMPETIER <champetier.etienne@gmail.com>
PKG_LICENSE:=Apache-2.0

View File

@ -119,11 +119,13 @@ end
col_mods = {}
col_names = {}
for c in io.popen("ls -1 /usr/lib/lua/prometheus-collectors/*.lua"):lines() do
ls_fd = io.popen("ls -1 /usr/lib/lua/prometheus-collectors/*.lua")
for c in ls_fd:lines() do
c = c:match("([^/]+)%.lua$")
col_mods[c] = require('prometheus-collectors.'..c)
col_names[#col_names+1] = c
end
ls_fd:close()
if port then
server = assert(socket.bind(bind, port))

View File

@ -1,12 +1,16 @@
local uname_fd = io.popen("uname -m")
local labels = {
domainname = "",
nodename = "",
release = string.sub(get_contents("/proc/sys/kernel/osrelease"), 1, -2),
sysname = string.sub(get_contents("/proc/sys/kernel/ostype"), 1, -2),
version = string.sub(get_contents("/proc/sys/kernel/version"), 1, -2),
machine = string.sub(io.popen("uname -m"):read("*a"), 1, -2)
machine = string.sub(uname_fd:read("*a"), 1, -2)
}
uname_fd:close()
local function scrape()
labels["domainname"] = string.sub(get_contents("/proc/sys/kernel/domainname"), 1, -2)
labels["nodename"] = string.sub(get_contents("/proc/sys/kernel/hostname"), 1, -2)