Execommand-alarmcallback plugin not loading in Graylog version 4.0.9

I trying to install Execommand-alarmcallback plugin in Graylog version 4.0.9 but I am getting the following error

"2021-08-09 15:19:28,284 ERROR: org.graylog2.bootstrap.CmdLineTool - Plugin “ExeCommandAlarmCallBack” requires version 2.4.0 - not loading! "

These are Graylog logs

OpenJDK 64-Bit Server VM warning: If the number of processors is expected to increase from one, then you should configure the number of parallel GC threads appropriately using -XX:ParallelGCThreads=N
2021-08-09 15:19:28,284 ERROR: org.graylog2.bootstrap.CmdLineTool - Plugin “ExeCommandAlarmCallBack” requires version 2.4.0 - not loading!
2021-08-09 15:19:28,289 ERROR: org.graylog2.bootstrap.CmdLineTool - Plugin “AWS plugins” requires version 2.2.0 - not loading!
2021-08-09 15:19:28,293 INFO : org.graylog2.bootstrap.CmdLineTool - Loaded plugin: Collector 0.0.0-unknown [org.graylog.plugins.collector.CollectorPlugin]
2021-08-09 15:19:28,294 ERROR: org.graylog2.bootstrap.CmdLineTool - Plugin “Threat Intelligence Plugin” requires version 2.2.0 - not loading!
2021-08-09 15:19:28,294 INFO : org.graylog2.bootstrap.CmdLineTool - Loaded plugin: Elasticsearch 6 Support 0.0.0-unknown [org.graylog.storage.elasticsearch6.Elasticsearch6Plugin]
2021-08-09 15:19:28,295 INFO : org.graylog2.bootstrap.CmdLineTool - Loaded plugin: Elasticsearch 7 Support 0.0.0-unknown [org.graylog.storage.elasticsearch7.Elasticsearch7Plugin]
2021-08-09 15:19:29,223 INFO : org.graylog2.bootstrap.CmdLineTool - Running with JVM arguments: -Djava.library.path=./…/lib/sigar -Djdk.tls.acknowledgeCloseNotify=true -Xms1g -Xmx1g -XX:NewRatio=1 -XX:+ResizeTLAB -XX:+UseConcMarkSweepGC -XX:+CMSConcurrentMTEnabled -XX:+CMSClassUnloadingEnabled -XX:-OmitStackTraceInFastThrow -XX:+UseParNewGC
2021-08-09 15:19:30,220 INFO : org.hibernate.validator.internal.util.Version - HV000001: Hibernate Validator null
2021-08-09 15:19:30,727 INFO : org.graylog2.shared.system.stats.SigarService - Failed to load SIGAR. Falling back to JMX implementations.
2021-08-09 15:19:39,627 INFO : org.graylog2.shared.buffers.InputBufferImpl - Message journal is enabled.
2021-08-09 15:19:39,666 INFO : org.graylog2.plugin.system.NodeId - Node ID: e216c241-5374-4aae-978c-63969c77342d
2021-08-09 15:19:40,232 INFO : org.graylog.shaded.kafka09.log.LogManager - Loading logs.
2021-08-09 15:19:40,388 INFO : org.graylog.shaded.kafka09.log.LogManager - Logs loading complete.
2021-08-09 15:19:40,392 INFO : org.graylog2.shared.journal.KafkaJournal - Initialized Kafka based journal at /var/lib/graylog-server/journal
2021-08-09 15:19:40,454 INFO : org.mongodb.driver.cluster - Cluster created with settings {hosts=[localhost:27017], mode=SINGLE, requiredClusterType=UNKNOWN, serverSelectionTimeout=‘30000 ms’, maxWaitQueueSize=5000}
2021-08-09 15:19:40,616 INFO : org.mongodb.driver.cluster - Cluster description not yet available. Waiting for 30000 ms before timing out
2021-08-09 15:19:41,007 INFO : org.mongodb.driver.connection - Opened connection [connectionId{localValue:1, serverValue:109}] to localhost:27017
2021-08-09 15:19:41,016 INFO : org.mongodb.driver.cluster - Monitor thread successfully connected to server with description ServerDescription{address=localhost:27017, type=STANDALONE, state=CONNECTED, ok=true, version=ServerVersion{versionList=[4, 0, 25]}, minWireVersion=0, maxWireVersion=7, maxDocumentSize=16777216, logicalSessionTimeoutMinutes=30, roundTripTimeNanos=6486403}
2021-08-09 15:19:41,106 INFO : org.mongodb.driver.connection - Opened connection [connectionId{localValue:2, serverValue:110}] to localhost:27017
2021-08-09 15:19:41,742 INFO : org.graylog2.shared.buffers.InputBufferImpl - Initialized InputBufferImpl with ring size <65536> and wait strategy , running 2 parallel message handlers.
2021-08-09 15:19:42,577 INFO : org.graylog2.storage.providers.ElasticsearchVersionProvider - Elasticsearch cluster is running v7.10.2
2021-08-09 15:19:45,256 INFO : org.graylog2.shared.buffers.ProcessBuffer - Initialized ProcessBuffer with ring size <65536> and wait strategy .
2021-08-09 15:19:45,579 INFO : org.mongodb.driver.connection - Opened connection [connectionId{localValue:3, serverValue:111}] to localhost:27017
2021-08-09 15:19:45,856 WARN : org.graylog.plugins.map.geoip.GeoIpResolverEngine - GeoIP database file does not exist: /etc/graylog/server/GeoLite2-City.mmdb
2021-08-09 15:19:45,880 INFO : org.graylog2.buffers.OutputBuffer - Initialized OutputBuffer with ring size <65536> and wait strategy .
2021-08-09 15:19:46,089 WARN : org.graylog.plugins.map.geoip.GeoIpResolverEngine - GeoIP database file does not exist: /etc/graylog/server/GeoLite2-City.mmdb
2021-08-09 15:19:46,162 WARN : org.graylog.plugins.map.geoip.GeoIpResolverEngine - GeoIP database file does not exist: /etc/graylog/server/GeoLite2-City.mmdb
2021-08-09 15:19:46,296 WARN : org.graylog.plugins.map.geoip.GeoIpResolverEngine - GeoIP database file does not exist: /etc/graylog/server/GeoLite2-City.mmdb
2021-08-09 15:19:46,369 WARN : org.graylog.plugins.map.geoip.GeoIpResolverEngine - GeoIP database file does not exist: /etc/graylog/server/GeoLite2-City.mmdb
2021-08-09 15:19:48,885 INFO : org.graylog2.bootstrap.ServerBootstrap - Graylog server 0.0.0-unknown starting up
2021-08-09 15:19:48,886 INFO : org.graylog2.bootstrap.ServerBootstrap - JRE: Red Hat, Inc. 1.8.0_292 on Linux 3.10.0-1160.31.1.el7.x86_64
2021-08-09 15:19:48,886 INFO : org.graylog2.bootstrap.ServerBootstrap - Deployment: unknown
2021-08-09 15:19:48,886 INFO : org.graylog2.bootstrap.ServerBootstrap - OS: CentOS Linux 7 (Core) (centos)
2021-08-09 15:19:48,887 INFO : org.graylog2.bootstrap.ServerBootstrap - Arch: amd64

This is Execommand-alarmcallback plugin pom.xml

<?xml version="1.0" encoding="UTF-8"?>


4.0.0

<prerequisites>
    <maven>3.1</maven>
</prerequisites>

<groupId>ir.elenoon</groupId>
<artifactId>execommand-alarmcallback</artifactId>
<version>2.4.0-SNAPSHOT</version>
<packaging>jar</packaging>

<name>${project.artifactId}</name>
<description>Graylog ${project.artifactId} plugin.</description>
<url>https://www.graylog.org</url>

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>

    <!-- Plugins will not be deployed by default - set to `false` if you actually want to deploy it -->
    <maven.deploy.skip>false</maven.deploy.skip>

    <graylog.version>2.1.1</graylog.version>
    <graylog.plugin-dir>/usr/share/graylog-server/plugin</graylog.plugin-dir>
</properties>

<dependencies>
    <dependency>
        <groupId>org.apache.httpcomponents</groupId>
        <artifactId>httpclient</artifactId>
        <version>4.5.3</version>
    </dependency>
    <dependency>
        <groupId>org.graylog2</groupId>
        <artifactId>graylog2-server</artifactId>
        <version>${graylog.version}</version>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>commons-io</groupId>
        <artifactId>commons-io</artifactId>
        <version>2.4</version>
    </dependency>
    <dependency>
        <groupId>com.fasterxml.jackson.dataformat</groupId>
        <artifactId>jackson-dataformat-yaml</artifactId>
        <version>2.3.0</version>
    </dependency>
    <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-databind</artifactId>
        <version>2.2.3</version>
    </dependency>
    <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-lang3</artifactId>
        <version>3.4</version>
    </dependency>
    <!-- https://mvnrepository.com/artifact/com.google.code.gson/gson -->
    <dependency>
        <groupId>com.google.code.gson</groupId>
        <artifactId>gson</artifactId>
        <version>2.8.5</version>
    </dependency>

</dependencies>

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-shade-plugin</artifactId>
            <version>2.3</version>
            <configuration>
                <minimizeJar>false</minimizeJar>
            </configuration>
            <executions>
                <execution>
                    <phase>package</phase>
                    <goals>
                        <goal>shade</goal>
                    </goals>
                    <configuration>
                        <transformers>
                            <transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
                        </transformers>
                    </configuration>
                </execution>
            </executions>
        </plugin>

        <plugin>
            <artifactId>jdeb</artifactId>
            <groupId>org.vafer</groupId>
            <version>1.3</version>
            <configuration>
                <deb>${project.build.directory}/${project.artifactId}-${project.version}.deb</deb>
                <dataSet>
                    <data>
                        <src>${project.build.directory}/${project.build.finalName}.jar</src>
                        <type>file</type>
                        <mapper>
                            <type>perm</type>
                            <prefix>${graylog.plugin-dir}</prefix>
                            <filemode>644</filemode>
                            <user>root</user>
                            <group>root</group>
                        </mapper>
                    </data>
                </dataSet>
            </configuration>
        </plugin>

        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>rpm-maven-plugin</artifactId>
            <version>2.1.2</version>
            <configuration>
                <group>Application/Internet</group>
                <prefixes>
                    <prefix>/usr</prefix>
                </prefixes>
                <defineStatements>
                    <defineStatement>_unpackaged_files_terminate_build 0</defineStatement>
                    <defineStatement>_binaries_in_noarch_packages_terminate_build 0</defineStatement>
                </defineStatements>
                <defaultFilemode>644</defaultFilemode>
                <defaultDirmode>755</defaultDirmode>
                <defaultUsername>root</defaultUsername>
                <defaultGroupname>root</defaultGroupname>
                <mappings>
                    <mapping>
                        <directory>${graylog.plugin-dir}</directory>
                        <sources>
                            <source>
                                <location>${project.build.directory}/</location>
                                <includes>
                                    <include>${project.build.finalName}.jar</include>
                                </includes>
                            </source>
                        </sources>
                    </mapping>
                </mappings>
            </configuration>
        </plugin>
    </plugins>
</build>

What changes should be made to Execommand-alarmcallback plugin pom.xml for the plugin to work

Hello

Was this a plugin you had installed before you upgrade to Graylog 4.0?
If so it may not be able to work with your version of Graylog.
If you go to System/Nodes section on your web UI what does this section look like? Does your plugins match your version of Graylog?

EDIT: I was researching this issue, Have you tried to run “Updates” on you Graylog server? Perhaps install version 4.0.11 see if that fixes the issue?

https://docs.graylog.org/en/4.0/pages/upgrade/graylog-2.2.html#alert-notifications-previously-known-as-alarm-callbacks

I will upgrade to version 4.0.11 and see if the plugin works .
Thanks for the help .

Tried Graylog 4.0.11 version but the plugin didn’t work .

Is there any other plugin with similar functionality as Execommand-alarmcallback .
Execommand-alarmcallback is a Execute Script Plugin. U can check in this link Graylog Marketplace

Or Anyone has upgraded Execommand-alarmcallback plugin which is compatible with Graylog 4.0.9 ?

Hmmmmm…So this plugin is quite old. It’s not been updated in 5 years, so it wouldn’t appear to be actively maintained. So what are you wanting out of that plugin? Graylog offers a script callback function here:

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.