Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
ruanhaishen
redis
Commits
433cc893
Commit
433cc893
authored
Jun 06, 2009
by
hrothgar
Browse files
add more output
parent
de96dbfe
Changes
1
Hide whitespace changes
Inline
Side-by-side
redis.c
View file @
433cc893
...
@@ -4195,10 +4195,36 @@ static void segvHandler (int sig, siginfo_t *info, void *secret) {
...
@@ -4195,10 +4195,36 @@ static void segvHandler (int sig, siginfo_t *info, void *secret) {
int
i
,
trace_size
=
0
;
int
i
,
trace_size
=
0
;
long
offset
=
0
;
long
offset
=
0
;
ucontext_t
*
uc
=
(
ucontext_t
*
)
secret
;
ucontext_t
*
uc
=
(
ucontext_t
*
)
secret
;
time_t
uptime
=
time
(
NULL
)
-
server
.
stat_starttime
;
redisLog
(
REDIS_DEBUG
,
"Segmentation fault -%d- Redis %s"
,
sig
,
REDIS_VERSION
);
redisLog
(
REDIS_DEBUG
,
"EIP %p"
,
(
void
*
)
uc
->
uc_mcontext
.
gregs
[
REG_EIP
]);
redisLog
(
REDIS_WARNING
,
"application: redis, signal: segmentation fault -%d-"
,
REDIS_VERSION
,
sig
);
redisLog
(
REDIS_DEBUG
,
"EAX %p, EBX %p, ECX %p, EDX %p"
,
(
void
*
)
uc
->
uc_mcontext
.
gregs
[
REG_EAX
],
(
void
*
)
uc
->
uc_mcontext
.
gregs
[
REG_EBX
],
(
void
*
)
uc
->
uc_mcontext
.
gregs
[
REG_ECX
],
(
void
*
)
uc
->
uc_mcontext
.
gregs
[
REG_EDX
]);
redisLog
(
REDIS_WARNING
,
"%s"
,
sdscatprintf
(
sdsempty
(),
"redis_version:%s; "
"uptime_in_days:%d; "
"connected_clients:%d; "
"connected_slaves:%d; "
"used_memory:%zu; "
"changes_since_last_save:%lld; "
"bgsave_in_progress:%d; "
"last_save_time:%d; "
"total_connections_received:%lld; "
"total_commands_processed:%lld; "
"role:%s;"
,
REDIS_VERSION
,
uptime
,
listLength
(
server
.
clients
)
-
listLength
(
server
.
slaves
),
listLength
(
server
.
slaves
),
server
.
usedmemory
,
server
.
dirty
,
server
.
bgsaveinprogress
,
server
.
lastsave
,
server
.
stat_numconnections
,
server
.
stat_numcommands
,
server
.
masterhost
==
NULL
?
"master"
:
"slave"
));
redisLog
(
REDIS_WARNING
,
"EIP %p"
,
(
void
*
)
uc
->
uc_mcontext
.
gregs
[
REG_EIP
]);
redisLog
(
REDIS_WARNING
,
"EAX %p, EBX %p, ECX %p, EDX %p"
,
(
void
*
)
uc
->
uc_mcontext
.
gregs
[
REG_EAX
],
(
void
*
)
uc
->
uc_mcontext
.
gregs
[
REG_EBX
],
(
void
*
)
uc
->
uc_mcontext
.
gregs
[
REG_ECX
],
(
void
*
)
uc
->
uc_mcontext
.
gregs
[
REG_EDX
]);
trace_size
=
backtrace
(
trace
,
100
);
trace_size
=
backtrace
(
trace
,
100
);
...
@@ -4214,10 +4240,10 @@ static void segvHandler (int sig, siginfo_t *info, void *secret) {
...
@@ -4214,10 +4240,10 @@ static void segvHandler (int sig, siginfo_t *info, void *secret) {
tmp
=
strstr
(
messages
[
i
],
pointer
[
i
]);
tmp
=
strstr
(
messages
[
i
],
pointer
[
i
]);
if
((
tmp
-
2
)[
0
]
!=
')'
){
if
((
tmp
-
2
)[
0
]
!=
')'
){
char
*
a
=
findFuncName
(
trace
[
i
],
&
offset
);
char
*
a
=
findFuncName
(
trace
[
i
],
&
offset
);
redisLog
(
REDIS_
DEBUG
,
"[bt]
(%s+%x) %s"
,
a
,
(
unsigned
int
)
offset
,
tmp
);
redisLog
(
REDIS_
WARNING
,
"#%d
(%s+
0x
%x) %s"
,
i
,
a
,
(
unsigned
int
)
offset
,
tmp
);
}
}
else
else
redisLog
(
REDIS_
DEBUG
,
"[bt]
%s"
,
messages
[
i
]);
redisLog
(
REDIS_
WARNING
,
"#%d
%s"
,
i
,
messages
[
i
]);
}
}
free
(
messages
);
free
(
messages
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment