Added trigger instance ID and instance name headers
This commit is contained in:
parent
0083df681d
commit
d1e518ae9b
2 changed files with 24 additions and 0 deletions
|
@ -55,6 +55,14 @@ namespace Triggers{
|
||||||
if (value.substr(0, 7) == "http://" || value.substr(0, 8) == "https://"){// interpret as url
|
if (value.substr(0, 7) == "http://" || value.substr(0, 8) == "https://"){// interpret as url
|
||||||
HTTP::Downloader DL;
|
HTTP::Downloader DL;
|
||||||
DL.setHeader("X-Trigger", trigger);
|
DL.setHeader("X-Trigger", trigger);
|
||||||
|
std::string iid = Util::getGlobalConfig("iid").asString();
|
||||||
|
if (iid.size()){
|
||||||
|
DL.setHeader("X-Instance", iid);
|
||||||
|
}
|
||||||
|
std::string hrn = Util::getGlobalConfig("hrn").asString();
|
||||||
|
if (hrn.size()){
|
||||||
|
DL.setHeader("X-Name", hrn);
|
||||||
|
}
|
||||||
DL.setHeader("Content-Type", "text/plain");
|
DL.setHeader("Content-Type", "text/plain");
|
||||||
HTTP::URL url(value);
|
HTTP::URL url(value);
|
||||||
if (DL.post(url, payload, sync) && (!sync || DL.isOk())){
|
if (DL.post(url, payload, sync) && (!sync || DL.isOk())){
|
||||||
|
@ -76,9 +84,19 @@ namespace Triggers{
|
||||||
argv[2] = NULL;
|
argv[2] = NULL;
|
||||||
setenv("MIST_TRIGGER", trigger.c_str(), 1);
|
setenv("MIST_TRIGGER", trigger.c_str(), 1);
|
||||||
setenv("MIST_TRIG_DEF", defaultResponse.c_str(), 1);
|
setenv("MIST_TRIG_DEF", defaultResponse.c_str(), 1);
|
||||||
|
std::string iid = Util::getGlobalConfig("iid").asString();
|
||||||
|
if (iid.size()){
|
||||||
|
setenv("MIST_INSTANCE", iid.c_str(), 1);
|
||||||
|
}
|
||||||
|
std::string hrn = Util::getGlobalConfig("hrn").asString();
|
||||||
|
if (hrn.size()){
|
||||||
|
setenv("MIST_NAME", hrn.c_str(), 1);
|
||||||
|
}
|
||||||
pid_t myProc = Util::Procs::StartPiped(argv, &fdIn, &fdOut, &fdErr); // start new process and return stdin file desc.
|
pid_t myProc = Util::Procs::StartPiped(argv, &fdIn, &fdOut, &fdErr); // start new process and return stdin file desc.
|
||||||
unsetenv("MIST_TRIGGER");
|
unsetenv("MIST_TRIGGER");
|
||||||
unsetenv("MIST_TRIG_DEF");
|
unsetenv("MIST_TRIG_DEF");
|
||||||
|
unsetenv("MIST_INSTANCE");
|
||||||
|
unsetenv("MIST_NAME");
|
||||||
if (fdIn == -1 || fdOut == -1 || myProc == -1){
|
if (fdIn == -1 || fdOut == -1 || myProc == -1){
|
||||||
FAIL_MSG("Could not execute trigger executable: %s", strerror(errno));
|
FAIL_MSG("Could not execute trigger executable: %s", strerror(errno));
|
||||||
submitTriggerStat(trigger, tStartMs, false);
|
submitTriggerStat(trigger, tStartMs, false);
|
||||||
|
|
|
@ -617,6 +617,8 @@ namespace Controller{
|
||||||
|| !globAccX.getFieldAccX("sessionStreamInfoMode")
|
|| !globAccX.getFieldAccX("sessionStreamInfoMode")
|
||||||
|| !globAccX.getFieldAccX("tknMode")
|
|| !globAccX.getFieldAccX("tknMode")
|
||||||
|| !globAccX.getFieldAccX("udpApi")
|
|| !globAccX.getFieldAccX("udpApi")
|
||||||
|
|| !globAccX.getFieldAccX("iid")
|
||||||
|
|| !globAccX.getFieldAccX("hrn")
|
||||||
){
|
){
|
||||||
globAccX.setReload();
|
globAccX.setReload();
|
||||||
globCfg.master = true;
|
globCfg.master = true;
|
||||||
|
@ -635,6 +637,8 @@ namespace Controller{
|
||||||
globAccX.addField("sessionStreamInfoMode", RAX_64UINT);
|
globAccX.addField("sessionStreamInfoMode", RAX_64UINT);
|
||||||
globAccX.addField("tknMode", RAX_64UINT);
|
globAccX.addField("tknMode", RAX_64UINT);
|
||||||
globAccX.addField("udpApi", RAX_128STRING);
|
globAccX.addField("udpApi", RAX_128STRING);
|
||||||
|
globAccX.addField("iid", RAX_64STRING);
|
||||||
|
globAccX.addField("hrn", RAX_128STRING);
|
||||||
globAccX.setRCount(1);
|
globAccX.setRCount(1);
|
||||||
globAccX.setEndPos(1);
|
globAccX.setEndPos(1);
|
||||||
globAccX.setReady();
|
globAccX.setReady();
|
||||||
|
@ -648,6 +652,8 @@ namespace Controller{
|
||||||
globAccX.setInt("tknMode", Storage["config"]["tknMode"].asInt());
|
globAccX.setInt("tknMode", Storage["config"]["tknMode"].asInt());
|
||||||
globAccX.setString("udpApi", udpApiBindAddr);
|
globAccX.setString("udpApi", udpApiBindAddr);
|
||||||
globAccX.setInt("systemBoot", systemBoot);
|
globAccX.setInt("systemBoot", systemBoot);
|
||||||
|
globAccX.setString("iid", instanceId);
|
||||||
|
globAccX.setString("hrn", Storage["config"]["serverid"].asString());
|
||||||
globCfg.master = false; // leave the page after closing
|
globCfg.master = false; // leave the page after closing
|
||||||
addShmPage(SHM_GLOBAL_CONF);
|
addShmPage(SHM_GLOBAL_CONF);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue