# java: Post messages over HTTP using Java

Version 3.7 of AxoSyslog can directly post log messages to web services using the HTTP protocol. Error and status messages received from the HTTP server are forwarded to the internal logs of AxoSyslog. The current implementation has the following limitations:

  * Only HTTP connections are supported, HTTPS is not.

  * This destination requires Java. For an `http` destination that does not use Java, see [http: Post messages over HTTP without Java](../../docs/axosyslog-core/chapter-destinations/configuring-destinations-http-nonjava/index.md).




## Declaration:
```
       java(
            class-path("/syslog-ng/install_dir/lib/syslog-ng/java-modules/*.jar")
            class-name("org.syslog_ng.http.HTTPDestination")
        
            option("url", "http://<server-address>:<port-number>")
        
        );
    
```

## Example: Sending log data to a web service

The following example defines an `http` destination.
```
 
       destination d_http {
            java(
                class-path("/syslog-ng/install_dir/lib/syslog-ng/java-modules/*.jar")
                class-name("org.syslog_ng.http.HTTPDestination")
        
                option("url", "http://192.168.1.1:80")
            );
        };
        
        log
            { source(s_file); destination(d_http); flags(flow-control); };
    
```

Note If you delete all Java destinations from your configuration and reload `syslog-ng`, the JVM is not used anymore, but it is still running. If you want to stop JVM, stop `syslog-ng` and then start `syslog-ng` again. 

* * *

[HTTP destination options](../../docs/axosyslog-core/chapter-destinations/configuring-destinations-http/reference-destination-http/index.md)

Last modified October 29, 2023: [Create manpages (#34) (9534f54)](<https://github.com/axoflow/axosyslog-core-docs/commit/9534f54ee9e0cc76cb336c0c01f2e1973760d0e0>)