From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 63BF443D55; Wed, 27 Mar 2024 17:47:38 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 0D020402B2; Wed, 27 Mar 2024 17:47:38 +0100 (CET) Received: from mail-pf1-f180.google.com (mail-pf1-f180.google.com [209.85.210.180]) by mails.dpdk.org (Postfix) with ESMTP id C23A9402A3 for ; Wed, 27 Mar 2024 17:47:36 +0100 (CET) Received: by mail-pf1-f180.google.com with SMTP id d2e1a72fcca58-6e6b6f86975so48094b3a.1 for ; Wed, 27 Mar 2024 09:47:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=networkplumber-org.20230601.gappssmtp.com; s=20230601; t=1711558055; x=1712162855; darn=dpdk.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=BNNTuwSMp7kE15RKExQ8z0d119iMasipTsSsvhoJxac=; b=tJxeoTddHhg8YgaBKrL9jGl25wRJVDqdU05v6ubCIaKvs3Uvz/sIfMqbKj/yQde8uq gO0hyTqdVib4H8LjUcopS/uvFUAznhfkGxWkDjhH0SzR6axczYxbuovdfoEjlH/paOHs mF+Zv4eEqNCIT0BvXEivBe6qzyN/UQpYG0a5dYT3mnYEU9+T3kVzXxVYoDlEAo5R+kxc hhx7cGafxK+mZrd3u/M2fOYqc+E2JHmxJoBl6qr+upfBYqsqJLDsNEUrM9AkYCxOhcCH Ce7x7lvpzrqfWtHhcGCMRuPFSRVfmucq0tJMS+PZ/e+JnOiVv3V3wLk5hnMhD6B5Wavd JZPw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1711558055; x=1712162855; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=BNNTuwSMp7kE15RKExQ8z0d119iMasipTsSsvhoJxac=; b=TPMJt4bMIJ/57Ms4dy6udY/uUssRCXKYKrP6bVefoGcF6OY8k4BuqSrhaFnQrRQujZ dxTYn72MPK4HVazjlkDj73qhVgOcWb56A531bWyKz8fyPQ8ZXKXrHlrlB5HQHEaBziVE LZGyKzessukkyIkRFZWkmlJvx6TDpQMBPNKyS0pxwBz1iGpWLATrVoIbM2egM9hiKx1t j52yJVa5GaHZz/rxzZboRmyQIeQjgdjkoCHblJtUvhoeGvGTeVV5aPq9b4aC9TV5P1a3 sPf6TTzhx5XoZxJ+6UDe3WIQv827wX8zQ/XUPvX3TT5MTo72s3yECpzWJ2N4DxVwgEz3 oz+A== X-Gm-Message-State: AOJu0Yy0Zk1jJKjpiScnZPSG7skrF72eQcYVKsnpXsWk96Y4Gy11dKDm L9jpk9HJoolm0QilLLM9z7kHlsQHHauyLkJajknz5wPiPM88umrK2lh2n2p3FCWGF3CyKyqd9On T X-Google-Smtp-Source: AGHT+IGRyA1HaOVe5KYcpdM+o0rxrHYUKkG7meM8Ht8Olc5TwI5ZC67oVRHS5dZaSaqnMHShbLbREg== X-Received: by 2002:a05:6a00:4fc9:b0:6e6:bfb6:371 with SMTP id le9-20020a056a004fc900b006e6bfb60371mr469725pfb.34.1711558055524; Wed, 27 Mar 2024 09:47:35 -0700 (PDT) Received: from hermes.local (204-195-123-203.wavecable.com. [204.195.123.203]) by smtp.gmail.com with ESMTPSA id a33-20020a056a0011e100b006e580678dfbsm5160873pfu.193.2024.03.27.09.47.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 27 Mar 2024 09:47:35 -0700 (PDT) From: Stephen Hemminger To: dev@dpdk.org Cc: Stephen Hemminger Subject: [PATCH v16 00/15] Logging unification and improvements Date: Wed, 27 Mar 2024 09:45:18 -0700 Message-ID: <20240327164726.68732-1-stephen@networkplumber.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20200814173441.23086-1-stephen@networkplumber.org> References: <20200814173441.23086-1-stephen@networkplumber.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Improvements and unification of logging library (for 24.07 release). This version works on all platforms: Linux, Windows and FreeBSD. This is update to rework patch set. It adds several new features to the console log output. * Putting a timestamp on console output which is useful for analyzing performance of startup codes. Timestamp is optional and must be enabled on command line. * Displaying console output with colors. It uses the standard conventions used by many other Linux commands for colorized display. The default is to enable color if the console output is going to a terminal. But it can be always on or disabled by command line flag. This default was chosen based on what dmesg(1) command does. I find color helpful because DPDK drivers and libraries print lots of not very useful messages. And having error messages highlighted in bold face helps. This might also get users to pay more attention to error messages. Many bug reports have earlier messages that are lost because there are so many info messages. * Add support for automatic detection of systemd journal protocol. If running as systemd service will get enhanced logging. * Use of syslog is optional and the meaning of the --syslog flag has changed. The default is *not* to use syslog. Add myself as maintainer for log because by now have added more than previous authors... Will add a release note in next release (after this is merged) v16 - add printf attribute to Windows shim add missing va_end in color_fprintf avoid allocation in rte_exit Stephen Hemminger (15): maintainers: add for log library windows: make getopt functions have const properties windows: add os shim for localtime_r windows: common wrapper for vasprintf and asprintf eal: make eal_log_level_parse common eal: do not duplicate rte_init_alert() messages eal: change rte_exit() output to match rte_log() log: move handling of syslog facility out of eal eal: initialize log before everything else log: drop syslog support, and make code common log: add hook for printing log messages log: add timestamp option log: add optional support of syslog log: add support for systemd journal log: colorize log output MAINTAINERS | 1 + app/test/test_eal_flags.c | 64 +- doc/guides/linux_gsg/linux_eal_parameters.rst | 27 - doc/guides/prog_guide/log_lib.rst | 57 ++ drivers/bus/pci/pci_common.c | 32 - lib/eal/common/eal_common_debug.c | 11 +- lib/eal/common/eal_common_options.c | 126 ++-- lib/eal/common/eal_options.h | 5 + lib/eal/common/eal_private.h | 10 - lib/eal/freebsd/eal.c | 64 +- lib/eal/linux/eal.c | 68 +- lib/eal/windows/eal.c | 77 +-- lib/eal/windows/getopt.c | 23 +- lib/eal/windows/include/getopt.h | 8 +- lib/eal/windows/include/rte_os_shim.h | 58 ++ lib/log/log.c | 647 +++++++++++++++++- lib/log/log_freebsd.c | 5 +- lib/log/log_internal.h | 25 +- lib/log/log_linux.c | 61 -- lib/log/log_windows.c | 18 - lib/log/meson.build | 5 +- lib/log/version.map | 4 +- 22 files changed, 968 insertions(+), 428 deletions(-) delete mode 100644 lib/log/log_linux.c delete mode 100644 lib/log/log_windows.c -- 2.43.0