Hi all,
I am using Embedded Weaviate (version 1.21), via python client on a shared machine. When running Weaviate in embedded mode, it listens to a number of ports. One of them is port 6060, which is apparently used for Go profiling. I don’t need to do profiling and it is problematic if multiple instance of Weaviate are running
Is it possible to disable Go profiling or assign a different port number than 6060?
Hi @AN_Colab !! Welcome to our community!! 
You can pass some parameters to Weaviate EmbeddedOptions:
https://weaviate-python-client.readthedocs.io/en/stable/weaviate.html#weaviate.EmbeddedOptions
like so:
import weaviate
from weaviate import EmbeddedOptions
client = weaviate.Client(
embedded_options=EmbeddedOptions(port=1234)
)
But please, bear in mind that Weaviate Embedded is marked as experimental, and should not be used in production.
Let me know if that helps 
Thank you !
I am indeed using the way you suggested to pass parameter.
Unfortunately, I couldn’t figure out the parameter to change port 6060.
The port
parameter changes the HTTP port, also there is a parameter to change the GRPC port, but there is nothing to to change this profiling port (or to disable profiling).
Oh, I see. I don’t think this is possible with the embedded option as you have limited options when starting an Embedded Weaviate instance.
I believe docker compose is the best option here, as you will be able to have a better control on port mappings.
1 Like
Just answering for future reference. I haven’t tested it, but you could try disabling Go profiling altogether. At least with v4.
import weaviate
client = weaviate.connect_to_embedded(
environment_variables={"DISABLE_GO_PROFILING": "true"},
)
hi @Guillermo_Ripa !! Welcome to our community 
Ohhhh. Now I see! Nice catch!
the port 6060
comes from the Go profiling!
It took me some time to figure out that this env var was wrong in our docs 
So this will work:
client = weaviate.connect_to_embedded(
environment_variables={"GO_PROFILING_DISABLE": "true"},
)
Thanks for pointing it out!
Here is the PR: Add correct go profiling env vars by dudanogueira · Pull Request #2480 · weaviate/weaviate-io · GitHub
1 Like