From 9f30998fbf870b60ebfd5a3f4be9b549ec19f91d Mon Sep 17 00:00:00 2001 From: "Dustin C. Hatch" Date: Tue, 5 Nov 2024 06:21:38 -0600 Subject: [PATCH] r/jellyfin: Enable Prometheus metrics Jellyfin can expose metrics in Prometheus format, but this functionality is disabled by default. To enable it, we must set `EnableMetrics` in the configuration file. This commit adds a template configuration file that uses the `jellyfin_enable_metrics` Ansible variable to control this value. --- roles/jellyfin/defaults/main.yml | 1 + roles/jellyfin/tasks/deploy.yml | 22 +++ roles/jellyfin/templates/system.xml.j2 | 191 +++++++++++++++++++++++++ 3 files changed, 214 insertions(+) create mode 100644 roles/jellyfin/templates/system.xml.j2 diff --git a/roles/jellyfin/defaults/main.yml b/roles/jellyfin/defaults/main.yml index 8a5cd77..6e0005f 100644 --- a/roles/jellyfin/defaults/main.yml +++ b/roles/jellyfin/defaults/main.yml @@ -1,5 +1,6 @@ jellyfin_version: latest jellyfin_container_image: docker.io/jellyfin/jellyfin +jellyfin_enable_metrics: true jellyfin_media_dirs: - /srv/cifs/Music - /srv/cifs/Movies diff --git a/roles/jellyfin/tasks/deploy.yml b/roles/jellyfin/tasks/deploy.yml index 12dff67..07c9f0e 100644 --- a/roles/jellyfin/tasks/deploy.yml +++ b/roles/jellyfin/tasks/deploy.yml @@ -37,6 +37,28 @@ state: directory tags: - datadir + +- name: ensure jellyfin configuration directory exists + file: + path: /var/lib/jellyfin/config + owner: jellyfin + group: jellyfin + mode: u=rwx,go=rx + state: directory + tags: + - config + +- name: ensure jellyfin system is configured + template: + src: system.xml.j2 + dest: /var/lib/jellyfin/config/system.xml + owner: jellyfin + group: jellyfin + mode: u=rw,go=r + tags: + - config + notify: + - restart jellyfin - name: ensure jellyfin environment is configured template: diff --git a/roles/jellyfin/templates/system.xml.j2 b/roles/jellyfin/templates/system.xml.j2 new file mode 100644 index 0000000..f40365f --- /dev/null +++ b/roles/jellyfin/templates/system.xml.j2 @@ -0,0 +1,191 @@ + + + 3 + true + {{ jellyfin_enable_metrics|string|lower }} + true + true + true + true + true + + + en + US + + . + + + % + + + , + & + - + { + } + ' + + + the + a + an + + 5 + 90 + 300 + 5 + 5 + 0 + 60 + 30 + Legacy + + + Book + + + + + + + + + Movie + + + + + + + + + MusicVideo + + + + The Open Movie Database + + + + The Open Movie Database + + + + + Series + + + + + + + + + MusicAlbum + + + + TheAudioDB + + + + + + + MusicArtist + + + + TheAudioDB + + + + + + + BoxSet + + + + + + + + + Season + + + + + + + + + Episode + + + + + + + + + true + + en-US + false + + 0 + false + false + true + + + + Jellyfin Stable + https://repo.jellyfin.org/files/plugin/manifest.json + true + + + true + 0 + + true + 500 + + * + + 30 + 0 + 0 + false + true + 0 + MatchSource + 0 + + + F007D354 + Stable + + + 6F511C87 + Unstable + + + + false + false + NonBlocking + BelowNormal + 10000 + + 320 + + 10 + 10 + 4 + 90 + 1 + +