Changeset 11612 for branches

Show
Ignore:
Timestamp:
11/10/08 16:11:38 (8 weeks ago)
Author:
javier.amor.garcia@…
Message:

moere changes to allow multi-table modules refs #1149

Location:
branches/pop-proxy-branch/ebox/src/EBox
Files:
3 modified

Legend:

Unmodified
Added
Removed
  • branches/pop-proxy-branch/ebox/src/EBox/Loggerd.pm

    r11607 r11612  
    8282    if (EBox::Config::configkey('debug') eq 'yes') { 
    8383        open(STDOUT, "+>$tmp/stout"); 
    84           open(STDERR, "+>$tmp/stderr"); 
     84        open(STDERR, "+>$tmp/stderr"); 
    8585    } 
    8686     
     
    9999     
    100100    pipe $piperd, $pipewr; 
    101     $SIG {"INT"} = \&int_handler; 
     101    $SIG{"INT"} = \&int_handler; 
    102102     
    103103    my @loghelpers = @{$self->{'loghelpers'}}; 
     
    105105        for my $file (@{$obj->logFiles()}) { 
    106106            my $tail; 
    107             eval { $tail = File::Tail->new(name => $file,  
    108                                            interval => 1, maxinterval => 1, 
    109                                            ignore_nonexistant => 1)}; 
     107            eval {  
     108                $tail = File::Tail->new(name => $file,  
     109                                        interval => 1, maxinterval => 1, 
     110                                        ignore_nonexistant => 1) 
     111               }; 
    110112 
    111113            if ($@) { 
  • branches/pop-proxy-branch/ebox/src/EBox/Logs.pm

    r11604 r11612  
    104104    my ($self) = @_; 
    105105         
    106     $self->_saveEnabledLogs(); 
     106    $self->_saveEnabledLogsModules(); 
    107107    _stopService(); 
    108108 
     
    212212    my $global = EBox::Global->getInstance(); 
    213213 
    214     my $enabledLogs = $self->_restoreEnabledLogs();  
     214    my $enabledLogs = $self->_restoreEnabledLogsModules();  
    215215         
    216216    # If there's no configuration stored it means the user 
     
    222222    my @enabledObjects; 
    223223    my @mods = @{$global->modInstancesOfType('EBox::LogObserver')}; 
    224     foreach my $object (@mods) { 
    225         my @tableInfos; 
    226         my $ti = $object->tableInfo(); 
    227         if (ref $ti eq 'HASH') { 
    228             EBox::warn('tableInfo() in ' . $object->name .   
    229              ' must return a reference to a list of hashes not the hash itself'); 
    230  
    231             @tableInfos = ( $ti ); 
     224    foreach my $mod  (@mods) { 
     225        if ( $enabledLogs->{$mod->name } ) { 
     226            push (@enabledObjects, $mod->logHelper()); 
    232227        } 
    233         else { 
    234             @tableInfos = @{ $ti }; 
    235         } 
    236          
    237         foreach my $tableInfo (@tableInfos) { 
    238             my $domain = $object->tableInfo()->{'index'}; 
    239             if (exists $enabledLogs->{$domain}) { 
    240                 # XXX for now we share the logHelper object by all the log 
    241                 # tables of the same module 
    242                 push (@enabledObjects, $object->logHelper()); 
    243                 last; 
    244             } 
    245         } 
    246  
    247     } 
     228    } 
     229 
    248230 
    249231    return \@enabledObjects; 
     
    681663#       query ebox conf. 
    682664# 
    683 sub _saveEnabledLogs 
     665sub _saveEnabledLogsModules 
    684666{ 
    685667    my ($self) = @_; 
     
    704686} 
    705687 
    706 # Method: _restoreEnabledLogs  
     688# Method: _restoreEnabledLogsModules  
    707689#        
    708690#       (Private) 
    709691#        
    710692#       This function restores the  enabled logs saved in a file by 
    711 #       <EBox::Logs::_saveEnabledLogs> 
     693#       <EBox::Logs::_saveEnabledLogsModules> 
    712694#       We have to do this beacuse the logger daemon will request this 
    713695#       configuration as root user. 
     
    720702#       undef  - if there's no enabled logs stored yet 
    721703#       hash ref containing the enabled logs 
    722 sub _restoreEnabledLogs 
     704sub _restoreEnabledLogsModules 
    723705{ 
    724706    my ($self) = @_; 
  • branches/pop-proxy-branch/ebox/src/EBox/Logs/Model/ConfigureLogDataTable.pm

    r11604 r11612  
    7979# 
    8080#    
    81 sub enabledLogs() 
    82 { 
    83     my $self = shift; 
     81sub enabledLogs 
     82{ 
     83    my ($self) = @_; 
    8484 
    8585    my %enabledLogs; 
     
    9090    return \%enabledLogs; 
    9191} 
     92 
     93 
     94 
     95# sub enabledLogsModules 
     96# { 
     97#     my ($self) = @_; 
     98 
     99#     my %modules; 
     100 
     101#     my $enabledLogs = $self->enabledLogs(); 
     102#     my $allTables  = EBox::Global->modInstance('logs')->getAllTables(); 
     103#     foreach my $index  (keys %{ $enabledLogs }) { 
     104#         exists $allTables->{$index} or  
     105#             throw EBox::Exceptions::Internal( 
     106#                      "$index not found in log tables" 
     107#                                             ); 
     108 
     109#         my $mod = $allTables->{$index}->{'helper'}; 
     110#         $modules{$mod->name()} = $mod; 
     111#     } 
     112 
     113#     return [ values %modules  ]; 
     114# } 
    92115 
    93116# Method: rows  
     
    135158        next if (exists $storedLogDomains{$domain}); 
    136159 
    137         my @tableInfos; 
    138         my $mod = $currentLogDomains{$domain}; 
    139         my $ti = $mod->tableInfo(); 
    140          
     160        my @tableInfos; 
     161        my $mod = $currentLogDomains{$domain}; 
     162        my $ti = $mod->tableInfo(); 
     163         
    141164        if (ref $ti eq 'HASH') { 
    142165            EBox::warn('tableInfo() in ' . $mod->name .   
     
    148171        } 
    149172 
    150         my $enabled = not grep { 
    151           $_->{'disabledByDefault'}   
    152         } @tableInfos; 
     173        my $enabled = not grep { 
     174          $_->{'disabledByDefault'}   
     175        } @tableInfos; 
    153176 
    154177