コード例 #1
0
ファイル: service.c プロジェクト: zhoukk/service
static void log_socket(FILE *f, void *data) {
	struct socket_message *m = (struct socket_message *)data;
	if (m->type == SOCKET_DATA) {
		fprintf(f, "[socket] %d %d %d\n", m->id, m->type, m->size);
		log_blob(f, m->data, m->size);
		fprintf(f, "\n");
		fflush(f);
	}
}
コード例 #2
0
ファイル: service.c プロジェクト: zhoukk/service
void log_output(FILE *f, struct message *m) {
	if (m->proto == SERVICE_PROTO_SOCKET) {
		log_socket(f, m->data);
	} else {
		uint32_t ti = timer_now();
		fprintf(f, "[%u] %d %d %u\n", m->source, m->proto, m->session, ti);
		log_blob(f, m->data, m->size);
		fprintf(f, "\n");
		fflush(f);
	}
}
コード例 #3
0
ファイル: skynet_log.c プロジェクト: 109383670/skynet
void 
skynet_log_output(FILE *f, uint32_t source, int type, int session, void * buffer, size_t sz) {
	if (type == PTYPE_SOCKET) {
		log_socket(f, buffer, sz);
	} else {
		uint32_t ti = skynet_gettime();
		fprintf(f, ":%08x %d %d %u ", source, type, session, ti);
		log_blob(f, buffer, sz);
		fprintf(f,"\n");
		fflush(f);
	}
}
コード例 #4
0
ファイル: skynet_log.c プロジェクト: 109383670/skynet
static void
log_socket(FILE * f, struct skynet_socket_message * message, size_t sz) {
	fprintf(f, "[socket] %d %d %d ", message->type, message->id, message->ud);

	if (message->buffer == NULL) {
		const char *buffer = (const char *)(message + 1);
		sz -= sizeof(*message);
		const char * eol = memchr(buffer, '\0', sz);
		if (eol) {
			sz = eol - buffer;
		}
		fprintf(f, "[%*s]", (int)sz, (const char *)buffer);
	} else {
		sz = message->ud;
		log_blob(f, message->buffer, sz);
	}
	fprintf(f, "\n");
	fflush(f);
}