Skip to content

kasianov-mikhail/scout

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

logo

Description

Scout is a robust logging framework designed to provide comprehensive logging capabilities for your applications. It supports various logging levels, output formats, and destinations, making it easy to integrate and customize according to your needs. Whether you are developing a small project or a large-scale system, Scout ensures that you have detailed and organized logs to help you monitor and debug your applications effectively.

Table of Contents

CloudKit Integration

Scout offers seamless integration with CloudKit, allowing you to store and manage your logs in the cloud effortlessly. By leveraging CloudKit, you can:

  • 📊 Centralize Logs: Store logs from multiple devices and applications in a single, centralized location.
  • ⏱️ Real-time Access: Access your logs in real-time from anywhere, ensuring you can monitor your applications' performance and issues promptly.
  • 📈 Scalability: Benefit from CloudKit's scalability to handle large volumes of log data without compromising performance.
  • 🔒 Security: Ensure your logs are securely stored and transmitted, adhering to industry-standard security practices.

SwiftLog API

Scout leverages the power of swift-log, Apple's official logging API, to provide a flexible and efficient logging solution. By using swift-log, Scout ensures compatibility with other libraries and tools, making it easier to integrate into your existing projects. Benefits of Using swift-log with Scout:

  • 📏 Standardization: Utilize a standardized logging API that is widely adopted in the Swift community.
  • 🔧 Flexibility: Customize log handlers and formats to suit your specific needs.

By integrating swift-log with Scout, you can take advantage of a robust and standardized logging framework that enhances your application's logging capabilities.

Installation

For detailed installation instructions, please refer to the Installation Guide.

Usage

import Logging

let logger = Logger(label: "SOME_LOGGER_LABEL")

logger.warning(
    "event_need_to_know_about",
    metadata: [
        "description": .string(error.localizedDescription),
        "ip": .string(ip),
    ]
)

Visualizing the Logs

By integrating AnalyticsView into your SwiftUI application, you can gain insights into your application's performance and issues through an intuitive and interactive interface.

AnalyticsView(container: container)

This should be done only in debug mode to avoid exposing sensitive log data in production environments.

Example Project

You can find an example project demonstrating the integration of Scout with CloudKit in the Scout IP repository. This project provides a comprehensive example of how to set up and use Scout for logging in a real-world application.

License

Scout is released under the MIT License. See LICENSE for details.