Skip to main content

Crate geneva_uploader_ffi

Crate geneva_uploader_ffi 

Source
Expand description

C-compatible FFI bindings for geneva-uploader

Structs§

EncodedBatchesHandle
Opaque handle holding encoded batches
FfiAccountGroupMapEntry
Maps one final Geneva event name to one logical GCS account group.
FfiAccountGroupMapping
FfiLogsEventNameMapEntry
FFI-safe logs event-name mapping entry.
FfiLogsEventNameMapping
FFI-safe logs event-name mapping config.
FfiOboEventConfig
FFI-safe OBO event configuration
FfiOboEventMap
FFI-safe OBO event map (array of configs)
FfiSpansEventNameMapEntry
FFI-safe spans event-name mapping entry.
FfiSpansEventNameMapping
FFI-safe spans event-name mapping config.
GenevaAttrValueC
Tagged attribute value for GenevaLogRecordC.
GenevaCertAuthConfig
Configuration for certificate auth (valid only when auth_method == 1)
GenevaClientHandle
Opaque handle for GenevaClient
GenevaConfig
Configuration structure for Geneva client (C-compatible, tagged union)
GenevaLogRecordC
A single log record in C-compatible layout for zero-copy ingestion.
GenevaUserManagedIdentityAuthConfig
Configuration for User-assigned Managed Identity by client ID (valid only when auth_method == 3)
GenevaUserManagedIdentityByObjectIdAuthConfig
Configuration for User-assigned Managed Identity by object ID (valid only when auth_method == 4)
GenevaUserManagedIdentityByResourceIdAuthConfig
Configuration for User-assigned Managed Identity by resource ID (valid only when auth_method == 5)
GenevaWorkloadIdentityAuthConfig
Configuration for Workload Identity auth (valid only when auth_method == 2)

Enums§

GenevaAttrType
Attribute value type tag for GenevaAttrValueC.
GenevaError
Error codes returned by FFI functions TODO: Use cbindgen to auto-generate geneva_errors.h from this enum to eliminate duplication

Functions§

geneva_batches_free
Frees encoded batches handle
geneva_batches_len
Returns the number of batches in the encoded batches handle
geneva_client_free
Safety
geneva_client_new
Creates a new Geneva client with explicit result semantics (no TLS needed).
geneva_encode_and_compress_log_records
Encode a flat C array of log records into LZ4-compressed Geneva batches.
geneva_encode_and_compress_spans
Encode and compress spans into batches (synchronous)
geneva_upload_batch_sync
Uploads a specific batch synchronously

Type Aliases§

FfiLogsRoutingKeyKind
FFI-safe logs event-name mapping routing kinds.
FfiSpansRoutingKeyKind
FFI-safe spans routing kinds.

Unions§

GenevaAttrData
Attribute value data union.
GenevaAuthConfig