File Coverage

blib/lib/OpenTracing/Process.pm
Criterion Covered Total %
statement 15 23 65.2
branch n/a
condition 0 8 0.0
subroutine 5 10 50.0
pod 4 5 80.0
total 24 46 52.1


line stmt bran cond sub pod time code
1             package OpenTracing::Process;
2              
3 3     3   23 use strict;
  3         6  
  3         97  
4 3     3   16 use warnings;
  3         15  
  3         157  
5              
6             our $VERSION = '1.005'; # VERSION
7             our $AUTHORITY = 'cpan:TEAM'; # AUTHORITY
8              
9 3     3   461 use parent qw(OpenTracing::Common);
  3         325  
  3         16  
10              
11 3     3   151 no indirect;
  3         6  
  3         14  
12 3     3   142 use utf8;
  3         58  
  3         16  
13              
14             =encoding utf8
15              
16             =head1 NAME
17              
18             OpenTracing::Process - information about a single process
19              
20             =head1 DESCRIPTION
21              
22             Each batch of spans is linked to a process. This can either be a Unix-style process or a more abstract "service"
23             concept.
24              
25             =cut
26              
27             =head1 METHODS
28              
29             =head2 pid
30              
31             The process pid.
32              
33             =cut
34              
35 0   0 0 1   sub pid { shift->{pid} //= $$ }
36              
37             =head2 name
38              
39             The process name. Freeform text string.
40              
41             =cut
42              
43 0   0 0 1   sub name { shift->{name} //= "$0" }
44              
45             =head2 tags
46              
47             Arrayref of tags relating to the process.
48              
49             =cut
50              
51 0     0 1   sub tags { shift->{tags} }
52              
53             =head2 tag_list
54              
55             List of tags for this process.
56              
57             =cut
58              
59             sub tag_list {
60 0   0 0 1   (shift->{tags} //= [])->@*
61             }
62              
63             sub tag : method {
64 0     0 0   my ($self, %args) = @_;
65 0           @{$self->{tags}}{keys %args} = values %args;
  0            
66 0           return $self;
67             }
68              
69             1;
70              
71             __END__