diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml
index e873186..3ed29c2 100644
--- a/.github/workflows/release.yaml
+++ b/.github/workflows/release.yaml
@@ -21,7 +21,7 @@ jobs:
- name: Setup Maven Central
uses: actions/setup-java@v2
with:
- java-version: 8.0.292+10
+ java-version: 17
distribution: 'adopt'
server-id: ossrh
@@ -42,7 +42,7 @@ jobs:
- name: Setup GitHub Packages
uses: actions/setup-java@v2
with:
- java-version: 8.0.292+10
+ java-version: 17
distribution: 'adopt'
- name: Publish to GitHub Packages
diff --git a/README.adoc b/README.adoc
index 81a8776..15607dc 100644
--- a/README.adoc
+++ b/README.adoc
@@ -47,7 +47,7 @@ Example Iterator will send only static records like as
[source,sh]
----
-<14>1 2024-02-29T13:58:05.605Z localhost rlp_09 - - - Example rlo_09 event
+<14>1 2024-02-29T13:58:05.605Z localhost rlp_09 - - - Example rlo_09 record
----
== Configurations
diff --git a/pom.xml b/pom.xml
index 961400d..53b00d4 100644
--- a/pom.xml
+++ b/pom.xml
@@ -9,13 +9,15 @@
https://teragrep.com
UTF-8
- 8
- 8
- 8
+ 17
+ 17
+ 17
0.0.1
-SNAPSHOT
- 4.0.1
+ 0.0.2-SNAPSHOT
+ 2.23.1
+ 2.0.13
@@ -40,8 +42,8 @@
com.teragrep
- rlp_01
- ${rlp_01.version}
+ rlp_03
+ ${rlp_03.version}
@@ -49,6 +51,27 @@
rlo_14
1.0.1
+
+
+ org.apache.logging.log4j
+ log4j-api
+ ${log4j2.version}
+
+
+ org.apache.logging.log4j
+ log4j-core
+ ${log4j2.version}
+
+
+ org.apache.logging.log4j
+ log4j-slf4j2-impl
+ ${log4j2.version}
+
+
+ org.slf4j
+ slf4j-api
+ ${slf4j.version}
+
${artifactId}-${revision}${changelist}${sha1}
@@ -120,7 +143,7 @@
jar
- 8
+ 17
diff --git a/src/main/java/com/teragrep/rlp_09/ExampleRelpFlooderIterator.java b/src/main/java/com/teragrep/rlp_09/ExampleRelpFlooderIterator.java
index 203fbba..0d0fa55 100644
--- a/src/main/java/com/teragrep/rlp_09/ExampleRelpFlooderIterator.java
+++ b/src/main/java/com/teragrep/rlp_09/ExampleRelpFlooderIterator.java
@@ -50,28 +50,26 @@
import com.teragrep.rlo_14.Severity;
import com.teragrep.rlo_14.SyslogMessage;
-import java.nio.charset.StandardCharsets;
import java.time.Instant;
import java.util.Iterator;
-public class ExampleRelpFlooderIterator implements Iterator {
- private final byte[] record =
+public class ExampleRelpFlooderIterator implements Iterator {
+ private final String record =
new SyslogMessage()
.withTimestamp(Instant.now().toEpochMilli())
.withAppName("rlp_09")
.withHostname("localhost")
.withFacility(Facility.USER)
.withSeverity(Severity.INFORMATIONAL)
- .withMsg("Example rlo_09 event")
- .toRfc5424SyslogMessage()
- .getBytes(StandardCharsets.UTF_8);
+ .withMsg("Example rlo_09 record")
+ .toRfc5424SyslogMessage();
@Override
public boolean hasNext() {
return true;
}
@Override
- public byte[] next() {
+ public String next() {
return record;
}
}
diff --git a/src/main/java/com/teragrep/rlp_09/ExampleRelpFlooderIteratorFactory.java b/src/main/java/com/teragrep/rlp_09/ExampleRelpFlooderIteratorFactory.java
index 3624a78..97c9952 100644
--- a/src/main/java/com/teragrep/rlp_09/ExampleRelpFlooderIteratorFactory.java
+++ b/src/main/java/com/teragrep/rlp_09/ExampleRelpFlooderIteratorFactory.java
@@ -50,7 +50,7 @@
public class ExampleRelpFlooderIteratorFactory implements RelpFlooderIteratorFactory {
@Override
- public Iterator get(int threadId) {
+ public Iterator get(int threadId) {
return new ExampleRelpFlooderIterator();
}
}
diff --git a/src/main/java/com/teragrep/rlp_09/RelpFlooder.java b/src/main/java/com/teragrep/rlp_09/RelpFlooder.java
index de436f8..5818a53 100644
--- a/src/main/java/com/teragrep/rlp_09/RelpFlooder.java
+++ b/src/main/java/com/teragrep/rlp_09/RelpFlooder.java
@@ -46,10 +46,19 @@
package com.teragrep.rlp_09;
+import com.teragrep.rlp_03.channel.socket.PlainFactory;
+import com.teragrep.rlp_03.channel.context.ConnectContextFactory;
+import com.teragrep.rlp_03.channel.socket.SocketFactory;
+import com.teragrep.rlp_03.client.ClientFactory;
+import com.teragrep.rlp_03.eventloop.EventLoop;
+import com.teragrep.rlp_03.eventloop.EventLoopFactory;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
-import java.util.concurrent.ExecutionException;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;
@@ -57,33 +66,33 @@
public class RelpFlooder {
private final ExecutorService executorService;
List relpFlooderTaskList = new ArrayList<>();
-
- public HashMap getRecordsSentPerThread() {
- HashMap recordsSent = new HashMap<>();
+ private static final Logger LOGGER = LoggerFactory.getLogger(RelpFlooder.class);
+ public HashMap getRecordsSentPerThread() {
+ HashMap recordsSent = new HashMap<>();
for(RelpFlooderTask relpFlooderTask : relpFlooderTaskList){
recordsSent.put(relpFlooderTask.getThreadId(), relpFlooderTask.getRecordsSent());
}
return recordsSent;
}
- public int getTotalRecordsSent() {
- int totalrecordsSent = 0;
+ public long getTotalRecordsSent() {
+ long totalrecordsSent = 0;
for(RelpFlooderTask relpFlooderTask : relpFlooderTaskList){
totalrecordsSent += relpFlooderTask.getRecordsSent();
}
return totalrecordsSent;
}
- public HashMap getTotalBytesSentPerThread() {
- HashMap bytesSent = new HashMap<>();
+ public HashMap getTotalBytesSentPerThread() {
+ HashMap bytesSent = new HashMap<>();
for(RelpFlooderTask relpFlooderTask : relpFlooderTaskList){
bytesSent.put(relpFlooderTask.getThreadId(), relpFlooderTask.getBytesSent());
}
return bytesSent;
}
- public int getTotalBytesSent() {
- int totalBytesSent = 0;
+ public long getTotalBytesSent() {
+ long totalBytesSent = 0;
for(RelpFlooderTask relpFlooderTask : relpFlooderTaskList){
totalBytesSent += relpFlooderTask.getBytesSent();
}
@@ -99,27 +108,67 @@ public RelpFlooder() {
public RelpFlooder(RelpFlooderConfig relpFlooderConfig){
this(relpFlooderConfig, new ExampleRelpFlooderIteratorFactory());
}
+
public RelpFlooder(RelpFlooderConfig relpFlooderConfig, RelpFlooderIteratorFactory iteratorFactory) {
this.relpFlooderConfig = relpFlooderConfig;
this.iteratorFactory = iteratorFactory;
- this.executorService = Executors.newFixedThreadPool(relpFlooderConfig.getThreads());
+ this.executorService = Executors.newFixedThreadPool(relpFlooderConfig.threads);
}
- public void start() {
- for (int i=0; i", i);
+ RelpFlooderTask relpFlooderTask = new RelpFlooderTask(i, relpFlooderConfig, iteratorFactory.get(i), clientFactory);
relpFlooderTaskList.add(relpFlooderTask);
}
+ if(LOGGER.isDebugEnabled()) {
+ LOGGER.debug("Got <{}> tasks in RelpFlooderTaskList: <{}>", relpFlooderTaskList.size(), relpFlooderTaskList);
+ }
try {
+ LOGGER.trace("Invoking all RelpFlooderTaskList tasks");
List> futures = executorService.invokeAll(relpFlooderTaskList);
for(Future