Skip to content

Plug-in to any provider of lines #51

@RolandPheasant

Description

@RolandPheasant

There have been some very interesting requests for enabling Tail Blazer to be the visualisation of external data sources. So far there have been requests for:
#47 Tx Support
#44 Open pipe instead of file
#20 SSH/SFTP Support for Tailing Remote Files

Also but not raised, plug-ins for the following has been asked for:

  • Local instance of Elastic Search
  • Windows event viewer logs
  • TCP and UDP (Log4net, NLog, log4j enable this)

To account for these requests I have completed some major re-architecting and provided some very simple plug-in interfaces which if implemented can be used as a source of lines.

The plug in observable is:

    IObservable<ILineProvider>

And ILineProvider is:

    public interface ILineProvider
    {
        bool IsEmpty { get; }
        int Count { get; }
        IEnumerable<Line> ReadLines(ScrollRequest scroll);
    }

With a little tweaking of my code I will be able to drop IsEmpty and Count as these can be derived from the results.

If the connectivity to each of these can be driven from within Tail Blazer then I see no reason why I couldn't allow external plug-ins for any of these providers + more

Has anyone got any more ideas, or would anyone like to help?

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions