package My::ABC has 'db_accessor' => ( is => 'rw', isa => 'My::DEF', ); #### around 'db_accessor => sub { my $orig = shift; my $self = shift; my $out; eval { $out = $self->$orig(@_) }; if ($@) { $self->warn("Access failed with: [$@]"); } else { return $out; } };