Skip to content

[DP-12] Move logging infrastructure out of the core #92

Open
@hyperthunk

Description

@hyperthunk

[Imported from JIRA. Reported by Tim Watson [Administrator] @hyperthunk) as DP-12 on 2012-12-17 12:19:35]

I would propose that we provide the basic infrastructure to register logging handlers in distributed-process-platform and build on that to add additional capabilities. Another option is to create a new distributed-process-logging package, but I'd really like to build this on top of gen-server/gen-event stuff we're building into -platform personally.

The only problem I can see with that approach is for example with SimpleLocalNet which replaces the logger process on its slaves with one that relays the messages back to the master. Erlang does something similar in its slave module by redirecting all stdout back to the master.

The obvious solution I can see to this, is to go ahead and move the logging infrastructure, then take the master/slave stuff out of SimpleLocalNet and put it into another package that depends on SimpleLocalNet and on -platform. That's still not quite a clean API design though, because there's an implicit dependency on a specific backend which seems unusual to me.

If someone can come up with an alternative that still allows backends to provide this kind of functionality without creating a tangled mess of dependencies then I'm all ears. Currently the backends do not seem to depend on distributed-process at all, which makes sense. I can't see how we'd do CH logging without the Process monad so I'm questioning whether it really makes sense for backends to have this capability at all?

Perhaps this requires some thought about the packaging requirements for CH and how we go about making it easy for developers to work with.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Status

    Backlog

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions