Go to main content

man pages section 3: Remote Administration Daemon Module Interfaces

Exit Print View

Updated: Wednesday, July 27, 2022
 
 

etraceserver-1 (3rad)

Name

etraceserver-1 - End Tracing server daemon administration

Synopsis

#include <rad/client/1/etraceserver.h>
cc [ flag... ] file... -letraceserver1_client [ library... ]

interface ETraceServer
rc_err_t etraceserver_ETraceServer_startConnect(rc_instance_t *inst,
const char *client_name,
etraceserver_StartResult_t **result,
etraceserver_ETraceError_t **error);

rc_err_t etraceserver_ETraceServer_sessionCreate(rc_instance_t *inst,
const char *session_name,
const char *provider_name,
etraceserver_SessionArg_t **arguments,
int arguments_count,
etraceserver_LLQInfo_t **llq_options,
int llq_options_count,
boolean_t persistent,
etraceserver_ETraceError_t **error);

rc_err_t etraceserver_ETraceServer_sessionDelete(rc_instance_t *inst,
const char *session_name,
const char *user_name,
etraceserver_ETraceError_t **error);

rc_err_t etraceserver_ETraceServer_sessionUndelete(rc_instance_t *inst,
const char *session_name,
const char *user_name,
etraceserver_ETraceError_t **error);

rc_err_t etraceserver_ETraceServer_sessionList(rc_instance_t *inst,
const char *session_name,
boolean_t all_sessions,
etraceserver_SessionInfo_t ***result,
int *result_cnt,
etraceserver_ETraceError_t **error);

Structured Types
struct ETraceError

typedef struct etraceserver_ETraceError etraceserver_ETraceError_t;

struct etraceserver_ETraceError {
int eete_err;
char *eete_errmsg;
};


void etraceserver_ETraceError_free(etraceserver_ETraceError_t *in);

struct StartResult

typedef struct etraceserver_StartResult etraceserver_StartResult_t;

struct etraceserver_StartResult {
boolean_t esr_ssl;
char *esr_port;
char *esr_token;
};


void etraceserver_StartResult_free(etraceserver_StartResult_t *in);

struct LLQInfo

typedef struct etraceserver_LLQInfo etraceserver_LLQInfo_t;

struct etraceserver_LLQInfo {
char *ellqi_span;
unsigned long long ellqi_base;
unsigned long long ellqi_lo_exp;
unsigned long long ellqi_hi_exp;
unsigned long long ellqi_steps;
};


void etraceserver_LLQInfo_free(etraceserver_LLQInfo_t *in);

struct SessionArg

typedef struct etraceserver_SessionArg etraceserver_SessionArg_t;

struct etraceserver_SessionArg {
char *esa_name;
char **esa_values;
int esa_values_count;
};


void etraceserver_SessionArg_free(etraceserver_SessionArg_t *in);

struct SessionInfo

typedef struct etraceserver_SessionInfo etraceserver_SessionInfo_t;

struct etraceserver_SessionInfo {
char *esi_session;
char *esi_provider;
char *esi_uuid;
char *esi_uid;
char *esi_state;
etraceserver_LLQInfo_t **esi_llqs;
int esi_llqs_count;
};


void etraceserver_SessionInfo_free(etraceserver_SessionInfo_t *in);

Description

ETRACESERVER-1(3rad)        RAD Module Definitions        ETRACESERVER-1(3rad)



NAME
       etraceserver - API for End-to-End Tracing server daemon administration

SYNOPSIS
       #include <rad/client/1/etraceserver.h>
       cc [ flag... ] file... -letraceserver1_client [ library... ]

   interface ETraceServer
       rc_err_t etraceserver_ETraceServer_startConnect(rc_instance_t *inst,
                                                       const char *client_name,
                                                       etraceserver_StartResult_t **result,
                                                       etraceserver_ETraceError_t **error);

       rc_err_t etraceserver_ETraceServer_sessionCreate(rc_instance_t *inst,
                                                        const char *session_name,
                                                        const char *provider_name,
                                                        etraceserver_SessionArg_t **arguments,
                                                        int arguments_count,
                                                        etraceserver_LLQInfo_t **llq_options,
                                                        int llq_options_count,
                                                        boolean_t persistent,
                                                        etraceserver_ETraceError_t **error);

       rc_err_t etraceserver_ETraceServer_sessionDelete(rc_instance_t *inst,
                                                        const char *session_name,
                                                        const char *user_name,
                                                        etraceserver_ETraceError_t **error);

       rc_err_t etraceserver_ETraceServer_sessionUndelete(rc_instance_t *inst,
                                                          const char *session_name,
                                                          const char *user_name,
                                                          etraceserver_ETraceError_t **error);

       rc_err_t etraceserver_ETraceServer_sessionList(rc_instance_t *inst,
                                                      const char *session_name,
                                                      boolean_t all_sessions,
                                                      etraceserver_SessionInfo_t ***result,
                                                      int *result_cnt,
                                                      etraceserver_ETraceError_t **error);

   Structured Types
       struct ETraceError

           typedef struct etraceserver_ETraceError etraceserver_ETraceError_t;

           struct etraceserver_ETraceError {
                int eete_err;
                char *eete_errmsg;
           };


           void etraceserver_ETraceError_free(etraceserver_ETraceError_t *in);

       struct StartResult

           typedef struct etraceserver_StartResult etraceserver_StartResult_t;

           struct etraceserver_StartResult {
                boolean_t esr_ssl;
                char *esr_port;
                char *esr_token;
           };


           void etraceserver_StartResult_free(etraceserver_StartResult_t *in);

       struct LLQInfo

           typedef struct etraceserver_LLQInfo etraceserver_LLQInfo_t;

           struct etraceserver_LLQInfo {
                char *ellqi_span;
                unsigned long long ellqi_base;
                unsigned long long ellqi_lo_exp;
                unsigned long long ellqi_hi_exp;
                unsigned long long ellqi_steps;
           };


           void etraceserver_LLQInfo_free(etraceserver_LLQInfo_t *in);

       struct SessionArg

           typedef struct etraceserver_SessionArg etraceserver_SessionArg_t;

           struct etraceserver_SessionArg {
                char *esa_name;
                char **esa_values;
                int esa_values_count;
           };


           void etraceserver_SessionArg_free(etraceserver_SessionArg_t *in);

       struct SessionInfo

           typedef struct etraceserver_SessionInfo etraceserver_SessionInfo_t;

           struct etraceserver_SessionInfo {
                char *esi_session;
                char *esi_provider;
                char *esi_uuid;
                char *esi_uid;
                char *esi_state;
                etraceserver_LLQInfo_t **esi_llqs;
                int esi_llqs_count;
           };


           void etraceserver_SessionInfo_free(etraceserver_SessionInfo_t *in);

DESCRIPTION
       API com.oracle.solaris.rad.etraceserver [1]

       This API exposes End-to-End Tracing (ETrace) server daemon
       administration to rad(8) clients. It also includes private APIs used by
       the ETrace client daemons to connect to server.

INTERFACES
   interface ETraceServer
       Private end-to-end tracing server daemon interface.

       Private implementation of end-to-end tracing server daemon interface.

       ETraceServer Methods
           rc_err_t etraceserver_ETraceServer_startConnect(rc_instance_t *inst,
                                                           const char *client_name,
                                                           etraceserver_StartResult_t **result,
                                                           etraceserver_ETraceError_t **error);

               Begin a connect between the client and server.

               Do a pre-flight check then start the report receiving listener.
               This method is only used internally.

               Arguments:

               inst -- RAD instance

               client_name

               result

               error

           rc_err_t etraceserver_ETraceServer_sessionCreate(rc_instance_t *inst,
                                                            const char *session_name,
                                                            const char *provider_name,
                                                            etraceserver_SessionArg_t **arguments,
                                                            int arguments_count,
                                                            etraceserver_LLQInfo_t **llq_options,
                                                            int llq_options_count,
                                                            boolean_t persistent,
                                                            etraceserver_ETraceError_t **error);

               Create a new session.

               Create a new session for the specified provider using the
               specified arguments. Each argument is specified as a name value
               pair. The value of the argument is an array of strings.

               Arguments:

               inst -- RAD instance

               session_name -- Specifies the name of the session to be
               created.

               provider_name -- Specifies the name of the provider to be used.

               arguments -- Specifies the name of the provider to be used.

               arguments_count -- Number of items in arguments array

               llq_options -- Specifies the arguments for enabled llquantize
               operations.

               llq_options_count -- Number of items in llq_options array

               persistent

               error

           rc_err_t etraceserver_ETraceServer_sessionDelete(rc_instance_t *inst,
                                                            const char *session_name,
                                                            const char *user_name,
                                                            etraceserver_ETraceError_t **error);

               Delete a session.

               Delete the specified session.

               Arguments:

               inst -- RAD instance

               session_name

               user_name (nullable)

               error

           rc_err_t etraceserver_ETraceServer_sessionUndelete(rc_instance_t *inst,
                                                              const char *session_name,
                                                              const char *user_name,
                                                              etraceserver_ETraceError_t **error);

               Undelete a session.

               Undelete the specified session.

               Arguments:

               inst -- RAD instance

               session_name

               user_name (nullable)

               error

           rc_err_t etraceserver_ETraceServer_sessionList(rc_instance_t *inst,
                                                          const char *session_name,
                                                          boolean_t all_sessions,
                                                          etraceserver_SessionInfo_t ***result,
                                                          int *result_cnt,
                                                          etraceserver_ETraceError_t **error);

               List the current sessions.

               List the current sessions.

               Arguments:

               inst -- RAD instance

               session_name -- Specifies the name of the session to be
               returned. If an empty string, will return all sessions for
               current user.

               all_sessions -- If set to TRUE, returns all sessions on the
               system.

               result

               result_cnt -- Number of items in result array

               error

       ETraceServer Retrieve
           rc_err_t etraceserver_ETraceServer__rad_get_name(adr_name_t **result,
                                                            int n,
                                                            ...);

               Obtain RAD name of a ETraceServer object.

               Arguments:

               result -- RAD name

               n -- Number of key-value pairs provided as variadic arguments

               ... -- Optional key-value pairs that compose the primary key

           rc_err_t etraceserver_ETraceServer__rad_lookup(rc_conn_t *c,
                                                          boolean_t strict,
                                                          rc_instance_t **result,
                                                          int n,
                                                          ...);

               Lookup a ETraceServer instance.

               Construct a RAD name for the interface based on the provided
               key-value pairs and perform a lookup. If successful, instance
               reference is returned in the result.

               Arguments:

               c -- RAD connection handle

               strict -- Strict (B_TRUE) or relaxed (B_FALSE) versioning

               result -- RAD instance

               n -- Number of key-value pairs provided as variadic arguments

               ... -- Optional key-value pairs that compose the primary key

           rc_err_t etraceserver_ETraceServer__rad_list(rc_conn_t *c,
                                                        boolean_t strict,
                                                        adr_pattern_scheme_t scheme,
                                                        adr_name_t ***result,
                                                        int *result_count,
                                                        int n,
                                                        ...);

               List RAD names of a available ETraceServer instances.

               Returns an array and array size of matching object names.

               Arguments:

               c -- RAD connection handle

               strict -- Strict (B_TRUE) or relaxed (B_FALSE) versioning

               scheme -- Apply glob (NS_GLOB) or regex (NS_REGEX) matching

               result -- Array of RAD names

               result_count -- Number of names in result array

               n -- Number of key-value pairs provided as variadic arguments

               ... -- Optional key-value pairs that compose the primary key

STRUCTURED TYPES
       struct ETraceError

           typedef struct etraceserver_ETraceError etraceserver_ETraceError_t;

           struct etraceserver_ETraceError {
                int eete_err;
                char *eete_errmsg;
           };


           void etraceserver_ETraceError_free(etraceserver_ETraceError_t *in);

           Fields:

           eete_err

           eete_errmsg

       struct StartResult

           typedef struct etraceserver_StartResult etraceserver_StartResult_t;

           struct etraceserver_StartResult {
                boolean_t esr_ssl;
                char *esr_port;
                char *esr_token;
           };


           void etraceserver_StartResult_free(etraceserver_StartResult_t *in);

           Fields:

           esr_ssl

           esr_port

           esr_token

       struct LLQInfo -- Log-linear quantization information structure. Keeps
       track of five arguments that are needed to enable a llquantize
       operation.

           typedef struct etraceserver_LLQInfo etraceserver_LLQInfo_t;

           struct etraceserver_LLQInfo {
                char *ellqi_span;
                unsigned long long ellqi_base;
                unsigned long long ellqi_lo_exp;
                unsigned long long ellqi_hi_exp;
                unsigned long long ellqi_steps;
           };


           void etraceserver_LLQInfo_free(etraceserver_LLQInfo_t *in);

           Fields:

           ellqi_span

           ellqi_base

           ellqi_lo_exp

           ellqi_hi_exp

           ellqi_steps

       struct SessionArg -- Session argument name/value pair.

           typedef struct etraceserver_SessionArg etraceserver_SessionArg_t;

           struct etraceserver_SessionArg {
                char *esa_name;
                char **esa_values;
                int esa_values_count;
           };


           void etraceserver_SessionArg_free(etraceserver_SessionArg_t *in);

           Fields:

           esa_name

           esa_values

           esa_values_count

       struct SessionInfo -- Session information.

           typedef struct etraceserver_SessionInfo etraceserver_SessionInfo_t;

           struct etraceserver_SessionInfo {
                char *esi_session;
                char *esi_provider;
                char *esi_uuid;
                char *esi_uid;
                char *esi_state;
                etraceserver_LLQInfo_t **esi_llqs;
                int esi_llqs_count;
           };


           void etraceserver_SessionInfo_free(etraceserver_SessionInfo_t *in);

           Fields:

           esi_session

           esi_provider

           esi_uuid

           esi_uid

           esi_state

           esi_llqs

           esi_llqs_count

VERSION
       1.0

ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:

       +--------------------+-----------------------------------------------+
       |  ATTRIBUTE TYPE    |                ATTRIBUTE VALUE                |
       +--------------------+-----------------------------------------------+
       |Availability        | system/management/rad/module/rad-etraceserver |
       +--------------------+-----------------------------------------------+
       |Interface Stability | Private                                       |
       +--------------------+-----------------------------------------------+

SEE ALSO
       rad(8)

NOTES
        1. Accessing Python documentation for this module:

           $ pydoc rad.bindings.com.oracle.solaris.rad.etraceserver_1





Solaris 11.4                      2017-02-01              ETRACESERVER-1(3rad)