[Reviewer: Ellie] Craft logging Enhanced Node Troubleshooting 

Added PDLog infrastructure (definition in new header, craft_dcea.h) and PDLogs for http and sip.
The cpp-common log facility defines symbols which are the exact name as defined in syslog.h.  syslog.h is an external "C" file.  To avoid the conflict I created a facade, syslog_facade.h.  The syslog call itself uses varargs to allow printf type of args.  Basically this is a copy of syslog.h but with the LOG_ symbols being defined as PDLOG_ symbols.  Need_va_list is part of that definition.
David Collins

Sent from my iPad

On Sep 26, 2014, at 6:00 AM, "Eleanor Merry" <notifications@github.com<mailto:notifications@github.com>> wrote:


In include/syslog_facade.h:

> + * "OpenSSL Licenses" means the OpenSSL License and Original SSLeay License
> + * under which the OpenSSL Project distributes the OpenSSL toolkit software,
> + * as those licenses appear in the file LICENSE-OPENSSL.
> + */
> +
> +
> +#ifndef SYSLOG_PROXY_H__
> +#define SYSLOG_PROXY_H__
> +
> +#include <features.h>
> +#define __need___va_list
> +#include <stdarg.h>
> +
> +// facade to avoid name collision between syslog.h and log.h
> +
> +extern void closelog (void);


Why do these need to be externed? What's __need_va_list?

—
Reply to this email directly or view it on GitHub<https://github.com/Metaswitch/cpp-common/pull/184/files#r18083688>.