Re: Staging website (was: [VOTE] Release Apache Log4j 2.21.0)

2023-10-17 Thread Stephen Webb
Hi Piotr,

The Log4cxx staging website URL
https://logging.staged.apache.org/log4cxx/latest_stable/usage-overview.html
now reports a 404.

The .asf.yaml contains:

staging:
  profile: ~
  whoami: asf-staging
  subdir: content/log4cxx


Do you have a suggestion as to where I can find it now?

Thanks
Stephen Webb

On Sat, Oct 14, 2023 at 1:35 AM Piotr P. Karwasz 
wrote:

> Hi Christian,
>
> On Fri, 13 Oct 2023 at 13:46, Christian Grobmeier 
> wrote:
> > Why is content not causing this issue?
> > For me both is possible, just trying to understand the best way.
>
> From what I understand, if a branch (in any repo) has a configuration:
>
> staging:
>   whoami: name_of_the_branch
>   profile: 
>   subdir: 
>
> INFRA copies the content of the branch into  of a directory
> served by Apache HTTPD. Our current merged site should look like:
>
> content/log4jphp/...Log4j PHP stuff...
> output/...Jekyll stuff...
>
> When this is done a script determines which folder is the document
> root for the server. Since we have both `content` and `output` the
> script probably fails (I don't see neither Log4PHP nor your Jekyll
> stuff).
>
> Piotr
>


Re: Log4j JMX GUI (was: [ANNOUNCE] Apache Log4j 2.21.0 released)

2023-10-17 Thread Gary Gregory
I am OK with either version but the m.m.m one seems better to me.

Gary

On Tue, Oct 17, 2023, 3:54 PM Volkan Yazıcı  wrote:

> Please don't! The entire versioning scheme in the IT universe is
> already sophisticated enough. Let's stick to the good old school
> `major.minor.patch` convention that every person and tool understands.
>
> I support Piotr's `2.21.1` proposal, since this is a "patch" for those
> who download a GUI tool from Maven Central.
>
> On Tue, Oct 17, 2023 at 4:18 PM Ralph Goers 
> wrote:
> >
> > Well, you cannot reuse the tag since you have to modify the pom.xml. You
> could go with 2.21.0.1.
> >
> > Ralph
> >
> > > On Oct 17, 2023, at 5:24 AM, Piotr P. Karwasz 
> wrote:
> > >
> > > Hi Ralph,
> > >
> > > On Tue, 17 Oct 2023 at 13:58, Apache 
> wrote:
> > >>
> > >> Yes
> > >>
> > >> Ralph
> > >
> > > Same release number or 2.21.1? The `rel/2.21.0` tag on the repository
> > > was already used by the faulty release.
> > >
> > > Piotr
> > >
> > >>
> > >>> On Oct 17, 2023, at 4:31 AM, Piotr P. Karwasz <
> piotr.karw...@gmail.com> wrote:
> > >>>
> > >>> Hi all,
> > >>>
> >  On Tue, 17 Oct 2023 at 13:13, Piotr P. Karwasz <
> piotr.karw...@gmail.com> wrote:
> > > On Tue, 17 Oct 2023 at 12:37, Gary Gregory 
> wrote:
> > >
> > > I got hit at work with the loss of log4j-jmx-gui. Is log4j-jmx-gui
> 2.20.0
> > > compatible with log4j 2.21.0?
> > 
> >  Yes, it is, but there should be a `log4j-jmx-gui` version 2.21.0
> out there:
> > 
> > 
> https://github.com/apache/logging-log4j-jmx-gui/releases/tag/rel%2F2.21.0
> > 
> >  I am not sure why I can't find it on Maven Central.
> > >>>
> > >>> Due to a typo in the `pom.xml`, `log4j-jmx-gui` was published in the
> > >>> `org.apache.logging` group.
> > >>> Should we release it again with the correct Maven group?
> > >>>
> > >>> Piotr
> > >>
> >
>


Re: Log4j JMX GUI (was: [ANNOUNCE] Apache Log4j 2.21.0 released)

2023-10-17 Thread Volkan Yazıcı
Please don't! The entire versioning scheme in the IT universe is
already sophisticated enough. Let's stick to the good old school
`major.minor.patch` convention that every person and tool understands.

I support Piotr's `2.21.1` proposal, since this is a "patch" for those
who download a GUI tool from Maven Central.

On Tue, Oct 17, 2023 at 4:18 PM Ralph Goers  wrote:
>
> Well, you cannot reuse the tag since you have to modify the pom.xml. You 
> could go with 2.21.0.1.
>
> Ralph
>
> > On Oct 17, 2023, at 5:24 AM, Piotr P. Karwasz  
> > wrote:
> >
> > Hi Ralph,
> >
> > On Tue, 17 Oct 2023 at 13:58, Apache  wrote:
> >>
> >> Yes
> >>
> >> Ralph
> >
> > Same release number or 2.21.1? The `rel/2.21.0` tag on the repository
> > was already used by the faulty release.
> >
> > Piotr
> >
> >>
> >>> On Oct 17, 2023, at 4:31 AM, Piotr P. Karwasz  
> >>> wrote:
> >>>
> >>> Hi all,
> >>>
>  On Tue, 17 Oct 2023 at 13:13, Piotr P. Karwasz  
>  wrote:
> > On Tue, 17 Oct 2023 at 12:37, Gary Gregory  
> > wrote:
> >
> > I got hit at work with the loss of log4j-jmx-gui. Is log4j-jmx-gui 
> > 2.20.0
> > compatible with log4j 2.21.0?
> 
>  Yes, it is, but there should be a `log4j-jmx-gui` version 2.21.0 out 
>  there:
> 
>  https://github.com/apache/logging-log4j-jmx-gui/releases/tag/rel%2F2.21.0
> 
>  I am not sure why I can't find it on Maven Central.
> >>>
> >>> Due to a typo in the `pom.xml`, `log4j-jmx-gui` was published in the
> >>> `org.apache.logging` group.
> >>> Should we release it again with the correct Maven group?
> >>>
> >>> Piotr
> >>
>


Re: Log4j JMX GUI (was: [ANNOUNCE] Apache Log4j 2.21.0 released)

2023-10-17 Thread Ralph Goers
Well, you cannot reuse the tag since you have to modify the pom.xml. You could 
go with 2.21.0.1.

Ralph

> On Oct 17, 2023, at 5:24 AM, Piotr P. Karwasz  wrote:
> 
> Hi Ralph,
> 
> On Tue, 17 Oct 2023 at 13:58, Apache  wrote:
>> 
>> Yes
>> 
>> Ralph
> 
> Same release number or 2.21.1? The `rel/2.21.0` tag on the repository
> was already used by the faulty release.
> 
> Piotr
> 
>> 
>>> On Oct 17, 2023, at 4:31 AM, Piotr P. Karwasz  
>>> wrote:
>>> 
>>> Hi all,
>>> 
 On Tue, 17 Oct 2023 at 13:13, Piotr P. Karwasz  
 wrote:
> On Tue, 17 Oct 2023 at 12:37, Gary Gregory  wrote:
> 
> I got hit at work with the loss of log4j-jmx-gui. Is log4j-jmx-gui 2.20.0
> compatible with log4j 2.21.0?
 
 Yes, it is, but there should be a `log4j-jmx-gui` version 2.21.0 out there:
 
 https://github.com/apache/logging-log4j-jmx-gui/releases/tag/rel%2F2.21.0
 
 I am not sure why I can't find it on Maven Central.
>>> 
>>> Due to a typo in the `pom.xml`, `log4j-jmx-gui` was published in the
>>> `org.apache.logging` group.
>>> Should we release it again with the correct Maven group?
>>> 
>>> Piotr
>> 



Re: Log4j JMX GUI (was: [ANNOUNCE] Apache Log4j 2.21.0 released)

2023-10-17 Thread Piotr P. Karwasz
Hi Ralph,

On Tue, 17 Oct 2023 at 13:58, Apache  wrote:
>
> Yes
>
> Ralph

Same release number or 2.21.1? The `rel/2.21.0` tag on the repository
was already used by the faulty release.

Piotr

>
> > On Oct 17, 2023, at 4:31 AM, Piotr P. Karwasz  
> > wrote:
> >
> > Hi all,
> >
> >> On Tue, 17 Oct 2023 at 13:13, Piotr P. Karwasz  
> >> wrote:
> >>> On Tue, 17 Oct 2023 at 12:37, Gary Gregory  wrote:
> >>>
> >>> I got hit at work with the loss of log4j-jmx-gui. Is log4j-jmx-gui 2.20.0
> >>> compatible with log4j 2.21.0?
> >>
> >> Yes, it is, but there should be a `log4j-jmx-gui` version 2.21.0 out there:
> >>
> >> https://github.com/apache/logging-log4j-jmx-gui/releases/tag/rel%2F2.21.0
> >>
> >> I am not sure why I can't find it on Maven Central.
> >
> > Due to a typo in the `pom.xml`, `log4j-jmx-gui` was published in the
> > `org.apache.logging` group.
> > Should we release it again with the correct Maven group?
> >
> > Piotr
>


Re: Log4j JMX GUI (was: [ANNOUNCE] Apache Log4j 2.21.0 released)

2023-10-17 Thread Apache
Yes

Ralph

> On Oct 17, 2023, at 4:31 AM, Piotr P. Karwasz  wrote:
> 
> Hi all,
> 
>> On Tue, 17 Oct 2023 at 13:13, Piotr P. Karwasz  
>> wrote:
>>> On Tue, 17 Oct 2023 at 12:37, Gary Gregory  wrote:
>>> 
>>> I got hit at work with the loss of log4j-jmx-gui. Is log4j-jmx-gui 2.20.0
>>> compatible with log4j 2.21.0?
>> 
>> Yes, it is, but there should be a `log4j-jmx-gui` version 2.21.0 out there:
>> 
>> https://github.com/apache/logging-log4j-jmx-gui/releases/tag/rel%2F2.21.0
>> 
>> I am not sure why I can't find it on Maven Central.
> 
> Due to a typo in the `pom.xml`, `log4j-jmx-gui` was published in the
> `org.apache.logging` group.
> Should we release it again with the correct Maven group?
> 
> Piotr



Re: Log4j JMX GUI (was: [ANNOUNCE] Apache Log4j 2.21.0 released)

2023-10-17 Thread Piotr P. Karwasz
Hi all,

On Tue, 17 Oct 2023 at 13:13, Piotr P. Karwasz  wrote:
> On Tue, 17 Oct 2023 at 12:37, Gary Gregory  wrote:
> >
> > I got hit at work with the loss of log4j-jmx-gui. Is log4j-jmx-gui 2.20.0
> > compatible with log4j 2.21.0?
>
> Yes, it is, but there should be a `log4j-jmx-gui` version 2.21.0 out there:
>
> https://github.com/apache/logging-log4j-jmx-gui/releases/tag/rel%2F2.21.0
>
> I am not sure why I can't find it on Maven Central.

Due to a typo in the `pom.xml`, `log4j-jmx-gui` was published in the
`org.apache.logging` group.
Should we release it again with the correct Maven group?

Piotr


Log4j JMX GUI (was: [ANNOUNCE] Apache Log4j 2.21.0 released)

2023-10-17 Thread Piotr P. Karwasz
Hi Gary,

On Tue, 17 Oct 2023 at 12:37, Gary Gregory  wrote:
>
> I got hit at work with the loss of log4j-jmx-gui. Is log4j-jmx-gui 2.20.0
> compatible with log4j 2.21.0?

Yes, it is, but there should be a `log4j-jmx-gui` version 2.21.0 out there:

https://github.com/apache/logging-log4j-jmx-gui/releases/tag/rel%2F2.21.0

I am not sure why I can't find it on Maven Central.

Piotr


Re: [ANNOUNCE] Apache Log4j 2.21.0 released

2023-10-17 Thread Gary Gregory
I got hit at work with the loss of log4j-jmx-gui. Is log4j-jmx-gui 2.20.0
compatible with log4j 2.21.0?

Gary


On Mon, Oct 16, 2023, 5:59 PM Gary Gregory  wrote:

> Thank you for RM'ing Christian!
>
> Gary
>
>
>
> On Mon, Oct 16, 2023, 4:28 PM Christian Grobmeier 
> wrote:
>
>> Apache Log4j team is pleased to announce the 2.21.0
>> release. Apache Log4j is a versatile, industrial-strength
>> Java logging framework composed of an API, its implementation,
>> and components to assist the deployment for various use cases.
>> For further information (support, download, etc.) see the project
>> website[1].
>>
>> [1] https://logging.apache.org/log4j
>>
>> == Release Notes
>>
>> This release primarily focuses on enhancements to our OSGi and JPMS
>> support and contains several bug fixes.
>> It will be the first release built and signed by the CI using the
>> https://keyserver.ubuntu.com/pks/lookup?search=077E8893A6DCC33DD4A4D5B256E73BA9A0B592D0&op=index[ASF
>> Logging Services Release Manager GPG key], which is shared in
>> https://www.apache.org/dist/logging/KEYS[KEYS].
>>
>> The Log4j 2.21.0 API, as well as the other artifacts, maintains binary
>> compatibility with the previous release.
>>
>> Apache Log4j 2.21.0 requires Java 8 to run.
>> The build requires JDK 11 and generates reproducible binaries.
>>
>> For complete information on Apache Log4j 2, including instructions on how
>> to submit bug reports, patches, get support, or suggestions for
>> improvement, see http://logging.apache.org/log4j/2.x/[the Apache Log4j 2
>> website].
>>
>> === OSGi changes
>>
>> All the published artifacts are OSGi bundles or fragments.
>>
>> This release introduces a change in the bundle symbolic names to allow
>> them to function as JPMS module name: all hyphens `-` present in the bundle
>> names of previous releases were replaced by dots `.`.
>>
>> === JPMS changes
>>
>> All the published artifacts have been migrated from automatic modules to
>> named JPMS modules.
>> All packages marked as private in the Javadoc are not exported.
>>
>> The module name of four bridges (`log4j-slf4j-impl`, `log4j-slf4j2-impl`,
>> `log4j-to-jul` and `log4j-to-slf4j`) have been changed to adhere to the
>> same convention as the OSGi bundle names.
>>
>> === Added
>>
>> * Added marker parent support to `JsonTemplateLayout` (#1381)
>> * Added https://facebook.github.io/zstd/[ZStandard compression] support
>> (#1508, #1514)
>> * Added a warning for incorrect syntax of highlighting styles (#1545,
>> #1637)
>>
>> === Changed
>>
>> * Open `FileExtension` methods to allow their usage in custom
>> ``RolloverStrategy``s (#1365, #1683)
>> * Bumped the minimum Java version required for the build to JDK 11.
>> Runtime requirements remain unchanged. (#1369)
>> * Set the default `minLevel` and `maxLevel` of `LevelRangeFilter` to
>> `OFF` and `ALL`, respectively (#1503)
>> * Removed additional `isFiltered` checks in `AsyncLoggerConfig` (#1550)
>> * Use Java version-specific warnings in `StackLocator` (#1760)
>> * Started logging a status error event instead of an NPE in
>> `OsgiServiceLocator.loadServices(Class, Lookup, boolean)` when a bundle has
>> no valid `BundleContext` for a service type
>> * Implemented a CI-based release process
>> * Update Eclipse Angus Activation to version
>> https://github.com/eclipse-ee4j/angus-activation/releases/tag/2.0.1[2.0.1]
>> (#1591)
>> * Update Eclipse Angus Mail to version
>> https://github.com/eclipse-ee4j/angus-mail/releases/tag/2.0.2[2.0.2]
>> (#1591)
>> * Update `com.datastax.cassandra:cassandra-driver-core` to version 3.11.5
>> (#1591)
>> * Update Apache Cassandra to version
>> https://github.com/apache/cassandra/blob/cassandra-3.11/CHANGES.txt[3.11.16]
>> (#1591)
>> * Update Apache Commons Compress to version
>> https://commons.apache.org/proper/commons-compress/changes-report.html#a1.24.0[1.24.0]
>> (#1591)
>> * Update Apache Commons CSV to version
>> https://commons.apache.org/proper/commons-csv/changes-report.html#a1.10.0[1.10.0]
>> (#1591)
>> * Update Jackson to version
>> https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.15.2[2.15.2]
>> (#1591)
>> * Update Jakarta Activation API to version
>> https://jakarta.ee/specifications/activation/2.1/changelog/[2.1.2]
>> (#1591)
>> * Update Jakarta Mail API to version
>> https://jakarta.ee/specifications/mail/2.1/changelog/[2.1.2] (#1591)
>> * Update JCTools to version
>> https://github.com/JCTools/JCTools/blob/master/RELEASE-NOTES.md[4.0.1]
>> (#1591)
>> * Update Apache Kafka to version
>> https://archive.apache.org/dist/kafka/3.4.0/RELEASE_NOTES.html[3.4.0]
>> (#1591)
>> * Update Kubernetes client to version
>> https://github.com/fabric8io/kubernetes-client/releases?q=5.12.4[5.12.4]
>> (#1591)
>> * Update `org.mongodb:mongodb-driver-core` to version 4.10.2 (#1591)
>> * Update `io.netty:netty-bom` to version 4.1.97 (#1591)
>> * Update Spring Boot to version
>> https://github.com/spring-projects/spring-boot/releases/tag/v2.7.15[2.7.15]
>> (#1591)
>> * Update Sp

Re: JDBC optimizations in 3.x

2023-10-17 Thread Piotr P. Karwasz
Hi Gary,

On Mon, 16 Oct 2023 at 23:45, Gary Gregory  wrote:
> > 4. The appender itself is quite wasteful in the number of connections
> > it uses (one per log message). IIRC JDBC connections are not
> > thread-safe, but can be used from multiple threads if synchronization
> > is provided. `AbstractDatabaseManager#write` provides such a
> > synchronization. With the current connection usage pattern, the
> > "DriverManager" connection source is basically useless.
> > 5. We should consider integrating the JDBC pooling features with PR
> > 1401: https://github.com/apache/logging-log4j2/pull/1401.
>
> Pooling is already supported by the jdbc-dbcp2 module.
> What am I missing?

Regarding 4: I think that the current solution is suboptimal for both
DriverManager and DBCP2 users.

DBCP2 users have a wonderful connection pool, but due to double
synchronization (in `AbstractDatabaseAppender#append` and
`AbstractDatabaseManager#write`), they only use a single connection at
each time.

DriverManager could be good choice for an asynchronous
appender/logger: it just needs to create a connection at startup and
release it when the application is shut down. However, due to the way
connections are used right now each log event or batch of events
incurs in the overhead of creating a DB connection.

Regarding 5: I haven't figured out how `StringBuilder` caching/pooling
relates to `Connection` caching/pooling, but I think it is a direction
worth exploring. I am aware that DBCP2 is more than Commons Pool 2 +
DriverManager, so the JDBC appender itself will probably not profit
from the `Recycler` interface, but other database appenders might. I
have never user NoSQL databases, but I don't believe they all offer
thread-safe clients with an integrated connection pool.

6. Another improvement that we could add to the JDBC appender is
buffering the log events using `PreparedStatement#addBatch` instead of
taking memento's of events and appending them to a list.

Piotr