*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)

Reply via email to