Skip to content

feat: identify the device with an origin SD-ELEMENT - #11

Merged
DavidCozens merged 1 commit into
mainfrom
stage-11-origin
Aug 16, 2026
Merged

feat: identify the device with an origin SD-ELEMENT#11
DavidCozens merged 1 commit into
mainfrom
stage-11-origin

Conversation

@DavidCozens

Copy link
Copy Markdown
Contributor

Name the device in the record with SolidSyslogOriginSd — the software, its version, and the
enterprise number.

#define SYSLOG_SOFTWARE   "solid-syslog-example"
#define SYSLOG_SW_VERSION "0.1.0"

struct SolidSyslogOriginSdConfig originConfig = {
    .Software     = SYSLOG_SOFTWARE,
    .SwVersion    = SYSLOG_SW_VERSION,
    .EnterpriseId = SYSLOG_ENTERPRISE_ID,
};
sd[2] = SolidSyslogOriginSd_Create(&originConfig);
... [origin software="solid-syslog-example" swVersion="0.1.0" enterpriseId="32473"] device started

This lands after the store rather than before it. While records went straight out, the answer to
"who sent this" was implied by the connection they arrived on. Once records can replay hours later
that is no longer so, and the record has to carry it.

The ip PARAM is left out here. The address the collector sees is still the address that reached
it; the next stage takes that assumption away.

SYSLOG_ENTERPRISE_ID is defined in its own header rather than beside the element that carries it,
because the number identifies the vendor rather than the logger — anything else this product puts
its own name on wants the same one.

Enterprise number 32473 is reserved for documentation and testing by RFC 5612. A shipping product
uses its own, registered with IANA.

When you need it. If records will be correlated across devices, replayed after a delay, or
relayed through anything.

@DavidCozens

Copy link
Copy Markdown
Contributor Author

@coderabbitai pause

@coderabbitai

coderabbitai Bot commented Aug 16, 2026

Copy link
Copy Markdown

Note

Reviews paused

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review

Comment @coderabbitai help to get the list of available commands.

@coderabbitai

coderabbitai Bot commented Aug 16, 2026

Copy link
Copy Markdown
✅ Action performed

Reviews paused.

SolidSyslogOriginSd carrying software, swVersion and enterpriseId.

  Flash      +11,988 B  (+392 on the previous stage)
  RAM         +9,168 B     (+44)
  Log stack     +672 B  (unchanged)
  Service       +960 B  (unchanged)

It lands after the store rather than before it. While a record went straight out,
the answer to "who sent this" was implied by the connection it arrived on; once
records can replay hours later that is no longer so, and the record has to carry
it.

The ip PARAM is left out. The address the collector sees is still the address
that reached it, and the next stage is what takes that assumption away.

SYSLOG_ENTERPRISE_ID is defined in app/syslog/SyslogEnterprise.h rather than
beside the element that carries it, because the number identifies the vendor
rather than the logger — anything else this product puts its own name on wants the
same one, and one definition cannot drift from itself. 32473 is reserved for
documentation and testing by RFC 5612; a shipping product uses its own,
registered with IANA.

Three elements put the record at 245 octets.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@DavidCozens
DavidCozens changed the base branch from stage-10-file-store to main August 16, 2026 21:50
@DavidCozens
DavidCozens merged commit 1719c1c into main Aug 16, 2026
1 check was pending
@DavidCozens
DavidCozens deleted the stage-11-origin branch August 16, 2026 21:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant