Using fecth in reactjs:
fetch('https://[SUBDOMAIN].splunkcloud.com:8088/services/collector/event/1.0', {
method: 'POST',
headers: {
'Access-Control-Allow-Origin': 'application/json',
'Access-Control-Allow-Credentials': 'true',
'Access-Control-Allow-Methods': 'OPTIONS, GET, POST',
'Access-Control-Allow-Headers':
'Content-Type, Depth, User-Agent, X-File-Size, X-Requested-With, If-Modified-Since, X-File-Name, Cache-Control',
Accept: 'application/json',
'Content-Type': 'application/json',
Authorization: 'Splunk [TOKEN]'
},
body: JSON.stringify({
sourcetype: '_json',
index: 'main',
host: 'mydata2',
event: { foo: 'bar3', b: ['value1_3', 'value1_4'] }
})
})
.then((res) => res.json())
.then((json) => {
// eslint-disable-next-line no-console
console.log('json---->', json);
});
Using splunk-logging in reactjs:
import * as SplunkLogging from 'splunk-logging';
const SplunkLogger = SplunkLogging.Logger;
const config = {
token: [TOKEN],
url: '[URL]:8088'
};
// eslint-disable-next-line no-var
const Logger = new SplunkLogger(config);
Logger.requestOptions.strictSSL = true;
// eslint-disable-next-line no-var
const payload = {
// Message can be anything; doesn't have to be an object
message: {
temperature: '70F',
chickenCount: 500
}
};
console.info('Sending payload', payload);
Logger.send(payload, function (err, resp, body) {
// If successful, body will be { text: 'Success', code: 0 }
console.info('Response from Splunk', body);
});