seashells-server icon indicating copy to clipboard operation
seashells-server copied to clipboard

24h expire time limit makes seashell unpractical for real life use

Open ssbarnea opened this issue 7 years ago • 5 comments

I often need to share execution logs for code reviewing, as a proof that the new behaviour works.

Now the big problem is that code reviewing take time, in 99% of cases more than 24h, probably even more than a week.

Usually I would use gists but those also have two major limitations:

  • not coloured, so much harder to read long logs (like ansible output)
  • not streamed, meaning that they will not be accessible until the command finishes, which can slow you down a lot, especially when the runnings command takes 30-2h to run on average.

ssbarnea avatar Jul 31 '18 09:07 ssbarnea

Live sessions are retained indefinitely. There is a 5 sessions/IP limit, and dead/completed sessions are GCed after 24 hours. There's also a limit on the number of bytes per session, and that data is stored in a circular buffer, so only the last N bytes are retained.

Unlimited retention is infeasible due to abuse. (There are already a lot of people occasionally running seashells < /dev/urandom, sending me random bytes at 100 Mbit/sec)

Maybe this will become an option for non-anonymous users once we get a user account system.

anishathalye avatar Jul 31 '18 11:07 anishathalye

I can understand the need to protect from abuse. Still if nothing happens soon I may face "investing" few weekends on writing an open-source server, to escape the limitations.

PS. I could guess that the reason for not having the sever open source would be that you may be interested to build a PaaS model. At the same time this means that you may miss a huge number of users and contributors (i know for sure a big number of users would not even try it just because they would do almost anything to avoid a vendor lock-in). Look at GitLab, is open source but people still pay for it (lots of other examples). People are likely to pay for the commodity of using a hosting service, especially when they know they could run their own service, if they are no longer pleased with TOS ;)

ssbarnea avatar Aug 03 '18 15:08 ssbarnea

I guess that is why no practical example is given n README. it all sounds so nice - but breaks down in the real world of course like all webtech I've ever seen.

dimyme avatar Apr 27 '19 06:04 dimyme

Live sessions are retained indefinitely. There is a 5 sessions/IP limit, and dead/completed sessions are GCed after 24 hours. There's also a limit on the number of bytes per session, and that data is stored in a circular buffer, so only the last N bytes are retained.

Hi, what do you mean here with "Live sessions" ? I am having also the issue of a "sessions" expiring after some hours/days. Should a "Live session" still be retained indefinitely?

What I do is the following: while true ; do clear ; _some_command_ ; _some_other_command_ ; sleep 1m ; done | seashells -q -d 30 &

Should that output then be retained indefinitely?

Thanks, Richard

rems0 avatar Jun 23 '22 13:06 rems0

It'll retain output as long as your TCP connection to Seashells isn't broken. Seashells isn't designed to store data long-term.

anishathalye avatar Jun 25 '22 16:06 anishathalye

Closing due to age / inactivity. I am not planning on implementing this right now.

anishathalye avatar Dec 26 '24 04:12 anishathalye