# packeta/1.6.4/src/Packetery/Core/Log/ILogger.php

Packeta, version 1.6.4. 54 lines.

- Page: https://pluginprobe.com/plugins/packeta/1.6.4/code/src/Packetery/Core/Log/ILogger.php
- Raw: https://pluginprobe.com/plugins/packeta/1.6.4/raw/src/Packetery/Core/Log/ILogger.php
- Modified: 2023-04-24T06:19:54+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/packeta/1.6.4/code/src/Packetery/Core/Log/ILogger.php#L10-L20`.

```php
<?php
/**
 * Interface ILogger
 *
 * @package Packetery\Log
 */

declare( strict_types=1 );


namespace Packetery\Core\Log;

/**
 * Interface ILogger
 *
 * @package Packetery\Log
 */
interface ILogger {

	/**
	 * Registers log driver.
	 */
	public function register(): void;

	/**
	 * Adds log record.
	 *
	 * @param Record $record Record.
	 */
	public function add( Record $record ): void;

	/**
	 * Get logs.
	 *
	 * @param mixed       $orderId Order ID.
	 * @param string|null $action  Action.
	 * @param array       $sorting Sorting config.
	 * @param int         $limit   Limit.
	 *
	 * @return iterable
	 */
	public function getRecords( $orderId, ?string $action, array $sorting = [], int $limit = 100 ): iterable;

	/**
	 * Counts records.
	 *
	 * @param mixed       $orderId Order ID.
	 * @param string|null $action  Action.
	 *
	 * @return int
	 */
	public function countRecords( $orderId = null, ?string $action = null): int;
}

```
