---
name: "Log::Agent::Driver::Fork"
section: "3pm"
platform: "linux"
package: "liblog-agent-perl"
version: "1.005-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Log::Agent::Driver::Fork"
---

# Log::Agent::Driver::Fork(3pm)

dummy driver for forking output to multiple drivers

## NAME

Log::Agent::Driver::Fork - dummy driver for forking output to multiple drivers

## SYNOPSIS

```
 use Log::Agent;
 require Log::Agent::Driver::Fork;
 require Log::Agent::Driver::Foo;
 require Log::Agent::Driver::Bar;
 my $driver = Log::Agent::Driver::Fork->make(
     Log::Agent::Driver::Foo->make( ... ),
     Log::Agent::Driver::Bar->make( ... )
 );
 logconfig(-driver => $driver);
```

## DESCRIPTION

This driver merely acts a multiplexer for **logxxx()** calls, duplicating them and distributing them to other drivers.

The only routine of interest here is the creation routine:

- make(@drivers)

  Create a Log::Agent::Driver::Fork driver that duplicates **logxxx()** calls and distributes them to the drivers in `@drivers`.  The arguments must be the return value of the **make()** call for the client drivers.

## NOTES

Many thanks go to Daniel Lundin and Jason May who proposed this module independently.  Eventually, **logconfig()** will support multiple drivers directly. But, for now, this solution requires no change to the existing interface.

## AUTHOR

Mark Rogaski \<mrogaski@pobox.com\>

## LICENSE

Copyright (C) 2002 Mark Rogaski; all rights reserved.

See **Log::Agent**(3) or the README file included with the distribution for license information.

## SEE ALSO

**Log::Agent::Driver**(3), **Log::Agent**(3).
