Skip to content

Instantly share code, notes, and snippets.

@MBurchard
Created November 19, 2022 15:25
Show Gist options
  • Save MBurchard/e166dc0c3c041c7e6f179efd88385cdb to your computer and use it in GitHub Desktop.
Save MBurchard/e166dc0c3c041c7e6f179efd88385cdb to your computer and use it in GitHub Desktop.
snowflake-proxy service
[Unit]
Description=Snowflake
Wants=network.target
After=syslog.target network-online.target
StartLimitIntervalSec=300
StartLimitBurst=10
[Service]
Type=simple
ExecStart=/home/snowflake/snowflake/proxy/proxy -verbose
Restart=on-failure
RestartSec=5
KillMode=process
User=snowflake
Group=snowflake
StandardOutput=append:/var/log/snowflake.log
StandardError=append:/var/log/snowflake.log
[Install]
WantedBy=multi-user.target
@Byggvir
Copy link

Byggvir commented Nov 19, 2022

Instead of defining Stdout and StdErr you can use the parameter -log /var/log/snowflake/snowflake.log

Directory / log file must be writeable by snowflake

@MBurchard
Copy link
Author

Instead of defining Stdout and StdErr you can use the parameter -log /var/log/snowflake/snowflake.log

Yes, this is an alternative solution, that leads to the same result (hopefully)
The chosen solution also logs unexpected errors that might not have been in the log file otherwise.

Directory / log file must be writeable by snowflake

Yes as usual on Linux. /var/log/ works perfectly well on my Raspberry Pi.

@Byggvir
Copy link

Byggvir commented Nov 19, 2022

I had some problems with permissions. snowflake hat no permission to access / create the log-file.

@MBurchard
Copy link
Author

I had some problems with permissions. snowflake hat no permission to access / create the log-file.

Interesting, but when I look at the rights right now, I can't understand it.

drwxr-xr-x  9 root root       4096 18. Nov 15:14 log

-rw-r--r--  1 root     root            205K 19. Nov 23:24 snowflake.log

After this brief analysis, I would say that my snowflake proxy is not running as user snowflake, even though it should be according to the configuration (see above).

@MBurchard
Copy link
Author

I'm confused... the user running the process is snowflake as it should be.

ps -aux | grep proxy
snowfla+    3018  1.9  0.8 1306960 66696 ?       Ssl  Nov18  39:20 /home/snowflake/snowflake/proxy/proxy -verbose

I don't understand why this process is allowed to write to the logfile...

@Byggvir
Copy link

Byggvir commented Nov 19, 2022

It's running fine with:

pi@pi1:~ $ sudo ls -l /var/log/snowflake
insgesamt 4
-rw------- 1 snowflake snowflake 3871 20. Nov 00:44 snowflake.log

I have put the installation steps into a tiny repository.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment