Nodes > ‘API browser’ button links to http://127.0.0.1:12900/api-browser. I can’t seem to change this link to either an External IP or hostname. Do I need to update at code level? (server.conf below)
If I manually browse to http://externalip/api-browser I get to the login page but there is no login/submit button (logo, user and pwd fields only). Therefore I am unable to browse the API for this node.
Everything else functions as expected with no issues. I just can’t seem to access /api-browser. Any help appreciated.
The API browser button on the System → Nodes page will always use rest_transport_uri to build the URI.
The intention is to be able to use the API browser of a specific node and not of a random node which potentially is being returned by a load-balancer or reverse proxy.
I’m presuming I have an issue with my nginx setup? See results from the local command line:
curl 127.0.0.1:12900
{“cluster_id”:“xxxxx”,“node_id”:“xxxxx”,“version”:“2.2.3+7adc951”,“tagline”:“Manage your logs in the dark and have lasers going and make it look like you’re from space!”}
curl 127.0.0.1:12900/api
Shows Graylog Web Interface html page.
curl 127.0.0.1/api-browser
Shows REST API browser html.
127.0.0.1/api-browser reveals the api browser page from commandline. I can get to the API Browser page in my web browser by going to http://externalip/api-browser which shows user and password fields but can’t login.
2017-05-10T16:00:46.473Z WARN [BaseConfiguration] “http://0.0.0.0:12900/” is not a valid setting for “rest_transport_uri”. Using default [http://10.10.10.10:12900/]. - it defaults to the internal IP of the server.
If I change rest_transport_uri to the external IP of the server I see the following in the log:
As Jochen mentioned the GrayLog server in this case needs to access itself via Public IP in this case. As I am working with an EC2 I set an inbound rule on port 12900 from the servers own external source IP.