*Third try - fixed typo in patch line*
- "-Np1" should have been "-Np2".
Without the quotes, of course.
Sorry...its too warm and the observium-lfs has a different path variable
(DIR_APP) than others. I put both files in attachments.
##########################################################
*Second try with attachment in unix format (line breaks)!*
##########################################################
On 22.06.2026 16:20, Peer Dietzmann wrote:
> Hello,
Hi,
> there is also another patch required to make the module working. But I
> just can't find the file in the repository that needs to be changed:
You won't find this file in the repository - that would be too easy. ;-)
This 'apache'-file is stored in the observium archive
(observium/scripts/agent-local/apache). And only there. It is extracted
during the build phase, and is then immediately deleted. This is
controlled via the lfs file:
Line 83 (to be sure: first delete and then unpack source):
...
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
...
Line 103 (clean up):
...
@rm -rf $(DIR_APP)
...
IMHO the best way to apply your changes would be a patchfile (see
attachment) which needs to be copied into the repository in the
directory '/src/patches/observium', e.g.).
Then the lfs file needs something like this in a new line *84*:
...
cd $(DIR_APP) && patch -Np2 <
$(DIR_SRC)/src/patches/observium/[NAME_OF_PATCHFILE]
...
HTH
Matthias
> Line 29 of /usr/lib/observium_agent/scripts-available/apache has to be
> changed to:
>
> close INFILE;
> } else {
> # grab the status URL (fresh data)
> @data = split /(\n)/, LWP::Simple::get(
> 'http://localhost:81/server-status?auto' )
> or die "Data fetch failure.\n";
>
> # write file
>
> The *localhost* has to be changed to *localhost:81*
>
> The concerned bug that should be fixed through those three patches is:
> https://bugzilla.ipfire.org/show_bug.cgi?id=14017
>
> Best,
>
> Peer
>
> On 22/06/2026 16:15, Peer Dietzmann wrote:
>> Redirect requests to Apache's status to it's backend, force local requests.
>> This is required to allow Observium's agent to pull metrics from Apache.
>>
>> Best,
>> Peer
>>
>> Signed-off-by: Peer Dietzmann <[email protected]>
>> ---
>> config/httpd/httpd.conf | 6 ++++++
>> 1 file changed, 6 insertions(+)
>>
>> diff --git a/config/httpd/httpd.conf b/config/httpd/httpd.conf
>> index c694bffe2..09b10b50f 100644
>> --- a/config/httpd/httpd.conf
>> +++ b/config/httpd/httpd.conf
>> @@ -49,4 +49,10 @@ Include /etc/httpd/conf/default-server.conf
>> # Virtual server configuration
>> Include /etc/httpd/conf/vhosts.d/*.conf
>>
>> +# Allow local clients to pull Apache's status
>> +<Location /server-status>
>> + SetHandler server-status
>> + Require local
>> +</Location>
>> +
>> # EOF
>
--- a/observium/scripts/agent-local/apache Sun Oct 4 07:21:06 2015
+++ b/observium/scripts/agent-local/apache Mon Jun 22 16:36:40 2026
@@ -26,7 +26,7 @@
close INFILE;
} else {
# grab the status URL (fresh data)
- @data = split /(\n)/, LWP::Simple::get(
'http://localhost/server-status?auto' )
+ @data = split /(\n)/, LWP::Simple::get(
'http://localhost:81/server-status?auto' )
or die "Data fetch failure.\n";
# write file
###############################################################################
# #
# IPFire.org - A linux based firewall #
# Copyright (C) 2007-2026 IPFire Team <[email protected]> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
# the Free Software Foundation, either version 3 of the License, or #
# (at your option) any later version. #
# #
# This program 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 this program. If not, see <http://www.gnu.org/licenses/>. #
# #
###############################################################################
###############################################################################
# Definitions
###############################################################################
include Config
SUMMARY = Observium agent
VER = 24.4
THISAPP = observium-community-$(VER)
DL_FILE = $(THISAPP).tar.gz
DL_FROM = $(URL_IPFIRE)
DIR_APP = $(DIR_SRC)/observium
TARGET = $(DIR_INFO)/$(THISAPP)
PROG = observium-agent
PAK_VER = 5
DEPS = xinetd perl-Encode-Locale
SERVICES =
###############################################################################
# Top-level Rules
###############################################################################
objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
$(DL_FILE)_BLAKE2 =
1ef34e7bb6ce43ea7e0a122deb5031d555d942d4f79be0596fc0e2c63a2f92321aa22f34a21e6fa559a8a76e744770f9d74676955acdd76dc4d410e1107636a2
install : $(TARGET)
check : $(patsubst %,$(DIR_CHK)/%,$(objects))
download :$(patsubst %,$(DIR_DL)/%,$(objects))
b2 : $(subst %,%_BLAKE2,$(objects))
dist:
@$(PAK)
###############################################################################
# Downloading, checking, b2sum
###############################################################################
$(patsubst %,$(DIR_CHK)/%,$(objects)) :
@$(CHECK)
$(patsubst %,$(DIR_DL)/%,$(objects)) :
@$(LOAD)
$(subst %,%_BLAKE2,$(objects)) :
@$(B2SUM)
###############################################################################
# Installation Details
###############################################################################
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
@$(PREBUILD)
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
cd $(DIR_APP) && patch -Np2 <
$(DIR_SRC)/src/patches/observium/01_redirect_apache_localhost_to_port_81.patch
# Install xinet.d configuration
mkdir -pv /etc/xinetd.d
cd $(DIR_APP) && install -m 644 scripts/observium_agent_xinetd \
/etc/xinetd.d/observium_agent_xinetd
# Install the agent script
cd $(DIR_APP) && install -m 755 scripts/observium_agent \
/usr/bin/observium_agent
# Install modules
mkdir -pv /usr/lib/observium_agent/scripts-{available,enabled}
install -m 755
$(DIR_APP)/scripts/agent-local/{apache,dmi,ksm,lmsensors,nfs,nfsd,nginx,postfix_mailgraph,postfix_qshape,vmwaretools}
\
/usr/lib/observium_agent/scripts-available/
# Backup
install -v -m 644 $(DIR_SRC)/config/backup/includes/observium-agent \
/var/ipfire/backup/addons/includes/observium-agent
@rm -rf $(DIR_APP)
@$(POSTBUILD)