Skip to content

Some directories are separate from --user-data-dir #6834

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
code-asher opened this issue Jun 10, 2024 · 6 comments
Open

Some directories are separate from --user-data-dir #6834

code-asher opened this issue Jun 10, 2024 · 6 comments
Labels
bug Something isn't working

Comments

@code-asher
Copy link
Member

code-asher commented Jun 10, 2024

Steps to Reproduce

Set --user-data-dir.

Expected

Everything should move to that directory.

Actual

Some things move, but not:

  • heartbeat
  • coder-logs
  • Generated certificates

Workaround

You can set xdg data home environment variable instead of using the flag.

Notes

Changing this could be considered be a breaking change? If someone was setting --user-data-dir but then relying on these files being in the other location. Not 100% sure how best to proceed. Maybe check if they exist, and if not use the new location, but even that could be breaking.

Maybe introduce a new flag and deprecate --user-data-dir.

@code-asher code-asher added bug Something isn't working triage This issue needs to be triaged by a maintainer labels Jun 10, 2024
@bdkuhman
Copy link

Might be related, or a separate issue.

I'm not setting --user-data-dir but seeing ~/date-time-01-/home/coder/.local/share/code-server/coder-logs/ directories fill up in ~.

the logs look like it's correct though, and that file/dir actually exists.
[CHANGED] /home/coder/.local/share/code-server/coder-logs/code-server-stdout.log

image

My thought is that these directories should exist as /home/coder/.local/share/code-server/coder-logs/date-time-01-/code-server-stdout.log

@code-asher
Copy link
Member Author

Oh weird yeah I got this issue once but then I could never reproduce it. It is especially weird because we are not adding any date time to the file path so I have no idea where it is coming from. Are you on the latest version of code-server?

Do you have any XDG* environment variables set? And just for sanity's sake, is the HOME env var the right value?

@bdkuhman
Copy link

Yep, latest.
Running in kubernetes w/ a deployment yaml.
Only env var I set myself is PASSWORD.
no XDG vars, HOME is /home/coder

I am running with args --log trace, along with the tls args.
I suppose trace logs might be it, but I haven't tried it. this was just left over from debugging other things.

@code-asher
Copy link
Member Author

I was going to experiment with podman run -p 8080:8080 codercom/code-server --log trace and see if I could get it to reproduce, but seems Docker Hub is down right now. 🔥 I will try later!

@bdkuhman
Copy link

bdkuhman commented Jun 21, 2024

I noticed that all the logs that are left over are 10M,
I think it might be hitting the limit and getting rotated out by rotating-file-stream

taking a quick look at the docs, I think the first param for createStream is a filename, not a path.
Additionally there's a path option that:

If present, it is prepended to generated file names as well as for history file.

So I think with trace on, logs have just been getting big enough to be rotated and when they're rotated rfs is prepending the time/date to the whole path, rather than the filename since that's what was passed in.

@code-asher
Copy link
Member Author

Ohhh! Really good find!!! I reproduced by lowering the limit.

Pushed up a fix here: d431c9c

Thank you for figuring this out. It will make it into the 4.90.3 release today.

@code-asher code-asher removed the triage This issue needs to be triaged by a maintainer label Jul 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants