LOG controller no more working?

#1
Hi all,
in an old project using CasparCG v2.1.0 I had in config file this option:

Code: Select all

  <controllers>
    <tcp>
      <port>5250</port>
      <protocol>AMCP</protocol>
    </tcp>
    <tcp>
      <port>3250</port>
      <protocol>LOG</protocol>
    </tcp>
  </controllers>
AMCP controller works fine, but LOG controller not and I receive this error in the log file:

Code: Select all

[2018-03-08 02:13:35.542] [error]   C:\Program Files (x86)\Jenkins\workspace\casparcg-server\master\src\shell\server.cpp(276): Throw in function class caspar::spl::shared_ptr<class caspar::IO::protocol_strategy_factory<char> > __cdecl caspar::server::impl::create_protocol(const class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> > &,const class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> > &) const
[2018-03-08 02:13:35.542] [error]   Dynamic exception type: class boost::exception_detail::clone_impl<struct caspar::user_error>
[2018-03-08 02:13:35.542] [error]   [struct caspar::tag_msg_info * __ptr64] = Invalid protocol: LOG
[2018-03-08 02:13:35.542] [error]   [struct caspar::tag_stacktrace_info * __ptr64] =  0# 0x00007FF760CE8A8E in casparcg
[2018-03-08 02:13:35.542] [error]    1# 0x00007FF760D16F50 in casparcg
[2018-03-08 02:13:35.542] [error]    2# 0x00007FF760D0E1E9 in casparcg
[2018-03-08 02:13:35.542] [error]    3# 0x00007FF760D1558E in casparcg
[2018-03-08 02:13:35.542] [error]    4# 0x00007FF760D170FC in casparcg
[2018-03-08 02:13:35.542] [error]    5# 0x00007FF760CEBF93 in casparcg
[2018-03-08 02:13:35.542] [error]    6# 0x00007FF760CEF758 in casparcg
[2018-03-08 02:13:35.542] [error]    7# 0x00007FF7610A66C8 in casparcg
[2018-03-08 02:13:35.542] [error]    8# BaseThreadInitThunk in KERNEL32
[2018-03-08 02:13:35.542] [error]    9# RtlUserThreadStart in ntdll
[2018-03-08 02:13:35.542] [error]   
[2018-03-08 02:13:35.542] [error]   
[2018-03-08 02:13:35.615] [fatal]    Please check the configuration file (casparcg.config) for errors.
I see that LOG controller is removed. There's another way to receive log lines in an app at this moment?

Thank you very much.

Lapo

Re: LOG controller no more working?

#4
AFAIK they are the same thing- a port you connect to which will deliver log messages. Anyway, look at the output of "netstat -na" to see if anything is listening on 3250. If you really need that, you may have to use 2.1 (or build your own version of 2.2).

You can use "tail -f" on the log file or open it for read and keep seeking to the end, but neither of those will handle the midnight file rollover.

z!

Re: LOG controller no more working?

#5
zbang wrote:
09 Mar 2018, 05:59
You can use "tail -f" on the log file or open it for read and keep seeking to the end, but neither of those will handle the midnight file rollover.
File watcher on the directory would handle midnight rollover.

Also, spawning CasparCG from your own process should allow you to listen to stdout.
CasparCG enthusiast and broadcast geek

Re: LOG controller no more working?

#6
Thank you very much.
I asked this because I thought that you removed LOG TCP to implement a different way.

I can live without it for sure.
I used the log to be informed and to reconnect after FFMPEG consumer disconnection, because, at least in v2.1.0, I and a few forum members cannot find another solution.

Anyway, I'll try both of your solutions to choose the best for my needs.
Have a nice day!

Lapo