aboutsummaryrefslogtreecommitdiff
path: root/weed/util/grace/signal_handling.go
diff options
context:
space:
mode:
Diffstat (limited to 'weed/util/grace/signal_handling.go')
-rw-r--r--weed/util/grace/signal_handling.go8
1 files changed, 8 insertions, 0 deletions
diff --git a/weed/util/grace/signal_handling.go b/weed/util/grace/signal_handling.go
index 14b998796..0fc0f43e1 100644
--- a/weed/util/grace/signal_handling.go
+++ b/weed/util/grace/signal_handling.go
@@ -4,8 +4,11 @@
package grace
import (
+ "github.com/seaweedfs/seaweedfs/weed/glog"
"os"
"os/signal"
+ "reflect"
+ "runtime"
"sync"
"syscall"
)
@@ -16,6 +19,10 @@ var interruptHookLock sync.RWMutex
var reloadHooks = make([]func(), 0)
var reloadHookLock sync.RWMutex
+func GetFunctionName(i interface{}) string {
+ return runtime.FuncForPC(reflect.ValueOf(i).Pointer()).Name()
+}
+
func init() {
signalChan = make(chan os.Signal, 1)
signal.Notify(signalChan,
@@ -38,6 +45,7 @@ func init() {
} else {
interruptHookLock.RLock()
for _, hook := range interruptHooks {
+ glog.V(4).Infof("exec interrupt hook func name:%s", GetFunctionName(hook))
hook()
}
interruptHookLock.RUnlock()