Running snowplow in a container on AWS ECS


#1

Hi

I am currently deploying snowplow scala-stream-collector in a container on ECS.

I have it working, kind of, but it seems to shutdown every minute or so.
I use this docker file to build the container:
https://github.com/Jyllands-Posten/snowplow/blob/master/2-collectors/scala-stream-collector/Dockerfile

In the logs, I get no error, the last few lines are:

    
    11:32:17
    11:32:17.949 [scala-stream-collector-akka.actor.default-dispatcher-4] DEBUG s.can.server.HttpServerConnection - Dispatching GET request to http://ip:34023/ to handler Actor[akka://scala-stream-collector/system/IO-TCP/selectors/$a/3#-1631676809]
    
    11:32:17
    11:32:17.952 [scala-stream-collector-akka.actor.default-dispatcher-14] DEBUG s.can.server.HttpServerConnection - TcpConnection terminated, stopping
    
    11:32:17
    11:32:17.952 [scala-stream-collector-akka.actor.default-dispatcher-14] DEBUG s.can.server.HttpServerConnection - Connection was ConfirmedClosed, awaiting TcpConnection termination...
    
    11:32:17
    11:32:17.952 [scala-stream-collector-akka.actor.default-dispatcher-14] DEBUG s.can.server.HttpServerConnection - Dispatching GET request to http://ip:34023/ to handler Actor[akka://scala-stream-collector/system/IO-TCP/selectors/$a/4#1611620968]
    
    11:32:17
    11:32:17.955 [scala-stream-collector-akka.actor.default-dispatcher-12] DEBUG s.can.server.HttpServerConnection - Connection was ConfirmedClosed, awaiting TcpConnection termination...
    
    11:32:17
    11:32:17.956 [scala-stream-collector-akka.actor.default-dispatcher-12] DEBUG s.can.server.HttpServerConnection - TcpConnection terminated, stopping

We have a lot of other services running on ECS, so we believer that we know what we are doing.
It just seems that the collector shuts down for no particular reason


#2

ok, so it turns out I was just really stupid:
I forgot to setup a health endpoint.
This means that ECS considers the service unhealthy, and hence restart it.