sudo apt update && sudo apt upgrade
When running FastAPI
app, all the logs in console are from Uvicorn
and they do not have timestamp and other useful information. As Uvicorn
applies python logging
module, we can override Uvicorn
logging formatter by applying a new logging configuration.
Meanwhile, it's able to unify the your endpoints logging with the Uvicorn
logging by configuring all of them in the config file log_conf.yaml
.
Before overriding:
uvicorn main:app --reload
For some reason, it is surprisingly hard to create a bootable Windows USB using macOS. These are my steps for doing so, which have worked for me in macOS Monterey (12.6.1) for Windows 10 and 11. After following these steps, you should have a bootable Windows USB drive.
You can download Windows 10 or Windows 11 directly from Microsoft.
After plugging the drive to your machine, identify the name of the USB device using diskutil list
, which should return an output like the one below. In my case, the correct disk name is disk2
.
[Unit] | |
Description=Set NVIDIA power limit above default | |
[Service] | |
Type=oneshot | |
ExecStartPre=/usr/bin/nvidia-smi -pm 1 | |
ExecStart=/usr/bin/nvidia-smi -pl 275 |
var pg = require('pg'); | |
var shimmer = require('shimmer'); | |
function wrapQuery(orig, name) { | |
return function wrappedFunction(sql) { | |
console.time("PSQL: " +sql); | |
var args = arguments | |
var index = args.length - 1 |
// | |
// FacebookAuth.swift | |
// GitHub: ethanhuang13 | |
// Twitter: @ethanhuang13 | |
import AuthenticationServices | |
import SafariServices | |
/* | |
Updated: |
error while loading shared libraries: libnss3.so: cannot open shared object file: No such file or directory
sudo apt-get install libnss3
error while loading shared libraries: libXss.so.1: cannot open shared object file: No such file or directory
sudo apt-get install libxss1
import Foundation | |
extension Data { | |
var prettyPrintedJSONString: NSString? { /// NSString gives us a nice sanitized debugDescription | |
guard let object = try? JSONSerialization.jsonObject(with: self, options: []), | |
let data = try? JSONSerialization.data(withJSONObject: object, options: [.prettyPrinted]), | |
let prettyPrintedString = NSString(data: data, encoding: String.Encoding.utf8.rawValue) else { return nil } | |
return prettyPrintedString | |
} |
import os | |
import yaml | |
import logging.config | |
import logging | |
import coloredlogs | |
def setup_logging(default_path='logging.yaml', default_level=logging.INFO, env_key='LOG_CFG'): | |
""" | |
| **@author:** Prathyush SP | |
| Logging Setup |
import org.apache.catalina.LifecycleListener; | |
import org.apache.catalina.core.AprLifecycleListener; | |
import org.springframework.beans.factory.annotation.Value; | |
import org.springframework.boot.context.embedded.EmbeddedServletContainerFactory; | |
import org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainerFactory; | |
import org.springframework.context.annotation.Bean; | |
import org.springframework.context.annotation.Configuration; | |
/** | |
* NOTE: You also need to install APR on your system, on Arch Linux the package is called `tomcat-native`. |