swift-nio VS swift-log

Compare swift-nio vs swift-log and see what are their differences.

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
swift-nio swift-log
12 7
7,761 3,300
0.9% 1.9%
9.1 5.3
4 days ago 2 months ago
Swift Swift
Apache License 2.0 Apache License 2.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

swift-nio

Posts with mentions or reviews of swift-nio. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-05-05.

swift-log

Posts with mentions or reviews of swift-log. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-15.
  • Swift for C++ Practitioners, Part 1: Intro and Value Types
    2 projects | news.ycombinator.com | 15 Apr 2024
    How recent were your experiences?

    The server-side Swift ecosystem has matured over the past few years, with specific attention from teams at Apple.

    For example, regarding JSON, there has been a rewrite of the JSON encoder/decoder that results in a 200% - 500% speed up in deserialization! You can read about the (still ongoing) improvements to Foundation at https://github.com/apple/swift-foundation

    Regarding logging, Apple has been pushing the development of community around the swift-log package at https://github.com/apple/swift-log. Maybe you’ve seen this, but just wanted to share!

    One last thing: the Swift VSCode extension is actually really good! Not sure when you used it last, but I’ve been using it on a regular basis and it’s been great — and is only getting better. Here’s the link to the extension if you’re curious: https://marketplace.visualstudio.com/items?itemName=sswg.swi...

    It’s true that Swift has had its various issues, but there’s a very real push by the core team and community to bring the language to new heights and places. Cross-platform support is getting better and better (check out what The Browser Company is doing with Swift on Windows) and a big source of performance bottlenecks are being addressed with the development of non-copyable and non-escaping (Rust-like move-only types)!

    Sorry that’s a lot, but I just wanted to point out that there’s a lot of hope in Swift and really interesting things are happening for the project!

  • Swift outside the Apple ecosystem?
    7 projects | /r/swift | 27 Apr 2023
    Also, Apple seems to be putting a ton of work into the Swift-on-server ecosystem. They've released packages for things like tracing, metrics, service discovery, logging, etc. And most of those are basically shared interfaces, and then Apple (or the community) will write backend implementations, like one for statsd which implements the stuff from swift-metrics.
  • When to use os_log vs print?
    1 project | /r/iOSProgramming | 3 Jan 2023
    I liked os.log, but since I'm doing swift services on Linux I moved to SwiftLog. It's kind of bare bones, but you can attach it to different back ends. I'm just dumping logs to a file. Apple has made it open source.
  • How to log only in debug mode? including network logs
    2 projects | /r/iOSProgramming | 26 Nov 2022
    Does anyone have experience with this? I've seen people mentioning to use Cocoalumberjack but not sure if its the right package (meaning if its not overkill). Apple have an open source logging library as well for this.
  • Trouble building for ios device
    7 projects | /r/bazel | 23 Nov 2022
    load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") http_archive( name = "com_github_buildbuddy_io_rules_xcodeproj", sha256 = "564381b33261ba29e3c8f505de82fc398452700b605d785ce3e4b9dd6c73b623", url = "https://github.com/buildbuddy-io/rules_xcodeproj/releases/download/0.9.0/release.tar.gz", ) http_archive( name = "cgrindel_rules_spm", sha256 = "03718eb865a100ba4449ebcbca6d97bf6ea78fa17346ce6d55532312e8bf9aa8", strip_prefix = "rules_spm-0.11.0", url = "https://github.com/cgrindel/rules_spm/archive/v0.11.0.tar.gz", ) load( "@cgrindel_rules_spm//spm:defs.bzl", "spm_pkg", "spm_repositories", ) load( "@cgrindel_rules_spm//spm:deps.bzl", "spm_rules_dependencies", ) spm_rules_dependencies() load( "@com_github_buildbuddy_io_rules_xcodeproj//xcodeproj:repositories.bzl", "xcodeproj_rules_dependencies", ) xcodeproj_rules_dependencies() load( "@build_bazel_rules_apple//apple:repositories.bzl", "apple_rules_dependencies", ) apple_rules_dependencies() load( "@build_bazel_rules_swift//swift:repositories.bzl", "swift_rules_dependencies", ) swift_rules_dependencies() load( "@build_bazel_rules_swift//swift:extras.bzl", "swift_rules_extra_dependencies", ) swift_rules_extra_dependencies() load( "@build_bazel_apple_support//lib:repositories.bzl", "apple_support_dependencies", ) apple_support_dependencies() spm_repositories( name = "swift_pkgs", platforms = [ ".macOS(.v10_15)", ], dependencies = [ spm_pkg( url = "https://github.com/apple/swift-log.git", exact_version = "1.4.2", products = ["Logging"], ), spm_pkg( url = "https://github.com/pointfreeco/swift-composable-architecture.git", exact_version = "0.43.0", products = ["ComposableArchitecture"], ), spm_pkg( name = "Bow", url = "https://github.com/bow-swift/bow.git", exact_version = "0.8.0", products = ["Bow", "BowEffects", "BowOptics"], ), spm_pkg( url = "https://github.com/grpc/grpc-swift.git", exact_version = "1.7.3", products = ["GRPC"], ), spm_pkg( url = "https://github.com/hyperoslo/Cache", exact_version = "6.0.0", products = ["Cache"], ), ], )
  • Recommended library to log to file at high velocity?
    2 projects | /r/swift | 29 Nov 2021
    I ended up modifying https://github.com/apple/swift-log, and added a LogHandler impls to dump to SQLite, os_log, Crashlytics, internal metrics APIs, etc.
  • Dangerous Logging in Swift
    1 project | news.ycombinator.com | 30 Oct 2021
    This is Foundation API, not Swift stdlib. One thing Swift probably can do, is to have the first parameter typed as `StaticString`. I am not sure if the header for NSLog has enough annotations to do so.

    OTOH: https://github.com/apple/swift-log

What are some alternatives?

When comparing swift-nio and swift-log you can also consider the following projects:

SwiftSocket - The easy way to use sockets on Apple platforms

SwiftyBeaver - Convenient & secure logging during development & release in Swift 4 & 5

GCDWebServer - The #1 HTTP server for iOS, macOS & tvOS (also includes web based uploader & WebDAV server)

async-http-client - HTTP client library built on SwiftNIO

Zewo - Lightweight library for web server applications in Swift on macOS and Linux powered by coroutines.

Cache - :package: Nothing but Cache.

mongodb-vapor - MongoDB + Vapor integration

rules_xcodeproj - Bazel rules for generating Xcode projects.

Swift-Atem - Blackmagic Design Atem network protocol implementation in swift 5.1 using NIO 2

swift-statsd-client - metrics backend for swift-metrics that uses the statsd protocol

grpc-swift - The Swift language implementation of gRPC.