Skip to content

Commit

Permalink
Issue #115: Develop HTTP Extension
Browse files Browse the repository at this point in the history
* Various adjustments and fixes

* Refactored unit tests
  • Loading branch information
NassimBtk committed Apr 17, 2024
1 parent 62d67cc commit 653a3cd
Show file tree
Hide file tree
Showing 41 changed files with 1,058 additions and 583 deletions.
4 changes: 0 additions & 4 deletions metricshub-agent/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -54,10 +54,6 @@
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
</dependency>
<dependency>
<groupId>org.sentrysoftware</groupId>
<artifactId>http</artifactId>
</dependency>

<!-- OpenTelemetry -->
<dependency>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,14 +32,14 @@ void testToProtocol() throws InvalidConfigurationException {
httpConfigCli.setTimeout(timeout);
httpConfigCli.setHttpOrHttps(httpOrHttps);

try (MockedStatic<CliExtensionManager> CliExtensionManagerMock = mockStatic(CliExtensionManager.class)) {
try (MockedStatic<CliExtensionManager> cliExtensionManagerMock = mockStatic(CliExtensionManager.class)) {
// Initialize the extension manager required by the agent context
final ExtensionManager extensionManager = ExtensionManager
.builder()
.withProtocolExtensions(List.of(new HttpTestExtension()))
.build();

CliExtensionManagerMock
cliExtensionManagerMock
.when(() -> CliExtensionManager.getExtensionManagerSingleton())
.thenReturn(extensionManager);

Expand All @@ -56,9 +56,6 @@ void testToProtocol() throws InvalidConfigurationException {

assertNotNull(result);
assertEquals(expected, result);
// assertEquals(expected.getHttps(), result.getHttps());
// assertEquals(expected.getTimeout(), result.getTimeout());
// assertEquals(expected.getPort(), result.getPort());

httpConfigCli = new HttpConfigCli();
httpConfigCli.setTimeout(timeout);
Expand All @@ -67,9 +64,6 @@ void testToProtocol() throws InvalidConfigurationException {
result = (HttpTestConfiguration) httpConfigCli.toProtocol(username, password);
assertNotNull(result);
assertEquals(expected, result);
// assertEquals(expected.getHttps(), result.getHttps());
// assertEquals(expected.getTimeout(), result.getTimeout());
// assertEquals(expected.getPort(), result.getPort());
}
}

Expand Down

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
package org.sentrysoftware.metricshub.engine.configuration;
package org.sentrysoftware.metricshub.engine.extension;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import org.sentrysoftware.metricshub.engine.common.exception.InvalidConfigurationException;
import org.sentrysoftware.metricshub.engine.configuration.IConfiguration;

@Data
@AllArgsConstructor
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,14 +35,14 @@
import org.sentrysoftware.metricshub.engine.common.helpers.KnownMonitorType;
import org.sentrysoftware.metricshub.engine.common.helpers.MetricsHubConstants;
import org.sentrysoftware.metricshub.engine.configuration.HostConfiguration;
import org.sentrysoftware.metricshub.engine.configuration.TestConfiguration;
import org.sentrysoftware.metricshub.engine.connector.model.ConnectorStore;
import org.sentrysoftware.metricshub.engine.connector.model.identity.criterion.SnmpGetCriterion;
import org.sentrysoftware.metricshub.engine.connector.model.identity.criterion.SnmpGetNextCriterion;
import org.sentrysoftware.metricshub.engine.connector.model.monitor.task.source.SnmpGetSource;
import org.sentrysoftware.metricshub.engine.connector.model.monitor.task.source.SnmpTableSource;
import org.sentrysoftware.metricshub.engine.extension.ExtensionManager;
import org.sentrysoftware.metricshub.engine.extension.IProtocolExtension;
import org.sentrysoftware.metricshub.engine.extension.TestConfiguration;
import org.sentrysoftware.metricshub.engine.strategy.IStrategy;
import org.sentrysoftware.metricshub.engine.strategy.detection.CriterionTestResult;
import org.sentrysoftware.metricshub.engine.strategy.source.SourceTable;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,10 @@
import org.sentrysoftware.metricshub.engine.client.ClientsExecutor;
import org.sentrysoftware.metricshub.engine.common.helpers.MetricsHubConstants;
import org.sentrysoftware.metricshub.engine.configuration.HostConfiguration;
import org.sentrysoftware.metricshub.engine.configuration.TestConfiguration;
import org.sentrysoftware.metricshub.engine.connector.model.Connector;
import org.sentrysoftware.metricshub.engine.connector.model.ConnectorStore;
import org.sentrysoftware.metricshub.engine.extension.ExtensionManager;
import org.sentrysoftware.metricshub.engine.extension.TestConfiguration;
import org.sentrysoftware.metricshub.engine.telemetry.MetricFactory;
import org.sentrysoftware.metricshub.engine.telemetry.Monitor;
import org.sentrysoftware.metricshub.engine.telemetry.MonitorFactory;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,12 +43,12 @@
import org.sentrysoftware.metricshub.engine.configuration.HostConfiguration;
import org.sentrysoftware.metricshub.engine.configuration.IpmiConfiguration;
import org.sentrysoftware.metricshub.engine.configuration.SshConfiguration;
import org.sentrysoftware.metricshub.engine.configuration.TestConfiguration;
import org.sentrysoftware.metricshub.engine.configuration.WbemConfiguration;
import org.sentrysoftware.metricshub.engine.configuration.WinRmConfiguration;
import org.sentrysoftware.metricshub.engine.configuration.WmiConfiguration;
import org.sentrysoftware.metricshub.engine.extension.ExtensionManager;
import org.sentrysoftware.metricshub.engine.extension.IProtocolExtension;
import org.sentrysoftware.metricshub.engine.extension.TestConfiguration;
import org.sentrysoftware.metricshub.engine.strategy.utils.OsCommandHelper;
import org.sentrysoftware.metricshub.engine.telemetry.Monitor;
import org.sentrysoftware.metricshub.engine.telemetry.TelemetryManager;
Expand Down Expand Up @@ -83,11 +83,11 @@ void setup() {
}

/**
* Creates and returns a TelemetryManager instance with an SNMP configuration.
* Creates and returns a TelemetryManager instance with a Test configuration.
*
* @return A TelemetryManager instance configured with an SNMP configuration.
* @return A TelemetryManager instance configured with a Test configuration.
*/
private TelemetryManager createTelemetryManagerWithSnmpConfig() {
private TelemetryManager createTelemetryManagerWithTestConfig() {
// Create a telemetry manager
return TelemetryManager
.builder()
Expand Down Expand Up @@ -256,8 +256,8 @@ private TelemetryManager createTelemetryManagerWithoutConfig() {

@Test
void testCheckHealth() throws Exception {
// Create a telemetry manager using an SNMP HostConfiguration.
final TelemetryManager telemetryManager = createTelemetryManagerWithSnmpConfig();
// Create a telemetry manager using a test configuration.
final TelemetryManager telemetryManager = createTelemetryManagerWithTestConfig();

// Create the Extension Manager
final ExtensionManager extensionManager = ExtensionManager
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@
import org.sentrysoftware.metricshub.engine.common.helpers.KnownMonitorType;
import org.sentrysoftware.metricshub.engine.configuration.HostConfiguration;
import org.sentrysoftware.metricshub.engine.configuration.IConfiguration;
import org.sentrysoftware.metricshub.engine.configuration.TestConfiguration;
import org.sentrysoftware.metricshub.engine.connector.model.Connector;
import org.sentrysoftware.metricshub.engine.connector.model.ConnectorStore;
import org.sentrysoftware.metricshub.engine.connector.model.common.DeviceKind;
Expand All @@ -37,6 +36,7 @@
import org.sentrysoftware.metricshub.engine.connector.model.monitor.task.source.HttpSource;
import org.sentrysoftware.metricshub.engine.connector.model.monitor.task.source.SnmpSource;
import org.sentrysoftware.metricshub.engine.extension.ExtensionManager;
import org.sentrysoftware.metricshub.engine.extension.TestConfiguration;
import org.sentrysoftware.metricshub.engine.strategy.detection.ConnectorStagingManager.StagedConnectorIdentifiers;
import org.sentrysoftware.metricshub.engine.telemetry.HostProperties;
import org.sentrysoftware.metricshub.engine.telemetry.Monitor;
Expand Down
Loading

0 comments on commit 653a3cd

Please sign in to comment.