Closed bugz8unny69 closed 8 years ago
@lhorace I'm having the same issue here. The Task Log is not updated. When I toggle the "Raw Output" option, the task log can be updated. Do we have any updates to fully fix this issue? Thank you so much.
PS: I didn't see this issue when I run the Semaphore in docker.
The task log uses websockets to receive new data. Can you check your browser's logs if this is the case?
@matejkramny I do saw a lot of websocket errors in my browser's console log.
WebSocket connection to 'ws://host:3000/api/ws' failed: Error during WebSocket handshake: Unexpected response code: 403
And it keeps retrying.
Is there anything that could prevent a websocket connection such as running the website on https
or using reverse-proxies such as nginx
?
@matejkramny It seems like I'm running on http and I don't have nginx running on my server. Hmm...
Hmm that's strange.. Try logging out & back in and check the cookies get sent with the websocket request.
You don't have anything in between the browser and the webserver? If no, what webserver are you using? Check the logs, it may not explicitly say why it 403 in detail, you may have to increase logging. 403 is often due to Access Rules. If is the web server is the responsible for the 403 and not Semphore (software). As @matejkramny mentioned, cookies could be the cause as well.
In regards to the question, I haven't use Semphore in quite awhile now, and there have been changes to code.
@matejkramny @lhorace Thank you very much for both of you. I asked a few of my colleagues to test the semaphore for me and some of them can actually see the Task logs have been updated. So I begin to think it's my browser or network issue.
hey @lhorace, sorry for spamming your inbox :P
@haoxinglu please open a new issue
@matejkramny Not a problem at all! I am getting around to updating Semphore :)
Hi,
When I run a task, tasks will remain in the
waiting
state and never reach therunning
state. This is the case when having Nginx as a reverse proxy to Semaphore.nginx.conf
_semaphoreconfig.json
Attempting to debug the issue using Firefox Developer network tool, I see a lot of WebSockets failing with 400 Bad Request to /api/ws. See HTTP headers below:
Request Headers
Response Headers HTTP 400 Bad Request
Since your Installation Wiki does state that reverse proxies are supported, I must be doing something wrong here?
Edit1: Here is a copy of the Semaphore log
At first glance,Nginxmight be strippingis not sending the HTTPUpgrade: websocket
header.I am looking further into it.See Nginx Websockets. I need to explicitly forward theUpgrade: websocket
header to Semaphore.This partially fixes the issue, I get output information, unfortunately the status still remains in the
waiting
state while the task is running.Started
andEnded
are only updated after the completion of the task.