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
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)
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§

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_logs
Encode and compress logs into batches (synchronous)
geneva_encode_and_compress_spans
Encode and compress spans into batches (synchronous)
geneva_upload_batch_sync
Uploads a specific batch synchronously

Unions§

GenevaAuthConfig