# sun-streams: Collect messages on Sun Solaris

Solaris uses its `STREAMS` framework to send messages to the `syslogd` process. Solaris 2.5.1 and above uses an IPC called _door_ in addition to `STREAMS`, to confirm the delivery of a message. The AxoSyslog application supports the IPC mechanism via the `door()` option (see below).

Note The `sun-streams()` driver must be enabled when the `syslog-ng` application is compiled (see `./configure --help`). 

The `sun-streams()` driver has a single required argument specifying the `STREAMS` device to open, and the `door()` option. For the list of available optional parameters, see [sun-streams() source options](../../docs/axosyslog-core/chapter-sources/source-sunstreams/reference-source-sunstreams/index.md).

Note Starting with version 3.7, the AxoSyslog`system()` driver automatically extracts the msgid from the message (if available), and stores it in the `.solaris.msgid` macro. To extract the msgid from the message without using the `system()`driver, use the `extract-solaris-msgid()` parser. You can find the exact source of this parser in the [AxoSyslog GitHub repository](<https://github.com/axoflow/axosyslog/blob/master/scl/solaris/plugin.conf>). 

## Declaration:
```
       sun-streams(<name_of_the_streams_device> door(<filename_of_the_door>));
    
```

## Example: Using the sun-streams() driver
```
       source s_stream {
            sun-streams("/dev/log" door("/etc/.syslog_door"));
        };
    
```

* * *

[sun-streams() source options](../../docs/axosyslog-core/chapter-sources/source-sunstreams/reference-source-sunstreams/index.md)

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