int check_ts_version() { const char *ts_version = TSTrafficServerVersionGet(); int result = 0; if (ts_version) { int major_ts_version = 0; int minor_ts_version = 0; int patch_ts_version = 0; if (sscanf(ts_version, "%d.%d.%d", &major_ts_version, &minor_ts_version, &patch_ts_version) != 3) { return 0; } /* Need at least TS 2.0 */ if (major_ts_version >= 2) { result = 1; } } return result; }
int check_ts_version() { const char *ts_version = TSTrafficServerVersionGet(); int result = 0; if (ts_version) { int major_ts_version = 0; int minor_ts_version = 0; int patch_ts_version = 0; if (sscanf(ts_version, "%d.%d.%d", &major_ts_version, &minor_ts_version, &patch_ts_version) != 3) { return 0; } /* Since this is an TS-SDK 2.0 plugin, we need at least Traffic Server 2.0 to run */ if (major_ts_version >= 2) { result = 1; } } return result; }
static void json_out_stats(stats_state *my_state) { const char *version; int i; TSDebug(PLUGIN_TAG, "recordTypes: '0x%x'", my_state->recordTypes); APPEND("{ \"ats\": {\n"); TSRecordDump(my_state->recordTypes, json_out_stat, my_state); version = TSTrafficServerVersionGet(); APPEND(" \"server\": \""); APPEND(version); APPEND("\"\n"); APPEND(" }"); if (my_state->recordTypes & SYSTEM_RECORD_TYPE) { APPEND(",\n \"system\": {\n"); appendSystemState(my_state); APPEND_STAT("configReloadRequests", "%d", configReloadRequests); APPEND_STAT("lastReloadRequest", "%" PRIu64, lastReloadRequest); APPEND_STAT("configReloads", "%d", configReloads); APPEND_STAT("lastReload", "%" PRIu64, lastReload); APPEND_STAT("astatsLoad", "%" PRIu64, astatsLoad); APPEND("\"something\": \"here\""); APPEND("\n }"); } APPEND("\n}\n"); }
static void json_out_stats(stats_state * my_state) { const char *version; APPEND("{ \"global\": {\n"); TSRecordDump(TS_RECORDTYPE_PROCESS, json_out_stat, my_state); version = TSTrafficServerVersionGet(); APPEND("\"server\": \""); APPEND(version); APPEND("\"\n"); APPEND(" }\n}\n"); }
void TSPluginInit(int argc, const char *argv[]) { (void)argc; // unused (void)argv; // unused // Get the version: const char *ts_version = TSTrafficServerVersionGet(); if (!ts_version) { TSError("[version] Can't get Traffic Server verion.\n"); return; } // Split it in major, minor, patch: int major_ts_version = 0; int minor_ts_version = 0; int patch_ts_version = 0; if (sscanf(ts_version, "%d.%d.%d", &major_ts_version, &minor_ts_version, &patch_ts_version) != 3) { TSError("[version] Can't extract verions.\n"); return; } TSPluginRegistrationInfo info; info.plugin_name = "version-plugin"; info.vendor_name = "MyCompany"; info.support_email = "*****@*****.**"; // partial compilation #if (TS_VERSION_NUMBER < 3000000) if (TSPluginRegister(TS_SDK_VERSION_2_0, &info) != TS_SUCCESS) { #elif (TS_VERSION_NUMBER < 6000000) if (TSPluginRegister(TS_SDK_VERSION_3_0, &info) != TS_SUCCESS) { #else if (TSPluginRegister(&info) != TS_SUCCESS) { #endif TSError("[version] Plugin registration failed. \n"); } TSDebug("debug-version-plugin", "Running in Apache Traffic Server: v%d.%d.%d", major_ts_version, minor_ts_version, patch_ts_version); }
/* Check the TS server version, make sure we're supporting it */ inline int check_ts_version() { const char *ts_version = TSTrafficServerVersionGet(); if (ts_version) { int major_ts_version = 0; int minor_ts_version = 0; int patch_ts_version = 0; if (sscanf(ts_version, "%d.%d.%d", &major_ts_version, &minor_ts_version, &patch_ts_version) != 3) return 0; /* Need at least TS 3.0 */ if (major_ts_version >= 3) return 1; } return 0; }
static bool check_ts_version() { const char *ts_version = TSTrafficServerVersionGet(); if (ts_version) { int major_ts_version = 0; int minor_ts_version = 0; int micro_ts_version = 0; if (sscanf(ts_version, "%d.%d.%d", &major_ts_version, &minor_ts_version, µ_ts_version) != 3) { return false; } if ((TS_VERSION_MAJOR == major_ts_version) && (TS_VERSION_MINOR == minor_ts_version) && (TS_VERSION_MICRO == micro_ts_version)) { return true; } } return false; }
See the License for the specific language governing permissions and limitations under the License. */ #include <stdio.h> #include "ts/ts.h" #include "ink_defs.h" void TSPluginInit(int argc ATS_UNUSED, const char *argv[] ATS_UNUSED) { TSPluginRegistrationInfo info; // Get the version: const char *ts_version = TSTrafficServerVersionGet(); if (!ts_version) { TSError("Can't get Traffic Server verion.\n"); return; } // Split it in major, minor, patch: int major_ts_version = 0; int minor_ts_version = 0; int patch_ts_version = 0; if (sscanf(ts_version, "%d.%d.%d", &major_ts_version, &minor_ts_version, &patch_ts_version) != 3) { TSError("Can't extract verions.\n"); return; }