On Oct 8, 2014, at 11:43 AM, Acácio Centeno <[email protected]> wrote:
> Hello,
>
> I've written the following function to log our internal UUID to access.log:
>
> int
> LogAccessHttp::marshal_proxy_uuid(char *buf)
> {
> const char *str = NULL;
> int len = INK_MIN_ALIGN;
>
> if (buf) {
> if ( m_http_sm->magic == HTTP_SM_MAGIC_ALIVE ) {
> str = m_http_sm->get_uuid();
> } else {
> str = "-";
> }
> len = LogAccess::strlen(str);
> Debug("Azion", "Logando UUID [%d:%s]", len, str);
> marshal_str(buf, str, len);
> }
> return len;
> }
>
> The debug message always logs 40 for the length and the correct UUID,
How many bytes is does get_uuid() return?
> however, on production, sometimes it logs the correct information,
> sometimes it logs garbage like:
>
> 7022d7ceH�5T
> 1534af18I�5T
> 3bbb55ccK�5T
> f3a9bcf5R�5T
>
> (Notice that the last 3 bytes are always the same)
>
> Is there any gotcha I should be aware of when printing the log? Am I doing
> something wrong on the serializer?
>
> Best regards,
> Acácio Centeno
> Software Engineering
> Azion Technologies
> Porto Alegre, Brasil +55 51 3012 3005 | +55 51 8118 9947
> Miami, USA +1 305 704 8816
>
> Quaisquer informações contidas neste e-mail e anexos podem ser
> confidenciais e privilegiadas, protegidas por sigilo legal. Qualquer forma
> de utilização deste documento depende de autorização do emissor, sujeito as
> penalidades cabíveis.
>
> Any information in this e-mail and attachments may be confidential and
> privileged, protected by legal confidentiality. The use of this document
> require authorization by the issuer, subject to penalties.