PUN Classic (v1), PUN 2 and Bolt are in maintenance mode. PUN 2 will support Unity 2019 to 2022, but no new features will be added. Of course all your PUN & Bolt projects will continue to work and run with the known performance in the future. For any upcoming or new projects: please switch to Photon Fusion or Quantum.

Overriding Bolt Logging

You can override Bolt’s internal logging and add your own implementation. First you implement BoltLog.IWriter:

C#

/**
 * The interface providing log writing capabilities to an output
 */
public interface IWriter : IDisposable
{
  void Debug(string message);
  void Error(string message);
  void Info(string message);
  void Warn(string message);
}

Example of implementation:

C#

// MyLogger.cs
using Bolt;

public class MyLogger : BoltLog.IWriter
{
    public void Debug(string message) { /* log code */ }
    public void Error(string message) { /* log code */ }
    public void Info(string message) { /* log code */ }
    public void Warn(string message) { /* log code */ }
    public void Dispose() {}
}

And then you add it to Bolt at runtime with BoltLog.Add:

C#

public override void BoltStartDone()
{
    BoltLog.Add(new MyLogger());
}

At this point you can turn off the options for Bolt logging in the Bolt settings and then you control the logging of Bolt yourself.

Back to top