Skip navigation

Speaker:

Richard Yen

Richard Yen

EDB

Richard has been using PostgreSQL since v. 7.4 in 2003. He is a Principal Support Engineer at EnterpriseDB, providing technical support to DBAs and developers around the world, and works with many clients ranging from private corporations to government organizations and financial institutions.


POSETTE 2024 Talk

Scaling the Wall of Text: Logging Best Practices in PostgreSQL

(Livestream 1)

Something that many PostgreSQL users take for granted is the powerful logging features that it provides. With the right configuration, DBAs and sysadmins can quickly diagnose performance, security, and configuration issues, saving precious seconds of application uptime. This talk will cover the major logging parameters in postgresql.conf, as well as provide some tips and wisdom gleaned over years of parsing through gigabytes of logs.

View the slides


Speaker Interview

About the Speaker

  • Tell us about yourself: career, family, passions

    I've been working in different aspects of development and operations throughout my career, most currently working as a software engineer. My wife and I raise three children and participate quite actively in our local church.

  • How do you prepare for an online presentation?

    I prepare for online presentations by looking on blogs and youtube for inspiration, to come up with a framework. From there, I'll add in my own personal experience regarding what works, what's important to know, etc.

  • Which book are you reading right now?

    I'm reading "The Anxious Generation" by Jonathan Haidt. It's a very fascinating and helpful book for anyone who wants some guidance in navigating the current culture of social media and online interaction, and makes some very insightful, data-driven observations about how childhood has evolved over the past century

About the Talk

  • What will your talk be about, exactly? Why this topic?

    I will be talking about how logging in PostgreSQL works—what are the parameters that can be adjusted, what they do, and some best practices that I've come up with over the years. I was motivated to talk about this topic because I've interacted with many people in the past who have either neglected to configure their logging, or they have logging set up well, but don't know what to look for. I'd like to help people get the most out of this feature in PostgreSQL

  • What is the audience for your talk?

    It's mainly for beginner/intermediate users, but I hope that seasoned PostgreSQL users will find it useful as well.

  • What existing knowledge should the attendee have?

    Attendees should know how to start and stop Postgres, and be able to open a file for reading.

  • Which other talk at this year’s conference would you like to watch?

    I'd be interested to watch Jelte's Connection Pooler Support for Prepared Statements, Chris Ellis' JSONB talk, and Karen's provocative "You Don't Need a Backup Policy"—so many of the talks are very interesting!

About PostgreSQL

  • What inspired you to work with PostgreSQL?

    PostgreSQL was foisted upon me by my managers back in the early 2000s, when our DBA quit to join another company. PostgreSQL has been so good, I never considered switching to anything else!

  • What is your favorite PostgreSQL feature?

    EXPLAIN ANALYZE is the single most useful tool for any user trying to improve performance. And corollary to that is auto_explain—these are very useful to get a good look at what's going on under the hood.

  • What is the single thing that you think differentiates PostgreSQL most from other databases?

    In my experience, the PostgreSQL documentation, Slack, and IRC have been so incredibly helpful for getting answers. The documentation is so cleanly organized and written that it makes it a pleasant experience to go through it. Working with other open-source projects (even non-open source products), the documentation is often hard to navigate, sometimes vague, and sometimes the wording raises more questions than it answers. Not so with Postgres—it's been very easy to get help and information since Day 1.

    Oh, I forgot to mention—the source code is very well-commented. If you ever find yourself trusting code more than documentation, it's not hard to read the PostgreSQL source.

  • What is your favorite PostgreSQL extension or tool? And why?

    auto_explain

  • What advice would you give to someone starting their journey with PostgreSQL?

    Get it running somewhere and start telling your apps to use it. After that, get the documentation in one window and Postgres Slack in another window—don't be afraid to ask for help!

  • In your opinion, what are the most common pitfalls or mistakes developers make when working with PostgreSQL?

    One of the most common pitfalls while working with PostgreSQL is understanding how Autovacuum relates with Multi-Version Concurrency Control (MVCC). I've worked with many people who hit problems because of a transactionID-wraparound autovacuum, and have done some fairly invasive procedures to get them out of those situations. Maybe my next talk might be on this, to help raise awareness.

  • What is the most overlooked thing about PostgreSQL?

    log_line_prefix—nearly 40% of users never touch it

About POSETTE & Events

  • Have you enjoyed previous POSETTE (formerly Citus Con) conferences, either as an attendee or as a speaker?

    No—this is my first one!

  • What motivated you to speak at this year’s POSETTE: An Event for Postgres?

    The re-branding from Citus Con made me feel less nervous that my non-Azure, non-Citus talk might get rejected. Thanks for selecting my talk!

  • What other PostgreSQL events in 2024 are you excited about?

    PGDay New York sounds like it's going to be great.

The Postgres team at Microsoft is proud to be the organizer of POSETTE: An Event for Postgres (formerly Citus Con).