New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

azlog

Package Overview
Dependencies
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

azlog

Python module to ease Azure DevOps pipelines logging commands

pipPyPI
Version
0.1.1
Maintainers
1

Azure DevOps pipelines python logger

Azure pipelines have a feature called Logging commands, which makes it possible to communicate with the Azure pipeline agent.
These logging commands are often used to set a pipeline variable, but can also be used to write formatted logs in the task standard outputs, or write error/warning messages on the pipeline results web page.

For example, writing the following logs to the standard output :

print("##[group]Beginning of a group")
print("##[warning]Warning message")
print("##[error]Error message")
print("##[section]Start of a section")
print("##[debug]Debug text")
print("##[command]Command-line being run")
print("##[endgroup]")

Will render in the task logs like this :

This convenience python module is designed to make formatted logging and error/warning messages in Azure pipelines easier to use.
It uses the python logging system by creating a subclass of logging.LoggerAdapter.

Install

pip install azlog

Usage

First create an AzLogger

from azlog import AzLogger
# Create the logger
logger = AzLogger(__name__)
logger.setLevel(logging.INFO)

The AzLogger adapter will create a python Logger with the name provided as argument.
Internally, AzLogger will create a StreamHandler using an AzFormatter as its formatter

You can also provide your own logger if you need additionnal handlers :

import logging
from azlog import AzLogger

raw_logger = logging.getLogger(__name__)
raw_logger.addHandler(logging.FileHandler('file.log'))

logger = AzLogger(raw_logger)
logger.setLevel(logging.INFO)

You can then use the AzLogger to print formatted log messages to your task output

logger.group("Beginning of a group")
logger.warning("Warning message")
logger.error("Error message")
logger.section("Start of a section")
logger.debug("Debug text")
logger.command("Command-line being run")
logger.endgroup("")

Will render in the task output like this :

Or to raise status messages

logger.issueerror("Issue an error to the pipeline")
logger.issuewarning("Issue a warning to the pipeline")

Will render in the pipeline status page like this :

FAQs

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts