Skip to content

Commit 2011444

Browse files
committed
simplify
1 parent 08b4607 commit 2011444

5 files changed

Lines changed: 31 additions & 44 deletions

File tree

β€Žfrankenphp.goβ€Ž

Lines changed: 13 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -694,27 +694,26 @@ func go_log(threadIndex C.uintptr_t, message *C.char, level C.int) {
694694
}
695695

696696
//export go_log_attrs
697-
func go_log_attrs(threadIndex C.uintptr_t, message *C.zend_string, level C.zend_long, cattrs *C.zval) *C.char {
697+
func go_log_attrs(threadIndex C.uintptr_t, message *C.zend_string, cLevel C.zend_long, cAttrs *C.zval) *C.char {
698+
ctx := phpThreads[threadIndex].context()
699+
700+
level := slog.Level(cLevel)
701+
702+
if !globalLogger.Enabled(ctx, level) {
703+
return nil
704+
}
705+
698706
var attrs map[string]any
699707

700-
if cattrs == nil {
701-
attrs = nil
702-
} else {
708+
if cAttrs != nil {
703709
var err error
704-
if attrs, err = GoMap[any](unsafe.Pointer(cattrs)); err != nil {
705-
// NOTE: return value is already formatted for a PHP exception message.
710+
if attrs, err = GoMap[any](unsafe.Pointer(cAttrs)); err != nil {
711+
// PHP exception message.
706712
return C.CString("Failed to log message: converting attrs: " + err.Error())
707713
}
708714
}
709715

710-
ctx := phpThreads[threadIndex].context()
711-
712-
if globalLogger.Enabled(ctx, slog.Level(level)) {
713-
globalLogger.LogAttrs(ctx,
714-
slog.Level(level),
715-
GoString(unsafe.Pointer(message)),
716-
mapToAttr(attrs)...)
717-
}
716+
globalLogger.LogAttrs(ctx, level, GoString(unsafe.Pointer(message)), mapToAttr(attrs)...)
718717

719718
return nil
720719
}

β€Žfrankenphp_test.goβ€Ž

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -425,7 +425,7 @@ my_autoloader`, i), body)
425425

426426
func TestLog_module(t *testing.T) { testLog(t, &testOptions{}) }
427427
func TestLog_worker(t *testing.T) {
428-
testLog(t, &testOptions{workerScript: "log.php"})
428+
testLog(t, &testOptions{workerScript: "log-error_log.php"})
429429
}
430430
func testLog(t *testing.T, opts *testOptions) {
431431
logger, logs := observer.New(zapcore.InfoLevel)
@@ -1064,22 +1064,18 @@ func FuzzRequest(f *testing.F) {
10641064

10651065
func TestFrankenPHPLog(t *testing.T) {
10661066
var buf bytes.Buffer
1067-
handler := slog.NewTextHandler(&buf, &slog.HandlerOptions{Level: slog.LevelDebug})
1068-
logger := slog.New(handler)
10691067

10701068
runTest(t, func(handler func(http.ResponseWriter, *http.Request), _ *httptest.Server, _ int) {
1071-
body, _ := testGet("http://example.com/log_to_slog.php", handler, t)
1069+
body, _ := testGet("http://example.com/log-frankenphp_log.php", handler, t)
10721070
assert.Empty(t, body)
10731071
}, &testOptions{
1074-
logger: logger,
1072+
logger: slog.New(slog.NewTextHandler(&buf, &slog.HandlerOptions{Level: slog.LevelDebug})),
10751073
nbParallelRequests: 1,
10761074
nbWorkers: 1,
10771075
})
10781076

10791077
logOutput := buf.String()
10801078

1081-
t.Logf("captured log output: %s", logOutput)
1082-
10831079
for level, needle := range map[string]string{
10841080
"debug attrs": `level=DEBUG msg="some debug message" "key int"=1`,
10851081
"info attrs": `level=INFO msg="some info message" "key string"=string`,
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
<?php
2+
3+
frankenphp_log("some debug message", -4, [
4+
"key int" => 1,
5+
]);
6+
7+
frankenphp_log("some info message", 0, [
8+
"key string" => "string",
9+
]);
10+
11+
frankenphp_log("some warn message", 4);
12+
13+
frankenphp_log("some error message", 8, [
14+
"err" => ["a", "v"],
15+
]);

β€Žtestdata/log_to_slog.phpβ€Ž

Lines changed: 0 additions & 23 deletions
This file was deleted.

0 commit comments

Comments
Β (0)