Skip to content

Commit

Permalink
Merge pull request #143 from signify-nz/filter-out-ipaddress
Browse files Browse the repository at this point in the history
Allow client IP address to be filtered out.
  • Loading branch information
robbieaverill committed Nov 29, 2021
2 parents fd1b917 + 1d23df4 commit 648acd7
Show file tree
Hide file tree
Showing 2 changed files with 29 additions and 0 deletions.
4 changes: 4 additions & 0 deletions src/Raygun4php/RaygunClient.php
Original file line number Diff line number Diff line change
Expand Up @@ -420,6 +420,10 @@ public function filterParamsFromMessage($message, $replace = '[filtered]')
array_walk_recursive($message->Details->Request->Data, $walkFn);
}

if ($message->Details->Request->IpAddress) {
$walkFn($message->Details->Request->IpAddress, 'IpAddress');
}

if ($message->Details->UserCustomData) {
array_walk_recursive($message->Details->UserCustomData, $walkFn);
}
Expand Down
25 changes: 25 additions & 0 deletions tests/RaygunClientTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -156,6 +156,31 @@ protected function getEmptyMessage()
return $message;
}

public function testFilterIpAddress()
{
// Ensure IP is not filtered by default.
$this->client->setFilterParams(array('SomethingElse' => true,));
$message = $this->getEmptyMessage();
$message->Details->Request->IpAddress = '0.0.0.0';

$filteredMessage = $this->client->filterParamsFromMessage($message);
$this->assertEquals(
$filteredMessage->Details->Request->IpAddress,
'0.0.0.0'
);

// Ensure IP can be filtered.
$this->client->setFilterParams(array('IpAddress' => true,));
$message = $this->getEmptyMessage();
$message->Details->Request->IpAddress = '0.0.0.0';

$filteredMessage = $this->client->filterParamsFromMessage($message);
$this->assertEquals(
$filteredMessage->Details->Request->IpAddress,
'[filtered]'
);
}

public function testFilterParamsFromMessage()
{
/** @var RaygunMessage&MockObject $message */
Expand Down

0 comments on commit 648acd7

Please sign in to comment.