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
Per-application log files for Apache/Nginx integration mode #1279
Comments
+1 |
3 similar comments
+1 |
👍 |
+1 |
+1 This would be a great addition! |
+1 :P |
+1 |
That's a great idea, and we would love to see this feature bein added to Passenger. Thanks! 👍 +1 |
+1 |
8 similar comments
+1 |
+1 |
+1 |
+1 |
+1 |
+1 |
+1 |
+1 |
I think this has been addressed in the upcoming raptor release. |
It hasn't. It is not implemented yet. |
Unless you count the standalone mode. In the standalone mode you run a different Passenger instance per app, and so you have individual log files. But if you use the Nginx integration mode or the Apache integration mode, then that cannot separate log files per app yet. |
+1 to this, it's really weird to get all of my Rails stdout in the nginx error.log... |
+1 |
1 similar comment
+1 |
+1 (enterprise customer) |
+1 |
+1, enterprise. |
+1 |
1 similar comment
+1 |
@msva are you not able to use a logging framework? |
@OnixGH We're sorry, we ain't that smart as you are. cough |
@Eduardjs what do you mean? I wasn't being sarcastic, I just wonder why using a logging framework isn't a good workaround, since they are generally recommended anyway, as well as dedicated to this purpose (so probably offer more flexibility)? I can understand the case that it would be a great thing to have available "by default" (through Passenger), so you don't have to use anything else for the simple logging needs, but it somehow seems like @msva is blocked by not having it so I'm interested in why a logging framework (apparently?) isn't an option. Anyway keep it nice please.. |
First of all, sometimes, it is needed to hook messages even before application
is started (if you mean intergrating logging in the application),
And sometimes it is not as easy as sounds like (AFAIRC, someone here wrote
about node applications in that context).
======
Anyway, like it was already said, it will be pretty perfect, if passenger at
least obeyed NginX's access_log/error_log/log_format settings.
|
@msva we need to take into account that Passenger is also used with Apache as well as in reverse proxy setups. I don't see anything about node in this thread, but can you say something about your own use case? People in this thread are asking for different things (which are not always compatible) so it's most valuable to know the use cases. Btw. last month I tried something that might be relatively easy to implement, in line with what @wyardley suggested. We could prefix the app's stdout/stderr logging with application group name like in the example below (
This would allow for per-(spawned)-application logs with a simple tailgrep (which could for example be started / stopped automatically using the attached_process / detached_process hooks. |
FWIW, we mostly just use Winston + syslog transport with node projects that we run through Passenger (though I'd still love to see a more elegant fix for this problem as well). |
+1 I've been wanting this for a long time. |
+1 As for the requests for "unified" with nginx directives - i think that isn't necessary if atleast the current passenger_log directive would instead of being global - be app specific would be enough. |
Is it any progress? The issue has been reported 3 years ago, and it has [Priority/High] and [EnterpriseCustomer] tags for 1.5 years already, but looks like still not fixed in any way 😿 P.S. @OnixGH, mostly, people (including me) just want that passenger either obey nginx access_log/error_log directives, or had the possibility to set |
@msva I know it's not what you want to hear, but we don't consider it something that is broken, especially not since there are workarounds to achieve per-application log separation through additional tools (logging libraries, parse/forwarders,, etc.). We did recently spend some rewriting effort in the logging department to make some parts easier (leading to a bonus of supporting log level display), but the core of the matter is that log separation is not something that is easy to realize (which is probably also why, despite the apparent popularity, we also haven't really gotten any patch submissions :( ). I keep the Prio label on to make sure it has our (continued) attention (and it certainly does), but I also want to be clear that there is no roadmap for this feature at this time, We are hiring though to further expand what we can spend on Passenger :). |
This feature is now available in the Fuse Panel. |
+2! Super awesome!!
Sincerely,
<https://codementor.io/idometeor>
[image: Jason White aka @iDoMeteor] <https://codementor.io/idometeor>
…On Wed, Apr 4, 2018 at 5:25 AM, OnixGH ***@***.***> wrote:
This feature is now available in the Fuse Panel
<https://www.phusionpassenger.com/fuse-panel>.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#1279 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ALNqvIrDMBObjrDOIzw0d6sUCTgI8fRpks5tlJFygaJpZM4Chs7g>
.
|
And also added to Passenger 5.3.0 (Enterprise). |
Currently, all application stdout and stderr output is redirected to a single log file. Lately there seems to be more interest among users - in particular Node.js users - to have per-application log files.
We're considering adding this feature. If you'd like to see the feature too, please vote for it here. Note that we weight votes from Enterprise customers more heavily, so if you're an Enterprise customer please mention that here.
Edit: If working on this also see the (probably outdated) patch in #260.
The text was updated successfully, but these errors were encountered: