Frontend stuff for lain.church
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

30 lines
965B

  1. #!/usr/bin/env lua
  2. local gitdir = "/home/git/gitea-repositories/"
  3. local socket = require "socket"
  4. local fs = require "lfs"
  5. local hostname = os.getenv("COLLECTD_HOSTNAME") or os.getenv("HOSTNAME") or "lain.church"
  6. local interval = os.getenv("COLLECTD_INTERVAL") or 60
  7. while true do
  8. local users, repos, gopherholes = 0, 0, 0
  9. for user in fs.dir(gitdir) do
  10. if user:sub(1,1) ~= "." then
  11. users = users + 1
  12. for repo in fs.dir(gitdir..user) do
  13. if repo:sub(1,1) ~= "." then
  14. repos = repos + 1
  15. if repo == "gopherhole.git" then
  16. gopherholes = gopherholes + 1
  17. end
  18. end
  19. end
  20. end
  21. end
  22. socket.sleep(interval)
  23. print(string.format("PUTVAL %s/exec-gitea/gitea_active_users interval=%d N:%d",hostname,interval,users))
  24. print(string.format("PUTVAL %s/exec-gitea/gitea_repositories interval=%d N:%d",hostname,interval,repos))
  25. print(string.format("PUTVAL %s/exec-gitea/gitea_gopherholes interval=%d N:%d",hostname,interval,gopherholes))
  26. end