sitespeedio / sitespeed.io

sitespeed.io is an open-source tool for comprehensive web performance analysis, enabling you to test, monitor, and optimize your website’s speed using real browsers in various environments.
https://www.sitespeed.io/
MIT License
4.75k stars 603 forks source link

Can't connect to graphite host #3094

Closed georgejeffery closed 4 years ago

georgejeffery commented 4 years ago

Hi there!

I'm trying to get my data into Graphite, and running into some trouble.

I'm running 2 Azure Linux VMs in the same resource group, so they should be able to see each other.

The private ip address for the graphite server is 10.0.0.5. I've tried using that as the host, and i've also tried 10.0.0.5/graphite and 10.0.0.5/[docker name]/graphite as well as the VM name (grafanaserver) and the internal hostname that 10.0.0.5 will resolve to (*.internal.cloudapp.net). Oh, and the public ip, just in case!

I've checked, and the 2003 port is definitely open to TCP connections, and can be seen from the server I'm trying to send from

I've run out of ideas - hoping someone can help!

soulgalore commented 4 years ago

Hi @georgejeffery and no errors in the logs from sitespeed.io? You can try send data just by netcat to see that the machines can talk to each other. Checkout https://graphite.readthedocs.io/en/latest/feeding-carbon.html#the-plaintext-protocol . Send the data, log into the Graphite machine and check the file structure and see if the metric is created.

georgejeffery commented 4 years ago

Hi @soulgalore none that I can see! It renders the html, and then dies with exit code 0. I've testedecho "test.bash.stats 42date +%s" | nc 10.0.0.5 2003 and it's showing up in graphite/graphana.

soulgalore commented 4 years ago

Ok! Then you can verify that the data is really sent. You can do that by turning on verbose logging. Running on my local machine I tested it with--graphite.host 127.0.0.1 -vvv --headless https://www.sitespeed.io -n 1 (-vvv is the magic) and then it logs where it will send the data and a lot of verbose entries where each metrics is logged, do you see that too when you try?

[2020-07-22 00:00:02] DEBUG: [sitespeedio.plugin.graphite] Send data to Graphite 127.0.0.1:2003
[2020-07-22 00:00:02] VERBOSE: [sitespeedio.plugin.graphite] Sending sitespeed_io.default.summary.www_sitespeed_io.chrome.native.pagexray.contentTypes.html.transferSize.median 8941 1595368793
sitespeed_io.default.summary.www_sitespeed_io.chrome.native.pagexray.contentTypes.html.transferSize.mean 8941 1595368793
georgejeffery commented 4 years ago

OK! The last thing it does is render the HTML before dying. I can't see anything in the logs about sending data - before the html rendering is a bunch of json, and then my console runs out of space, so it could be before then?

georgejeffery commented 4 years ago

Looks like I managed to fix it! Thanks for your help!