nx_storage_sdk
1.0
Storage SDK
samples
test_storage_plugin
src
log.h
1
// Copyright 2018-present Network Optix, Inc. Licensed under MPL 2.0: www.mozilla.org/MPL/2.0/
2
3
#pragma once
4
5
#define TEST_PLUGIN_LOG
6
7
#if defined(TEST_PLUGIN_LOG)
8
9
#if defined(__linux__)
10
#include <pthread.h>
11
#include <stdio.h>
12
13
#include <sys/time.h>
14
15
#define LOG(...) \
16
do \
17
{ \
18
char ___buf[4096]; \
19
struct timeval ___tval; \
20
gettimeofday(&___tval, NULL); \
21
strftime(___buf, sizeof(___buf), "%H:%M:%S", localtime(&___tval.tv_sec)); \
22
sprintf(___buf + strlen(___buf), ".%06ld\t", ___tval.tv_usec); \
23
sprintf(___buf + strlen(___buf), "%ld\t", pthread_self()); \
24
snprintf(___buf + strlen(___buf), 4096 - strlen(___buf), __VA_ARGS__); \
25
fprintf(stdout, "%s\n", ___buf); \
26
fflush(stdout); \
27
} while (0)
28
#elif defined (_WIN32) || defined(__APPLE__)
29
#define LOG(...)
30
#endif
31
32
#else
33
#define LOG(...)
34
#endif
Generated by
1.8.14