| 1 | /* |
| 2 | * lttng-error.h |
| 3 | * |
| 4 | * Linux Trace Toolkit Control Library Error Header File |
| 5 | * |
| 6 | * The following values are all the possible errors the lttng command line |
| 7 | * client can quit with. |
| 8 | * |
| 9 | * Copyright (C) 2012 - David Goulet <dgoulet@efficios.com> |
| 10 | * |
| 11 | * This library is free software; you can redistribute it and/or modify it |
| 12 | * under the terms of the GNU Lesser General Public License, version 2.1 only, |
| 13 | * as published by the Free Software Foundation. |
| 14 | * |
| 15 | * This library is distributed in the hope that it will be useful, but WITHOUT |
| 16 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
| 17 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License |
| 18 | * for more details. |
| 19 | * |
| 20 | * You should have received a copy of the GNU Lesser General Public License |
| 21 | * along with this library; if not, write to the Free Software Foundation, |
| 22 | * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
| 23 | */ |
| 24 | |
| 25 | #ifndef LTTNG_ERROR_H |
| 26 | #define LTTNG_ERROR_H |
| 27 | |
| 28 | #ifdef __cplusplus |
| 29 | extern "C" { |
| 30 | #endif |
| 31 | |
| 32 | enum lttng_error_code { |
| 33 | LTTNG_OK = 10, /* Ok */ |
| 34 | LTTNG_ERR_UNK = 11, /* Unknown Error */ |
| 35 | LTTNG_ERR_UND = 12, /* Undefined command */ |
| 36 | LTTNG_ERR_SESSION_STARTED = 13, /* Session is running */ |
| 37 | LTTNG_ERR_UNKNOWN_DOMAIN = 14, /* Tracing domain not known */ |
| 38 | LTTNG_ERR_NOT_SUPPORTED = 15, /* Operation not supported */ |
| 39 | LTTNG_ERR_NO_SESSION = 16, /* No session found */ |
| 40 | LTTNG_ERR_CREATE_DIR_FAIL = 17, /* Create directory fail */ |
| 41 | LTTNG_ERR_SESSION_FAIL = 18, /* Create session fail */ |
| 42 | LTTNG_ERR_NO_SESSIOND = 19, /* No session daemon available */ |
| 43 | LTTNG_ERR_SET_URL = 20, /* Error setting URL */ |
| 44 | LTTNG_ERR_URL_EXIST = 21, /* URL already exists. */ |
| 45 | LTTNG_ERR_BUFFER_NOT_SUPPORTED = 22, /* Buffer type not supported. */ |
| 46 | LTTNG_ERR_SESS_NOT_FOUND = 23, /* Session by name not found */ |
| 47 | LTTNG_ERR_BUFFER_TYPE_MISMATCH = 24, /* Buffer type mismatched. */ |
| 48 | LTTNG_ERR_FATAL = 25, /* Fatal error */ |
| 49 | LTTNG_ERR_NOMEM = 26, /* Not enough memory. */ |
| 50 | LTTNG_ERR_SELECT_SESS = 27, /* Must select a session */ |
| 51 | LTTNG_ERR_EXIST_SESS = 28, /* Session name already exist */ |
| 52 | LTTNG_ERR_NO_EVENT = 29, /* No event found */ |
| 53 | LTTNG_ERR_CONNECT_FAIL = 30, /* Unable to connect to unix socket */ |
| 54 | LTTNG_ERR_SNAPSHOT_OUTPUT_EXIST = 31, /* Snapshot output already exists */ |
| 55 | LTTNG_ERR_EPERM = 32, /* Permission denied */ |
| 56 | LTTNG_ERR_KERN_NA = 33, /* Kernel tracer unavalable */ |
| 57 | LTTNG_ERR_KERN_VERSION = 34, /* Kernel tracer not compatible */ |
| 58 | LTTNG_ERR_KERN_EVENT_EXIST = 35, /* Kernel event already exists */ |
| 59 | LTTNG_ERR_KERN_SESS_FAIL = 36, /* Kernel create session failed */ |
| 60 | LTTNG_ERR_KERN_CHAN_EXIST = 37, /* Kernel channel already exists */ |
| 61 | LTTNG_ERR_KERN_CHAN_FAIL = 38, /* Kernel create channel failed */ |
| 62 | LTTNG_ERR_KERN_CHAN_NOT_FOUND = 39, /* Kernel channel not found */ |
| 63 | LTTNG_ERR_KERN_CHAN_DISABLE_FAIL = 40, /* Kernel disable channel failed */ |
| 64 | LTTNG_ERR_KERN_CHAN_ENABLE_FAIL = 41, /* Kernel enable channel failed */ |
| 65 | LTTNG_ERR_KERN_CONTEXT_FAIL = 42, /* Kernel add context failed */ |
| 66 | LTTNG_ERR_KERN_ENABLE_FAIL = 43, /* Kernel enable event failed */ |
| 67 | LTTNG_ERR_KERN_DISABLE_FAIL = 44, /* Kernel disable event failed */ |
| 68 | LTTNG_ERR_KERN_META_FAIL = 45, /* Kernel open metadata failed */ |
| 69 | LTTNG_ERR_KERN_START_FAIL = 46, /* Kernel start trace failed */ |
| 70 | LTTNG_ERR_KERN_STOP_FAIL = 47, /* Kernel stop trace failed */ |
| 71 | LTTNG_ERR_KERN_CONSUMER_FAIL = 48, /* Kernel consumer start failed */ |
| 72 | LTTNG_ERR_KERN_STREAM_FAIL = 49, /* Kernel create stream failed */ |
| 73 | LTTNG_ERR_START_SESSION_ONCE = 50, /* Session needs to be started once. */ |
| 74 | LTTNG_ERR_SNAPSHOT_FAIL = 51, /* Snapshot record failed. */ |
| 75 | LTTNG_ERR_NO_STREAM = 52, /* Index without stream on relay. */ |
| 76 | LTTNG_ERR_KERN_LIST_FAIL = 53, /* Kernel listing events failed */ |
| 77 | LTTNG_ERR_UST_CALIBRATE_FAIL = 54, /* UST calibration failed */ |
| 78 | LTTNG_ERR_UST_EVENT_ENABLED = 55, /* UST event already enabled. */ |
| 79 | LTTNG_ERR_UST_SESS_FAIL = 56, /* UST create session failed */ |
| 80 | LTTNG_ERR_UST_CHAN_EXIST = 57, /* UST channel already exist */ |
| 81 | LTTNG_ERR_UST_CHAN_FAIL = 58, /* UST create channel failed */ |
| 82 | LTTNG_ERR_UST_CHAN_NOT_FOUND = 59, /* UST channel not found */ |
| 83 | LTTNG_ERR_UST_CHAN_DISABLE_FAIL = 60, /* UST disable channel failed */ |
| 84 | LTTNG_ERR_UST_CHAN_ENABLE_FAIL = 61, /* UST enable channel failed */ |
| 85 | LTTNG_ERR_CHAN_EXIST = 62, /* Channel already exists. */ |
| 86 | LTTNG_ERR_UST_ENABLE_FAIL = 63, /* UST enable event failed */ |
| 87 | LTTNG_ERR_UST_DISABLE_FAIL = 64, /* UST disable event failed */ |
| 88 | LTTNG_ERR_UST_META_FAIL = 65, /* UST open metadata failed */ |
| 89 | LTTNG_ERR_UST_START_FAIL = 66, /* UST start trace failed */ |
| 90 | LTTNG_ERR_UST_STOP_FAIL = 67, /* UST stop trace failed */ |
| 91 | LTTNG_ERR_UST_CONSUMER64_FAIL = 68, /* 64-bit UST consumer start failed */ |
| 92 | LTTNG_ERR_UST_CONSUMER32_FAIL = 69, /* 32-bit UST consumer start failed */ |
| 93 | LTTNG_ERR_UST_STREAM_FAIL = 70, /* UST create stream failed */ |
| 94 | LTTNG_ERR_SNAPSHOT_NODATA = 71, /* No data in snapshot. */ |
| 95 | LTTNG_ERR_NO_CHANNEL = 72, /* No channel found in the session. */ |
| 96 | LTTNG_ERR_SESSION_INVALID_CHAR = 73, /* Invalid characters found in session name. */ |
| 97 | LTTNG_ERR_UST_LIST_FAIL = 74, /* UST listing events failed */ |
| 98 | LTTNG_ERR_UST_EVENT_EXIST = 75, /* UST event exist */ |
| 99 | LTTNG_ERR_UST_EVENT_NOT_FOUND = 76, /* UST event not found */ |
| 100 | LTTNG_ERR_UST_CONTEXT_EXIST = 77, /* UST context exist */ |
| 101 | LTTNG_ERR_UST_CONTEXT_INVAL = 78, /* UST context invalid */ |
| 102 | LTTNG_ERR_NEED_ROOT_SESSIOND = 79, /* root sessiond is needed */ |
| 103 | LTTNG_ERR_TRACE_ALREADY_STARTED = 80, /* Tracing already started */ |
| 104 | LTTNG_ERR_TRACE_ALREADY_STOPPED = 81, /* Tracing already stopped */ |
| 105 | LTTNG_ERR_KERN_EVENT_ENOSYS = 82, /* Kernel event type not supported */ |
| 106 | LTTNG_ERR_NEED_CHANNEL_NAME = 83, /* Non-default channel exists within session: channel name needs to be specified with '-c name' */ |
| 107 | LTTNG_ERR_NO_UST = 84, /* LTTng-UST tracer is not supported. Please rebuild lttng-tools with lttng-ust support enabled. */ |
| 108 | LTTNG_ERR_SAVE_FILE_EXIST = 85, /* Session file already exists. */ |
| 109 | LTTNG_ERR_SAVE_IO_FAIL = 86, /* IO error while writing session configuration */ |
| 110 | LTTNG_ERR_LOAD_INVALID_CONFIG = 87, /* Invalid session configuration */ |
| 111 | LTTNG_ERR_LOAD_IO_FAIL = 88, /* IO error while reading a session configuration */ |
| 112 | LTTNG_ERR_LOAD_SESSION_NOENT = 89, /* Session file not found */ |
| 113 | LTTNG_ERR_MAX_SIZE_INVALID = 90, /* Snapshot max size is invalid. */ |
| 114 | LTTNG_ERR_MI_OUTPUT_TYPE = 91, /* Invalid MI output format */ |
| 115 | LTTNG_ERR_MI_IO_FAIL = 92, /* IO error while writing machine interface output */ |
| 116 | LTTNG_ERR_MI_NOT_IMPLEMENTED = 93, /* Mi feature not implemented */ |
| 117 | /* 94 */ |
| 118 | /* 95 */ |
| 119 | /* 96 */ |
| 120 | LTTNG_ERR_INVALID = 97, /* Invalid parameter */ |
| 121 | LTTNG_ERR_NO_USTCONSUMERD = 98, /* No UST consumer detected */ |
| 122 | LTTNG_ERR_NO_KERNCONSUMERD = 99, /* No Kernel consumer detected */ |
| 123 | LTTNG_ERR_EVENT_EXIST_LOGLEVEL = 100, /* Event enabled with different loglevel */ |
| 124 | LTTNG_ERR_URL_DATA_MISS = 101, /* Missing network data URL */ |
| 125 | LTTNG_ERR_URL_CTRL_MISS = 102, /* Missing network control URL */ |
| 126 | LTTNG_ERR_ENABLE_CONSUMER_FAIL = 103, /* Enabling consumer failed */ |
| 127 | LTTNG_ERR_RELAYD_CONNECT_FAIL = 104, /* lttng-relayd create session failed */ |
| 128 | LTTNG_ERR_RELAYD_VERSION_FAIL = 105, /* lttng-relayd not compatible */ |
| 129 | LTTNG_ERR_FILTER_INVAL = 106, /* Invalid filter bytecode */ |
| 130 | LTTNG_ERR_FILTER_NOMEM = 107, /* Lack of memory for filter bytecode */ |
| 131 | LTTNG_ERR_FILTER_EXIST = 108, /* Filter already exist */ |
| 132 | LTTNG_ERR_NO_CONSUMER = 109, /* No consumer exist for the session */ |
| 133 | LTTNG_ERR_EXCLUSION_INVAL = 110, /* Invalid event exclusion data */ |
| 134 | LTTNG_ERR_EXCLUSION_NOMEM = 111, /* Lack of memory while processing event exclusions */ |
| 135 | LTTNG_ERR_INVALID_EVENT_NAME = 112, /* Invalid event name */ |
| 136 | LTTNG_ERR_INVALID_CHANNEL_NAME = 113, /* Invalid channel name */ |
| 137 | LTTNG_ERR_PID_TRACKED = 114, /* PID already tracked */ |
| 138 | LTTNG_ERR_PID_NOT_TRACKED = 115, /* PID not tracked */ |
| 139 | LTTNG_ERR_INVALID_CHANNEL_DOMAIN = 116, /* Invalid channel domain */ |
| 140 | LTTNG_ERR_OVERFLOW = 117, /* Overflow occurred. */ |
| 141 | LTTNG_ERR_SESSION_NOT_STARTED = 118, /* Session not started */ |
| 142 | LTTNG_ERR_LIVE_SESSION = 119, /* Live session unsupported */ |
| 143 | LTTNG_ERR_PER_PID_SESSION = 120, /* Per-PID sessions unsupported */ |
| 144 | LTTNG_ERR_KERN_CONTEXT_UNAVAILABLE = 121, /* Context unavailable on this kernel */ |
| 145 | LTTNG_ERR_REGEN_STATEDUMP_FAIL = 122, /* Failed to regenerate the state dump */ |
| 146 | LTTNG_ERR_REGEN_STATEDUMP_NOMEM = 123, /* Failed to regenerate the state dump, not enough memory */ |
| 147 | LTTNG_ERR_NOT_SNAPSHOT_SESSION = 124, /* Session is not in snapshot mode. */ |
| 148 | LTTNG_ERR_INVALID_TRIGGER = 125, /* Invalid trigger provided. */ |
| 149 | LTTNG_ERR_TRIGGER_EXISTS = 126, /* Trigger already registered. */ |
| 150 | LTTNG_ERR_TRIGGER_NOT_FOUND = 127, /* Trigger not found. */ |
| 151 | LTTNG_ERR_COMMAND_CANCELLED = 128, /* Command cancelled. */ |
| 152 | LTTNG_ERR_ROTATION_PENDING = 129, /* Rotate already pending for this session. */ |
| 153 | LTTNG_ERR_ROTATION_NOT_AVAILABLE = 130, /* Rotate feature not available for this type of session (e.g: live) */ |
| 154 | LTTNG_ERR_ROTATION_TIMER_IS_SET = 131, /* Rotate timer already setup for this session. */ |
| 155 | LTTNG_ERR_ROTATION_SIZE_IS_SET = 132, /* Rotate size already setup for this session. */ |
| 156 | LTTNG_ERR_ROTATION_MULTIPLE_AFTER_STOP = 133, /* Already rotated once after a stop. */ |
| 157 | LTTNG_ERR_ROTATION_WRONG_VERSION = 134, /* Rotate not supported by this kernel tracer version */ |
| 158 | LTTNG_ERR_NO_SESSION_OUTPUT = 135, /* Session has no output configured. */ |
| 159 | |
| 160 | /* MUST be last element */ |
| 161 | LTTNG_ERR_NR, /* Last element */ |
| 162 | }; |
| 163 | |
| 164 | /* |
| 165 | * Return a human-readable error message for a LTTng error code. |
| 166 | * |
| 167 | * Parameter MUST be a negative value or else you'll get a generic message. |
| 168 | */ |
| 169 | extern const char *lttng_strerror(int code); |
| 170 | |
| 171 | #ifdef __cplusplus |
| 172 | } |
| 173 | #endif |
| 174 | |
| 175 | #endif /* LTTNG_ERROR_H */ |