Add process name to trace.
git-svn-id: https://www.unprompted.com/svn/projects/tildefriends/trunk@4160 ed5197a5-7fde-0310-b194-c3ffbd925b24
This commit is contained in:
parent
a8cecb5c64
commit
e0dcec074c
@ -341,6 +341,7 @@ int tf_task_execute(tf_task_t* task, const char* fileName)
|
|||||||
if (!*task->_scriptName)
|
if (!*task->_scriptName)
|
||||||
{
|
{
|
||||||
strncpy(task->_scriptName, fileName, sizeof(task->_scriptName) - 1);
|
strncpy(task->_scriptName, fileName, sizeof(task->_scriptName) - 1);
|
||||||
|
tf_trace_set_process_name(task->_trace, fileName);
|
||||||
}
|
}
|
||||||
if (!task->_path)
|
if (!task->_path)
|
||||||
{
|
{
|
||||||
|
13
src/trace.c
13
src/trace.c
@ -31,6 +31,7 @@ typedef struct _tf_trace_stack_t
|
|||||||
typedef struct _tf_trace_t
|
typedef struct _tf_trace_t
|
||||||
{
|
{
|
||||||
char buffer[k_buffer_size];
|
char buffer[k_buffer_size];
|
||||||
|
char process_name[256];
|
||||||
int write_offset;
|
int write_offset;
|
||||||
|
|
||||||
tf_trace_write_callback_t* callback;
|
tf_trace_write_callback_t* callback;
|
||||||
@ -74,6 +75,11 @@ void tf_trace_destroy(tf_trace_t* trace)
|
|||||||
tf_free(trace);
|
tf_free(trace);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void tf_trace_set_process_name(tf_trace_t* trace, const char* name)
|
||||||
|
{
|
||||||
|
snprintf(trace->process_name, sizeof(trace->process_name), "%s", name);
|
||||||
|
}
|
||||||
|
|
||||||
void tf_trace_raw(tf_trace_t* trace, const char* buffer, size_t size)
|
void tf_trace_raw(tf_trace_t* trace, const char* buffer, size_t size)
|
||||||
{
|
{
|
||||||
trace->callback(trace, buffer, size, trace->user_data);
|
trace->callback(trace, buffer, size, trace->user_data);
|
||||||
@ -216,6 +222,13 @@ char* tf_trace_export(tf_trace_t* trace)
|
|||||||
int begin = newline ? newline - trace->buffer : 0;
|
int begin = newline ? newline - trace->buffer : 0;
|
||||||
size_t size = 0;
|
size_t size = 0;
|
||||||
size += snprintf(buffer, k_buffer_size, "{\"displayTimeUnit\": \"ns\",\n\"traceEvents\": [\n");
|
size += snprintf(buffer, k_buffer_size, "{\"displayTimeUnit\": \"ns\",\n\"traceEvents\": [\n");
|
||||||
|
if (*trace->process_name)
|
||||||
|
{
|
||||||
|
size += snprintf(buffer + size, k_buffer_size - size,
|
||||||
|
"{\"name\":\"process_name\",\"ph\":\"M\",\"pid\":%d,\"args\":{\"name\":\"%s\"}},",
|
||||||
|
getpid(),
|
||||||
|
trace->process_name);
|
||||||
|
}
|
||||||
if (begin)
|
if (begin)
|
||||||
{
|
{
|
||||||
size_t this_size = strlen(trace->buffer + begin);
|
size_t this_size = strlen(trace->buffer + begin);
|
||||||
|
@ -9,6 +9,8 @@ typedef struct sqlite3 sqlite3;
|
|||||||
tf_trace_t* tf_trace_create();
|
tf_trace_t* tf_trace_create();
|
||||||
void tf_trace_destroy(tf_trace_t* trace);
|
void tf_trace_destroy(tf_trace_t* trace);
|
||||||
|
|
||||||
|
void tf_trace_set_process_name(tf_trace_t* trace, const char* name);
|
||||||
|
|
||||||
void tf_trace_counter(tf_trace_t* trace, const char* name, int argc, const char** arg_names, const int64_t* arg_values);
|
void tf_trace_counter(tf_trace_t* trace, const char* name, int argc, const char** arg_names, const int64_t* arg_values);
|
||||||
void tf_trace_begin(tf_trace_t* trace, const char* name);
|
void tf_trace_begin(tf_trace_t* trace, const char* name);
|
||||||
void tf_trace_end(tf_trace_t* trace);
|
void tf_trace_end(tf_trace_t* trace);
|
||||||
|
Loading…
Reference in New Issue
Block a user