nextcloud / nextcloud/desktop

Call-oriented Logging

Open
#9,562 0 comments 1 reaction 1 assignee Claimed by @i2h3 View on GitHub
1. to develop feature: :file_folder: file provider os: :apple: macOS
Dominant language
C++
Stars
3.9k
Forks
1k
Avg merge
1d 17h
Merged PRs (30d)
123

Description

## Problem

The highly concurrent working environment of file provider extensions sometimes makes it hard to reason about their serialized logs which contain messages of occasionally concurrent processes ordered by time instead of context.

## Goal

Significantly improve insights on the client-side events by being abled to distinguish log messages based on the individual system calls and enumerations.

## Solution

- Every incoming call to the `NSFileProviderReplicatedExtension` (including its extensions like `NSFileProviderThumbnailing`) creates a `UUID` which is considered to be the unique identifier for that call. It is passed down the call stack so all objects down the call stack can contextualize their log messages.
- Every enumeration in an `NSFileProviderEnumerator` implementation creates a UUID to identify it and its related messages later in the logs. The `UUID` is passed down the call stack so all objects down the call stack can contextualize their log messages.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.