1+ import logging
12import time
23import unittest
34from datetime import datetime
910from posthog .client import Client
1011from posthog .contexts import get_context_session_id , new_context , set_context_session
1112from posthog .request import APIError , GetResponse
13+ from posthog .test .logging_helpers import capture_message_only_logs
1214from posthog .test .test_utils import FAKE_TEST_API_KEY
1315from posthog .types import FeatureFlag , LegacyFlagMetadata
1416from posthog .version import VERSION
@@ -80,6 +82,24 @@ def test_client_with_empty_api_key_is_noop(self):
8082
8183 self .assertIsNone (client .capture ("event" , distinct_id = "distinct_id" ))
8284
85+ def test_message_only_info_logs_include_posthog_prefix (self ):
86+ self .client .flag_cache = mock .Mock ()
87+ self .client .flag_cache .get_stale_cached_flag .return_value = mock .Mock ()
88+
89+ with capture_message_only_logs (level = logging .INFO ) as logs :
90+ self .client ._get_stale_flag_fallback ("distinct_id" , "flag-key" )
91+
92+ self .assertEqual (
93+ logs .getvalue ().strip (),
94+ "[PostHog] [FEATURE FLAGS] Using stale cached value for flag flag-key" ,
95+ )
96+
97+ def test_message_only_logs_do_not_duplicate_existing_posthog_prefix (self ):
98+ with capture_message_only_logs (level = logging .ERROR ) as logs :
99+ self .client .log .error ("[PostHog] already prefixed" )
100+
101+ self .assertEqual (logs .getvalue ().strip (), "[PostHog] already prefixed" )
102+
83103 @mock .patch ("posthog.client.get" )
84104 def test_disabled_client_does_not_load_feature_flags (self , patch_get ):
85105 client = Client ("" , personal_api_key = "test" , send = False )
@@ -386,7 +406,7 @@ def test_basic_capture_exception_with_no_exception_happening(self):
386406 self .assertFalse (patch_capture .called )
387407 self .assertEqual (
388408 logs .output [0 ],
389- "WARNING:posthog:No exception information available" ,
409+ "WARNING:posthog:[PostHog] No exception information available" ,
390410 )
391411
392412 def test_capture_exception_logs_when_enabled (self ):
@@ -396,7 +416,7 @@ def test_capture_exception_logs_when_enabled(self):
396416 Exception ("test exception" ), distinct_id = "distinct_id"
397417 )
398418 self .assertEqual (
399- logs .output [0 ], "ERROR:posthog:test exception\n NoneType: None"
419+ logs .output [0 ], "ERROR:posthog:[PostHog] test exception\n NoneType: None"
400420 )
401421
402422 @mock .patch ("posthog.client.flags" )
0 commit comments