Splunk Dev

Can´t connect to splunk

splunkjunkxx
New Member

Hi guys

When i run following code

   <html>
  <head>
    <meta charset="utf-8">
    <title>How to start a Splunk session</title>
    <!--<script type="text/javascript" src="/static/app/kaisers_weinberater/jquery.min.js"></script>-->
    <script type="text/javascript" src="/static/app/kaisers_weinberater/splunk-sdk-javascript/client/splunk.js"></script>

    <script type="text/javascript" charset="utf-8">
    function displayApps() {
        var http = new splunkjs.ProxyHttp("/proxy");

        // Create a Service instance and log in 
        var service = new splunkjs.Service(http, {
            username: "admin",
            password: "admin",
            scheme: "https",
            host: "localhost",
            port:"8089",
            version:"5.0.1"
        }); 

// Retrieve the collection of jobs
var myJobs = service.jobs();

myJobs.fetch(function(err, jobs) {

  // Determine how many jobs are in the collection
  var jobsList = myJobs.list() || [];
  console.log("There are " + jobsList.length + " jobs available to the current user");

  // Loop through the collection and display each job's SID
  for(var i = 0; i < jobsList.length; i++) {
    console.log((i + 1) + ": " + jobsList[i].sid);
  };
});

    }
    </script> 
</head>
<body>
    <button type="button" onclick="displayApps()">Log in and list apps</button>
    <p id="applist"></p>
</body>
</html>

i get following error:

https://localhost:8000/en-US/proxy/services/auth/login?output_mode=json

Any ideas? Thanks a lot for your help!:)

0 Karma

Neeraj_Luthra
Splunk Employee
Splunk Employee

The 404 seems to be related to the fact that the request isn't actually making it to Splunk. By default, browsers don't allow cross-site scripting - Same origin policy. You will need to tell your web server to proxy specific requests to Splunk. For example, when running apache, following 2 lines of code do the trick.

SSLProxyEngine On
ProxyPass   /proxy/             https://localhost:8089/

Hope this helps.

0 Karma

sinnixx
Explorer

Hi Iguinn:) that´s right. Thought :8089 is the port for communication with the splunk server? How can i instantiate the http object without the proxy function?
After changing this line to var http = new splunkjs.ProxyHttp(".."); i get rid off the 404 error. But the response json data from splunkd is {"data": null, "total": 0, "messages": [{"message": "Invalid viewstate param name: username; aborting", "time": "2013-01-28T09:59:48", "type": "ERROR"}

0 Karma

lguinn2
Legend

I assume that you are running Splunk on the local machine, and that you are using port 8000 (the default)?

0 Karma

splunkjunkxx
New Member
0 Karma
Get Updates on the Splunk Community!

Observability | Use Synthetic Monitoring for Website Metadata Verification

If you are on Splunk Observability Cloud, you may already have Synthetic Monitoringin your observability ...

More Ways To Control Your Costs With Archived Metrics | Register for Tech Talk

Tuesday, May 14, 2024  |  11AM PT / 2PM ET Register to Attend Join us for this Tech Talk and learn how to ...

.conf24 | Personalize your .conf experience with Learning Paths!

Personalize your .conf24 Experience Learning paths allow you to level up your skill sets and dive deeper ...