@@ -164,6 +164,7 @@ public function testAttributesAreAddedToLogMessage(): void
164164 {
165165 $ client = ClientBuilder::create ([
166166 'enable_logs ' => true ,
167+ 'send_default_pii ' => true ,
167168 'release ' => '1.0.0 ' ,
168169 'environment ' => 'production ' ,
169170 'server_name ' => 'web-server-01 ' ,
@@ -210,6 +211,37 @@ public function testAttributesAreAddedToLogMessage(): void
210211 $ this ->assertSame ('my_user ' , $ attributes ->get ('user.name ' )->getValue ());
211212 }
212213
214+ public function testUserAttributesAreNotAddedToLogMessageWhenSendDefaultPiiIsDisabled (): void
215+ {
216+ $ client = ClientBuilder::create ([
217+ 'enable_logs ' => true ,
218+ 'send_default_pii ' => false ,
219+ ])->getClient ();
220+
221+ $ hub = new Hub ($ client );
222+ SentrySdk::setCurrentHub ($ hub );
223+
224+ $ hub ->configureScope (static function (Scope $ scope ) {
225+ $ userDataBag = new UserDataBag ();
226+ $ userDataBag ->setId ('unique_id ' );
227+ $ userDataBag ->setEmail ('foo@example.com ' );
228+ $ userDataBag ->setUsername ('my_user ' );
229+ $ scope ->setUser ($ userDataBag );
230+ });
231+
232+ $ aggregator = new LogsAggregator ();
233+ $ aggregator ->add (LogLevel::info (), 'User performed action ' );
234+
235+ $ logs = $ aggregator ->all ();
236+ $ this ->assertCount (1 , $ logs );
237+
238+ $ attributes = $ logs [0 ]->attributes ();
239+
240+ $ this ->assertNull ($ attributes ->get ('user.id ' ));
241+ $ this ->assertNull ($ attributes ->get ('user.email ' ));
242+ $ this ->assertNull ($ attributes ->get ('user.name ' ));
243+ }
244+
213245 public function testFlushesImmediatelyWhenThresholdIsReached (): void
214246 {
215247 StubTransport::$ events = [];
0 commit comments