History of Paediatric Pulmonology in Bangladesh

The journey started in 1994 with fellowship training of our honorable teacher Professor Md Ruhul Amin in Royal Hospital for Sick Children, Glasgow and The Hospital for Sick Children, Great Ormond Street, London, UK. From early 1995 Prof Md Ruhul Amin first started to organize paediatric pulmonology unit for specialized clinical services with teaching and training in Dhaka Shishu (Children) Hospital and Bangladesh Institute of Child Health (BICH). In 1995, the journey had further got momentum with fellowship training of our beloved teacher Professor ARM Lutful Kabir-from Royal Alexandea Hospital for Children, Sydney, Australia and on return he started specialized paediatric pulmonology clinical services with teaching and training in ICMH. Afterwards in the year 2000 Prof Md Ruhul Amin and Prof ARM Lutful Kabir had leant bronchoscopy hands on by attending the first Paediatric Pulmonology course for 3 weeks in Chennai organized by Respiratory Chapter of Indian Academy of Pediatrics (IAP) in Institute of Child health & Chennai Children Hospital facilitated by Prof L Subranium, Prof. Balachandran and Prof. Vijayshekharan with the guidance of legendary Prof N Somu. In a ICMH project at government level, paediatric bronchoscope was first procured by Prof M Q K Talukder, Founder Director and Project Director of Institute of Child & Mother Health (ICMH). At that time Professor ARM Lutful Kabir had organised paediatric pulmonology unit for specialized clinical services with teaching and training in ICMH. In 2002 Prof Ruhul Amin and Prof ARM Lutful Kabir had successfully performed first bronchoscopy together in ICMH on two cases in presence of Prof. Md Rashidul Hasan, Founder President of Bangladesh Lung Foundation (BLF), marking the beginning of a new era in the history of pediatric pulmonology in our country. The journey gained further momentum when our  another beloved teacher Prof. Abid Hossain Molla joined with Prof Ruhul Amin and Prof ARM Lutful Kabir  in this glorious effort and finally our dream association Bangladesh Paediatric Pulmonology Forum (BPPF) was also formed in 2003 with three members. In 2010 Paediatric Respiratory Medicine Department was established in Dhaka Shishu (Children) Hospital and in 2011 the department got recognition for Paediatric Pulmonology sub-specialty training by Bangladesh College of Physicians and Surgeons (BCPS) adding a new horizon in this field. Recently in 2019 Paediatric Pulmonology unit of ICMH has also got recognition by BCPS for sub-specialty training as the second institute. Five young paediatricians and members of BPPF have completed training on Pediatric Pulmonology from All India Institute of Medical Sciences (AIIMS), New Delhi under Professor S K Kabra.

 

Whoops! There was an error.
ErrorException (E_NOTICE)
fwrite(): write of 1847 bytes failed with errno=122 Disk quota exceeded ErrorException thrown with message "fwrite(): write of 1847 bytes failed with errno=122 Disk quota exceeded" Stacktrace: #13 ErrorException in /home2/bppfbd/public_html/vendor/monolog/monolog/src/Monolog/Handler/StreamHandler.php:139 #12 fwrite in /home2/bppfbd/public_html/vendor/monolog/monolog/src/Monolog/Handler/StreamHandler.php:139 #11 Monolog\Handler\StreamHandler:streamWrite in /home2/bppfbd/public_html/vendor/monolog/monolog/src/Monolog/Handler/StreamHandler.php:125 #10 Monolog\Handler\StreamHandler:write in /home2/bppfbd/public_html/vendor/monolog/monolog/src/Monolog/Handler/RotatingFileHandler.php:120 #9 Monolog\Handler\RotatingFileHandler:write in /home2/bppfbd/public_html/vendor/monolog/monolog/src/Monolog/Handler/AbstractProcessingHandler.php:39 #8 Monolog\Handler\AbstractProcessingHandler:handle in /home2/bppfbd/public_html/vendor/monolog/monolog/src/Monolog/Logger.php:344 #7 Monolog\Logger:addRecord in /home2/bppfbd/public_html/vendor/monolog/monolog/src/Monolog/Logger.php:712 #6 Monolog\Logger:error in /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Log/Logger.php:176 #5 Illuminate\Log\Logger:writeLog in /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Log/Logger.php:87 #4 Illuminate\Log\Logger:error in /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Log/LogManager.php:498 #3 Illuminate\Log\LogManager:error in /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php:114 #2 Illuminate\Foundation\Exceptions\Handler:report in /home2/bppfbd/public_html/app/Exceptions/Handler.php:37 #1 App\Exceptions\Handler:report in /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php:81 #0 Illuminate\Foundation\Bootstrap\HandleExceptions:handleException in [internal]:0
13
ErrorException
/vendor/monolog/monolog/src/Monolog/Handler/StreamHandler.php139
12
fwrite
/vendor/monolog/monolog/src/Monolog/Handler/StreamHandler.php139
11
Monolog\Handler\StreamHandler streamWrite
/vendor/monolog/monolog/src/Monolog/Handler/StreamHandler.php125
10
Monolog\Handler\StreamHandler write
/vendor/monolog/monolog/src/Monolog/Handler/RotatingFileHandler.php120
9
Monolog\Handler\RotatingFileHandler write
/vendor/monolog/monolog/src/Monolog/Handler/AbstractProcessingHandler.php39
8
Monolog\Handler\AbstractProcessingHandler handle
/vendor/monolog/monolog/src/Monolog/Logger.php344
7
Monolog\Logger addRecord
/vendor/monolog/monolog/src/Monolog/Logger.php712
6
Monolog\Logger error
/vendor/laravel/framework/src/Illuminate/Log/Logger.php176
5
Illuminate\Log\Logger writeLog
/vendor/laravel/framework/src/Illuminate/Log/Logger.php87
4
Illuminate\Log\Logger error
/vendor/laravel/framework/src/Illuminate/Log/LogManager.php498
3
Illuminate\Log\LogManager error
/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php114
2
Illuminate\Foundation\Exceptions\Handler report
/app/Exceptions/Handler.php37
1
App\Exceptions\Handler report
/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php81
0
Illuminate\Foundation\Bootstrap\HandleExceptions handleException
[internal]0
/home2/bppfbd/public_html/vendor/monolog/monolog/src/Monolog/Handler/StreamHandler.php
        if ($this->useLocking) {
            // ignoring errors here, there's not much we can do about them
            flock($this->stream, LOCK_EX);
        }
 
        $this->streamWrite($this->stream, $record);
 
        if ($this->useLocking) {
            flock($this->stream, LOCK_UN);
        }
    }
 
    /**
     * Write to stream
     * @param resource $stream
     * @param array $record
     */
    protected function streamWrite($stream, array $record)
    {
        fwrite($stream, (string) $record['formatted']);
    }
 
    protected function streamSetChunkSize()
    {
        if (version_compare(PHP_VERSION, '5.4.0', '>=')) {
            return stream_set_chunk_size($this->stream, self::CHUNK_SIZE);
        }
 
        return false;
    }
 
    private function customErrorHandler($code, $msg)
    {
        $this->errorMessage = preg_replace('{^(fopen|mkdir)\(.*?\): }', '', $msg);
    }
 
    /**
     * @param string $stream
     *
     * @return null|string
Arguments
  1. "fwrite(): write of 1847 bytes failed with errno=122 Disk quota exceeded"
    
/home2/bppfbd/public_html/vendor/monolog/monolog/src/Monolog/Handler/StreamHandler.php
        if ($this->useLocking) {
            // ignoring errors here, there's not much we can do about them
            flock($this->stream, LOCK_EX);
        }
 
        $this->streamWrite($this->stream, $record);
 
        if ($this->useLocking) {
            flock($this->stream, LOCK_UN);
        }
    }
 
    /**
     * Write to stream
     * @param resource $stream
     * @param array $record
     */
    protected function streamWrite($stream, array $record)
    {
        fwrite($stream, (string) $record['formatted']);
    }
 
    protected function streamSetChunkSize()
    {
        if (version_compare(PHP_VERSION, '5.4.0', '>=')) {
            return stream_set_chunk_size($this->stream, self::CHUNK_SIZE);
        }
 
        return false;
    }
 
    private function customErrorHandler($code, $msg)
    {
        $this->errorMessage = preg_replace('{^(fopen|mkdir)\(.*?\): }', '', $msg);
    }
 
    /**
     * @param string $stream
     *
     * @return null|string
Arguments
  1. stream resource @427
      timed_out: false
      blocked: true
      eof: false
      wrapper_type: "plainfile"
      stream_type: "STDIO"
      mode: "a"
      unread_bytes: 0
      seekable: true
      uri: "/home2/bppfbd/public_html/storage/logs/laravel-2025-05-18.log"
      options: []
    }
    
  2. """
    [2025-05-18 21:58:48] local.ERROR: file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded {"exception":"[object] (ErrorException(code: 0): file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded at /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:122)\n
    [stacktrace]\n
    #0 [internal function]: Illuminate\\Foundation\\Bootstrap\\HandleExceptions->handleError(8, 'file_put_conten...', '/home2/bppfbd/p...', 122, Array)\n
    #1 /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(122): file_put_contents('/home2/bppfbd/p...', 'a:3:{s:6:\"_toke...', 2)\n
    #2 /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Session/FileSessionHandler.php(83): Illuminate\\Filesystem\\Filesystem->put('/home2/bppfbd/p...', 'a:3:{s:6:\"_toke...', true)\n
    #3 /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Session/Store.php(129): Illuminate\\Session\\FileSessionHandler->write('y5B6kJSmeV1ECSb...', 'a:3:{s:6:\"_toke...')\n
    #4 /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(87): Illuminate\\Session\\Store->save()\n
    #5 /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(218): Illuminate\\Session\\Middleware\\StartSession->terminate(Object(Illuminate\\Http\\Request), Object(Illuminate\\Http\\Response))\n
    #6 /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(189): Illuminate\\Foundation\\Http\\Kernel->terminateMiddleware(Object(Illuminate\\Http\\Request), Object(Illuminate\\Http\\Response))\n
    #7 /home2/bppfbd/public_html/public/index.php(60): Illuminate\\Foundation\\Http\\Kernel->terminate(Object(Illuminate\\Http\\Request), Object(Illuminate\\Http\\Response))\n
    #8 {main}\n
    "} \n
    """
    
/home2/bppfbd/public_html/vendor/monolog/monolog/src/Monolog/Handler/StreamHandler.php
            set_error_handler(array($this, 'customErrorHandler'));
            $this->stream = fopen($this->url, 'a');
            if ($this->filePermission !== null) {
                @chmod($this->url, $this->filePermission);
            }
            restore_error_handler();
            if (!is_resource($this->stream)) {
                $this->stream = null;
 
                throw new \UnexpectedValueException(sprintf('The stream or file "%s" could not be opened in append mode: '.$this->errorMessage, $this->url));
            }
            $this->streamSetChunkSize();
        }
 
        if ($this->useLocking) {
            // ignoring errors here, there's not much we can do about them
            flock($this->stream, LOCK_EX);
        }
 
        $this->streamWrite($this->stream, $record);
 
        if ($this->useLocking) {
            flock($this->stream, LOCK_UN);
        }
    }
 
    /**
     * Write to stream
     * @param resource $stream
     * @param array $record
     */
    protected function streamWrite($stream, array $record)
    {
        fwrite($stream, (string) $record['formatted']);
    }
 
    protected function streamSetChunkSize()
    {
        if (version_compare(PHP_VERSION, '5.4.0', '>=')) {
            return stream_set_chunk_size($this->stream, self::CHUNK_SIZE);
Arguments
  1. stream resource @427
      timed_out: false
      blocked: true
      eof: false
      wrapper_type: "plainfile"
      stream_type: "STDIO"
      mode: "a"
      unread_bytes: 0
      seekable: true
      uri: "/home2/bppfbd/public_html/storage/logs/laravel-2025-05-18.log"
      options: []
    }
    
  2. array:8 [
      "message" => "file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded"
      "context" => array:1 [
        "exception" => ErrorException {#142
          #message: "file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded"
          #code: 0
          #file: "/home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php"
          #line: 122
          #severity: E_NOTICE
        }
      ]
      "level" => 400
      "level_name" => "ERROR"
      "channel" => "local"
      "datetime" => DateTime @1747605528 {#1416
        date: 2025-05-18 21:58:48.454182 UTC (+00:00)
      }
      "extra" => []
      "formatted" => """
        [2025-05-18 21:58:48] local.ERROR: file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded {"exception":"[object] (ErrorException(code: 0): file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded at /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:122)\n
        [stacktrace]\n
        #0 [internal function]: Illuminate\\Foundation\\Bootstrap\\HandleExceptions->handleError(8, 'file_put_conten...', '/home2/bppfbd/p...', 122, Array)\n
        #1 /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(122): file_put_contents('/home2/bppfbd/p...', 'a:3:{s:6:\"_toke...', 2)\n
        #2 /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Session/FileSessionHandler.php(83): Illuminate\\Filesystem\\Filesystem->put('/home2/bppfbd/p...', 'a:3:{s:6:\"_toke...', true)\n
        #3 /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Session/Store.php(129): Illuminate\\Session\\FileSessionHandler->write('y5B6kJSmeV1ECSb...', 'a:3:{s:6:\"_toke...')\n
        #4 /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(87): Illuminate\\Session\\Store->save()\n
        #5 /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(218): Illuminate\\Session\\Middleware\\StartSession->terminate(Object(Illuminate\\Http\\Request), Object(Illuminate\\Http\\Response))\n
        #6 /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(189): Illuminate\\Foundation\\Http\\Kernel->terminateMiddleware(Object(Illuminate\\Http\\Request), Object(Illuminate\\Http\\Response))\n
        #7 /home2/bppfbd/public_html/public/index.php(60): Illuminate\\Foundation\\Http\\Kernel->terminate(Object(Illuminate\\Http\\Request), Object(Illuminate\\Http\\Response))\n
        #8 {main}\n
        "} \n
        """
    ]
    
/home2/bppfbd/public_html/vendor/monolog/monolog/src/Monolog/Handler/RotatingFileHandler.php
        $this->url = $this->getTimedFilename();
        $this->close();
    }
 
    /**
     * {@inheritdoc}
     */
    protected function write(array $record)
    {
        // on the first record written, if the log is new, we should rotate (once per day)
        if (null === $this->mustRotate) {
            $this->mustRotate = !file_exists($this->url);
        }
 
        if ($this->nextRotation < $record['datetime']) {
            $this->mustRotate = true;
            $this->close();
        }
 
        parent::write($record);
    }
 
    /**
     * Rotates the files.
     */
    protected function rotate()
    {
        // update filename
        $this->url = $this->getTimedFilename();
        $this->nextRotation = new \DateTime('tomorrow');
 
        // skip GC of old logs if files are unlimited
        if (0 === $this->maxFiles) {
            return;
        }
 
        $logFiles = glob($this->getGlobPattern());
        if ($this->maxFiles >= count($logFiles)) {
            // no files to remove
            return;
Arguments
  1. array:8 [
      "message" => "file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded"
      "context" => array:1 [
        "exception" => ErrorException {#142
          #message: "file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded"
          #code: 0
          #file: "/home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php"
          #line: 122
          #severity: E_NOTICE
        }
      ]
      "level" => 400
      "level_name" => "ERROR"
      "channel" => "local"
      "datetime" => DateTime @1747605528 {#1416
        date: 2025-05-18 21:58:48.454182 UTC (+00:00)
      }
      "extra" => []
      "formatted" => """
        [2025-05-18 21:58:48] local.ERROR: file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded {"exception":"[object] (ErrorException(code: 0): file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded at /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:122)\n
        [stacktrace]\n
        #0 [internal function]: Illuminate\\Foundation\\Bootstrap\\HandleExceptions->handleError(8, 'file_put_conten...', '/home2/bppfbd/p...', 122, Array)\n
        #1 /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(122): file_put_contents('/home2/bppfbd/p...', 'a:3:{s:6:\"_toke...', 2)\n
        #2 /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Session/FileSessionHandler.php(83): Illuminate\\Filesystem\\Filesystem->put('/home2/bppfbd/p...', 'a:3:{s:6:\"_toke...', true)\n
        #3 /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Session/Store.php(129): Illuminate\\Session\\FileSessionHandler->write('y5B6kJSmeV1ECSb...', 'a:3:{s:6:\"_toke...')\n
        #4 /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(87): Illuminate\\Session\\Store->save()\n
        #5 /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(218): Illuminate\\Session\\Middleware\\StartSession->terminate(Object(Illuminate\\Http\\Request), Object(Illuminate\\Http\\Response))\n
        #6 /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(189): Illuminate\\Foundation\\Http\\Kernel->terminateMiddleware(Object(Illuminate\\Http\\Request), Object(Illuminate\\Http\\Response))\n
        #7 /home2/bppfbd/public_html/public/index.php(60): Illuminate\\Foundation\\Http\\Kernel->terminate(Object(Illuminate\\Http\\Request), Object(Illuminate\\Http\\Response))\n
        #8 {main}\n
        "} \n
        """
    ]
    
/home2/bppfbd/public_html/vendor/monolog/monolog/src/Monolog/Handler/AbstractProcessingHandler.php
 *
 * @author Jordi Boggiano <j.boggiano@seld.be>
 * @author Christophe Coevoet <stof@notk.org>
 */
abstract class AbstractProcessingHandler extends AbstractHandler
{
    /**
     * {@inheritdoc}
     */
    public function handle(array $record)
    {
        if (!$this->isHandling($record)) {
            return false;
        }
 
        $record = $this->processRecord($record);
 
        $record['formatted'] = $this->getFormatter()->format($record);
 
        $this->write($record);
 
        return false === $this->bubble;
    }
 
    /**
     * Writes the record down to the log of the implementing handler
     *
     * @param  array $record
     * @return void
     */
    abstract protected function write(array $record);
 
    /**
     * Processes a record.
     *
     * @param  array $record
     * @return array
     */
    protected function processRecord(array $record)
    {
Arguments
  1. array:8 [
      "message" => "file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded"
      "context" => array:1 [
        "exception" => ErrorException {#142
          #message: "file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded"
          #code: 0
          #file: "/home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php"
          #line: 122
          #severity: E_NOTICE
        }
      ]
      "level" => 400
      "level_name" => "ERROR"
      "channel" => "local"
      "datetime" => DateTime @1747605528 {#1416
        date: 2025-05-18 21:58:48.454182 UTC (+00:00)
      }
      "extra" => []
      "formatted" => """
        [2025-05-18 21:58:48] local.ERROR: file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded {"exception":"[object] (ErrorException(code: 0): file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded at /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:122)\n
        [stacktrace]\n
        #0 [internal function]: Illuminate\\Foundation\\Bootstrap\\HandleExceptions->handleError(8, 'file_put_conten...', '/home2/bppfbd/p...', 122, Array)\n
        #1 /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(122): file_put_contents('/home2/bppfbd/p...', 'a:3:{s:6:\"_toke...', 2)\n
        #2 /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Session/FileSessionHandler.php(83): Illuminate\\Filesystem\\Filesystem->put('/home2/bppfbd/p...', 'a:3:{s:6:\"_toke...', true)\n
        #3 /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Session/Store.php(129): Illuminate\\Session\\FileSessionHandler->write('y5B6kJSmeV1ECSb...', 'a:3:{s:6:\"_toke...')\n
        #4 /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(87): Illuminate\\Session\\Store->save()\n
        #5 /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(218): Illuminate\\Session\\Middleware\\StartSession->terminate(Object(Illuminate\\Http\\Request), Object(Illuminate\\Http\\Response))\n
        #6 /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(189): Illuminate\\Foundation\\Http\\Kernel->terminateMiddleware(Object(Illuminate\\Http\\Request), Object(Illuminate\\Http\\Response))\n
        #7 /home2/bppfbd/public_html/public/index.php(60): Illuminate\\Foundation\\Http\\Kernel->terminate(Object(Illuminate\\Http\\Request), Object(Illuminate\\Http\\Response))\n
        #8 {main}\n
        "} \n
        """
    ]
    
/home2/bppfbd/public_html/vendor/monolog/monolog/src/Monolog/Logger.php
        }
        $ts->setTimezone(static::$timezone);
 
        $record = array(
            'message' => (string) $message,
            'context' => $context,
            'level' => $level,
            'level_name' => $levelName,
            'channel' => $this->name,
            'datetime' => $ts,
            'extra' => array(),
        );
 
        try {
            foreach ($this->processors as $processor) {
                $record = call_user_func($processor, $record);
            }
 
            while ($handler = current($this->handlers)) {
                if (true === $handler->handle($record)) {
                    break;
                }
 
                next($this->handlers);
            }
        } catch (Exception $e) {
            $this->handleException($e, $record);
        }
 
        return true;
    }
 
    /**
     * Ends a log cycle and frees all resources used by handlers.
     *
     * Closing a Handler means flushing all buffers and freeing any open resources/handles.
     * Handlers that have been closed should be able to accept log records again and re-open
     * themselves on demand, but this may not always be possible depending on implementation.
     *
     * This is useful at the end of a request and will be called automatically on every handler
Arguments
  1. array:8 [
      "message" => "file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded"
      "context" => array:1 [
        "exception" => ErrorException {#142
          #message: "file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded"
          #code: 0
          #file: "/home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php"
          #line: 122
          #severity: E_NOTICE
        }
      ]
      "level" => 400
      "level_name" => "ERROR"
      "channel" => "local"
      "datetime" => DateTime @1747605528 {#1416
        date: 2025-05-18 21:58:48.454182 UTC (+00:00)
      }
      "extra" => []
      "formatted" => """
        [2025-05-18 21:58:48] local.ERROR: file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded {"exception":"[object] (ErrorException(code: 0): file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded at /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:122)\n
        [stacktrace]\n
        #0 [internal function]: Illuminate\\Foundation\\Bootstrap\\HandleExceptions->handleError(8, 'file_put_conten...', '/home2/bppfbd/p...', 122, Array)\n
        #1 /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(122): file_put_contents('/home2/bppfbd/p...', 'a:3:{s:6:\"_toke...', 2)\n
        #2 /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Session/FileSessionHandler.php(83): Illuminate\\Filesystem\\Filesystem->put('/home2/bppfbd/p...', 'a:3:{s:6:\"_toke...', true)\n
        #3 /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Session/Store.php(129): Illuminate\\Session\\FileSessionHandler->write('y5B6kJSmeV1ECSb...', 'a:3:{s:6:\"_toke...')\n
        #4 /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(87): Illuminate\\Session\\Store->save()\n
        #5 /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(218): Illuminate\\Session\\Middleware\\StartSession->terminate(Object(Illuminate\\Http\\Request), Object(Illuminate\\Http\\Response))\n
        #6 /home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(189): Illuminate\\Foundation\\Http\\Kernel->terminateMiddleware(Object(Illuminate\\Http\\Request), Object(Illuminate\\Http\\Response))\n
        #7 /home2/bppfbd/public_html/public/index.php(60): Illuminate\\Foundation\\Http\\Kernel->terminate(Object(Illuminate\\Http\\Request), Object(Illuminate\\Http\\Response))\n
        #8 {main}\n
        "} \n
        """
    ]
    
/home2/bppfbd/public_html/vendor/monolog/monolog/src/Monolog/Logger.php
     * @param  array  $context The log context
     * @return bool   Whether the record has been processed
     */
    public function err($message, array $context = array())
    {
        return $this->addRecord(static::ERROR, $message, $context);
    }
 
    /**
     * Adds a log record at the ERROR level.
     *
     * This method allows for compatibility with common interfaces.
     *
     * @param  string $message The log message
     * @param  array  $context The log context
     * @return bool   Whether the record has been processed
     */
    public function error($message, array $context = array())
    {
        return $this->addRecord(static::ERROR, $message, $context);
    }
 
    /**
     * Adds a log record at the CRITICAL level.
     *
     * This method allows for compatibility with common interfaces.
     *
     * @param  string $message The log message
     * @param  array  $context The log context
     * @return bool   Whether the record has been processed
     */
    public function crit($message, array $context = array())
    {
        return $this->addRecord(static::CRITICAL, $message, $context);
    }
 
    /**
     * Adds a log record at the CRITICAL level.
     *
     * This method allows for compatibility with common interfaces.
Arguments
  1. 400
    
  2. "file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded"
    
  3. array:1 [
      "exception" => ErrorException {#142
        #message: "file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded"
        #code: 0
        #file: "/home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php"
        #line: 122
        #severity: E_NOTICE
      }
    ]
    
/home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Log/Logger.php
     * @return void
     */
    public function write($level, $message, array $context = [])
    {
        $this->writeLog($level, $message, $context);
    }
 
    /**
     * Write a message to the log.
     *
     * @param  string  $level
     * @param  string  $message
     * @param  array  $context
     * @return void
     */
    protected function writeLog($level, $message, $context)
    {
        $this->fireLogEvent($level, $message = $this->formatMessage($message), $context);
 
        $this->logger->{$level}($message, $context);
    }
 
    /**
     * Register a new callback handler for when a log event is triggered.
     *
     * @param  \Closure  $callback
     * @return void
     *
     * @throws \RuntimeException
     */
    public function listen(Closure $callback)
    {
        if (! isset($this->dispatcher)) {
            throw new RuntimeException('Events dispatcher has not been set.');
        }
 
        $this->dispatcher->listen(MessageLogged::class, $callback);
    }
 
    /**
Arguments
  1. "file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded"
    
  2. array:1 [
      "exception" => ErrorException {#142
        #message: "file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded"
        #code: 0
        #file: "/home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php"
        #line: 122
        #severity: E_NOTICE
      }
    ]
    
/home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Log/Logger.php
     *
     * @param  string  $message
     * @param  array  $context
     * @return void
     */
    public function critical($message, array $context = [])
    {
        $this->writeLog(__FUNCTION__, $message, $context);
    }
 
    /**
     * Log an error message to the logs.
     *
     * @param  string  $message
     * @param  array  $context
     * @return void
     */
    public function error($message, array $context = [])
    {
        $this->writeLog(__FUNCTION__, $message, $context);
    }
 
    /**
     * Log a warning message to the logs.
     *
     * @param  string  $message
     * @param  array  $context
     * @return void
     */
    public function warning($message, array $context = [])
    {
        $this->writeLog(__FUNCTION__, $message, $context);
    }
 
    /**
     * Log a notice to the logs.
     *
     * @param  string  $message
     * @param  array  $context
     * @return void
Arguments
  1. "error"
    
  2. "file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded"
    
  3. array:1 [
      "exception" => ErrorException {#142
        #message: "file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded"
        #code: 0
        #file: "/home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php"
        #line: 122
        #severity: E_NOTICE
      }
    ]
    
/home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Log/LogManager.php
     *
     * @return void
     */
    public function critical($message, array $context = [])
    {
        $this->driver()->critical($message, $context);
    }
 
    /**
     * Runtime errors that do not require immediate action but should typically
     * be logged and monitored.
     *
     * @param string $message
     * @param array  $context
     *
     * @return void
     */
    public function error($message, array $context = [])
    {
        $this->driver()->error($message, $context);
    }
 
    /**
     * Exceptional occurrences that are not errors.
     *
     * Example: Use of deprecated APIs, poor use of an API, undesirable things
     * that are not necessarily wrong.
     *
     * @param string $message
     * @param array  $context
     *
     * @return void
     */
    public function warning($message, array $context = [])
    {
        $this->driver()->warning($message, $context);
    }
 
    /**
     * Normal but significant events.
Arguments
  1. "file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded"
    
  2. array:1 [
      "exception" => ErrorException {#142
        #message: "file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded"
        #code: 0
        #file: "/home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php"
        #line: 122
        #severity: E_NOTICE
      }
    ]
    
/home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php
     */
    public function report(Exception $e)
    {
        if ($this->shouldntReport($e)) {
            return;
        }
 
        if (method_exists($e, 'report')) {
            return $e->report();
        }
 
        try {
            $logger = $this->container->make(LoggerInterface::class);
        } catch (Exception $ex) {
            throw $e;
        }
 
        $logger->error(
            $e->getMessage(),
            array_merge($this->context(), ['exception' => $e]
        ));
    }
 
    /**
     * Determine if the exception should be reported.
     *
     * @param  \Exception  $e
     * @return bool
     */
    public function shouldReport(Exception $e)
    {
        return ! $this->shouldntReport($e);
    }
 
    /**
     * Determine if the exception is in the "do not report" list.
     *
     * @param  \Exception  $e
     * @return bool
     */
Arguments
  1. "file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded"
    
  2. array:1 [
      "exception" => ErrorException {#142
        #message: "file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded"
        #code: 0
        #file: "/home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php"
        #line: 122
        #severity: E_NOTICE
      }
    ]
    
/home2/bppfbd/public_html/app/Exceptions/Handler.php
 
    /**
     * A list of the inputs that are never flashed for validation exceptions.
     *
     * @var array
     */
    protected $dontFlash = [
        'password',
        'password_confirmation',
    ];
 
    /**
     * Report or log an exception.
     *
     * @param  \Exception  $exception
     * @return void
     */
    public function report(Exception $exception)
    {
        parent::report($exception);
    }
 
    /**
     * Render an exception into an HTTP response.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Exception  $exception
     * @return \Illuminate\Http\Response
     */
    public function render($request, Exception $exception)
    {
        return parent::render($request, $exception);
    }
}
 
Arguments
  1. ErrorException {#142
      #message: "file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded"
      #code: 0
      #file: "/home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php"
      #line: 122
      #severity: E_NOTICE
    }
    
/home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php
    }
 
    /**
     * Handle an uncaught exception from the application.
     *
     * Note: Most exceptions can be handled via the try / catch block in
     * the HTTP and Console kernels. But, fatal error exceptions must
     * be handled differently since they are not normal exceptions.
     *
     * @param  \Throwable  $e
     * @return void
     */
    public function handleException($e)
    {
        if (! $e instanceof Exception) {
            $e = new FatalThrowableError($e);
        }
 
        try {
            $this->getExceptionHandler()->report($e);
        } catch (Exception $e) {
            //
        }
 
        if ($this->app->runningInConsole()) {
            $this->renderForConsole($e);
        } else {
            $this->renderHttpResponse($e);
        }
    }
 
    /**
     * Render an exception to the console.
     *
     * @param  \Exception  $e
     * @return void
     */
    protected function renderForConsole(Exception $e)
    {
        $this->getExceptionHandler()->renderForConsole(new ConsoleOutput, $e);
Arguments
  1. ErrorException {#142
      #message: "file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded"
      #code: 0
      #file: "/home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php"
      #line: 122
      #severity: E_NOTICE
    }
    
[internal]
Arguments
  1. ErrorException {#142
      #message: "file_put_contents(): write of 238 bytes failed with errno=122 Disk quota exceeded"
      #code: 0
      #file: "/home2/bppfbd/public_html/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php"
      #line: 122
      #severity: E_NOTICE
    }
    

Environment & details:

empty
empty
empty
empty
empty
Key Value
LSPHP_ENABLE_USER_INI
"on"
PATH
"/usr/local/bin:/usr/bin:/bin"
TEMP
"/tmp"
TMP
"/tmp"
TMPDIR
"/tmp"
PWD
"/"
HTTP_ACCEPT
"*/*"
HTTP_ACCEPT_ENCODING
"gzip, br, zstd, deflate"
CONTENT_LENGTH
"0"
HTTP_HOST
"bppfbd.org"
HTTP_USER_AGENT
"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"
HTTP_X_HTTPS
"1"
REDIRECT_REDIRECT_UNIQUE_ID
"aCpYF5JUjg7wMH_oUrIpHwAAXXg"
REDIRECT_REDIRECT_QS_ConnectionId
"174760552756070528423548"
REDIRECT_REDIRECT_SCRIPT_URL
"/About-details/history-of-paediatric-pulmonology-in-bangladesh"
REDIRECT_REDIRECT_SCRIPT_URI
"https://bppfbd.org/About-details/history-of-paediatric-pulmonology-in-bangladesh"
REDIRECT_REDIRECT_HTTPS
"on"
REDIRECT_REDIRECT_SSL_TLS_SNI
"bppfbd.org"
REDIRECT_REDIRECT_HTTP2
"on"
REDIRECT_REDIRECT_H2PUSH
"off"
REDIRECT_REDIRECT_H2_PUSH
"off"
REDIRECT_REDIRECT_H2_PUSHED
""
REDIRECT_REDIRECT_H2_PUSHED_ON
""
REDIRECT_REDIRECT_H2_STREAM_ID
"1"
REDIRECT_REDIRECT_H2_STREAM_TAG
"423548-1437-1"
REDIRECT_REDIRECT_STATUS
"200"
REDIRECT_UNIQUE_ID
"aCpYF5JUjg7wMH_oUrIpHwAAXXg"
REDIRECT_QS_ConnectionId
"174760552756070528423548"
REDIRECT_SCRIPT_URL
"/About-details/history-of-paediatric-pulmonology-in-bangladesh"
REDIRECT_SCRIPT_URI
"https://bppfbd.org/About-details/history-of-paediatric-pulmonology-in-bangladesh"
REDIRECT_HTTPS
"on"
REDIRECT_SSL_TLS_SNI
"bppfbd.org"
REDIRECT_HTTP2
"on"
REDIRECT_H2PUSH
"off"
REDIRECT_H2_PUSH
"off"
REDIRECT_H2_PUSHED
""
REDIRECT_H2_PUSHED_ON
""
REDIRECT_H2_STREAM_ID
"1"
REDIRECT_H2_STREAM_TAG
"423548-1437-1"
REDIRECT_STATUS
"200"
UNIQUE_ID
"aCpYF5JUjg7wMH_oUrIpHwAAXXg"
QS_ConnectionId
"174760552756070528423548"
SCRIPT_URL
"/About-details/history-of-paediatric-pulmonology-in-bangladesh"
SCRIPT_URI
"https://bppfbd.org/About-details/history-of-paediatric-pulmonology-in-bangladesh"
HTTPS
"on"
SSL_TLS_SNI
"bppfbd.org"
HTTP2
"on"
H2PUSH
"off"
H2_PUSH
"off"
H2_PUSHED
""
H2_PUSHED_ON
""
H2_STREAM_ID
"1"
H2_STREAM_TAG
"423548-1437-1"
SERVER_SIGNATURE
""
SERVER_SOFTWARE
"Apache"
SERVER_NAME
"bppfbd.org"
SERVER_ADDR
"192.185.184.63"
SERVER_PORT
"443"
REMOTE_ADDR
"18.117.136.239"
DOCUMENT_ROOT
"/home2/bppfbd/public_html"
REQUEST_SCHEME
"https"
CONTEXT_PREFIX
""
CONTEXT_DOCUMENT_ROOT
"/home2/bppfbd/public_html"
SERVER_ADMIN
"webmaster@bppfbd.org"
SCRIPT_FILENAME
"/home2/bppfbd/public_html/public/index.php"
REMOTE_PORT
"13998"
REDIRECT_URL
"/public/About-details/history-of-paediatric-pulmonology-in-bangladesh"
SERVER_PROTOCOL
"HTTP/2.0"
REQUEST_METHOD
"GET"
QUERY_STRING
""
REQUEST_URI
"/About-details/history-of-paediatric-pulmonology-in-bangladesh"
SCRIPT_NAME
"/public/index.php"
PHP_SELF
"/public/index.php"
REQUEST_TIME_FLOAT
1747605528.0823
REQUEST_TIME
1747605528
argv
[]
argc
0
APP_NAME
"BPPF"
APP_ENV
"local"
APP_KEY
"base64:niSS5FWDNwT7pudPDTq5NyRiJZTGVD7s6t6jVaQXAGY="
APP_DEBUG
"true"
APP_URL
"http://localhost"
LOG_CHANNEL
"stack"
DB_CONNECTION
"mysql"
DB_HOST
"127.0.0.1"
DB_PORT
"3306"
DB_DATABASE
"bppfbd_bppf"
DB_USERNAME
"bppfbd_bppf"
DB_PASSWORD
"bppfbd_bppf"
BROADCAST_DRIVER
"log"
CACHE_DRIVER
"file"
QUEUE_CONNECTION
"sync"
SESSION_DRIVER
"file"
SESSION_LIFETIME
"120"
REDIS_HOST
"127.0.0.1"
REDIS_PASSWORD
"null"
REDIS_PORT
"6379"
MAIL_MAILER
"smtp"
MAIL_HOST
"mail.bppfbd.org"
MAIL_PORT
"465"
MAIL_USERNAME
"registration@bppfbd.org"
MAIL_PASSWORD
"BISMILLAH@#$786"
MAIL_ENCRYPTION
"ssl"
MAIL_FROM_ADDRESS
"registration@bppfbd.org"
MAIL_FROM_NAME
"Bangladesh Paediatric Pulmonology Forum"
MERCHANT_USERNAME
"BangladeshPaediatricPulmonologyForum"
MERCHANT_PASSWORD
"bang3e54e&hmvhy3"
MERCHANT_PREFIX
"BPF"
MERCHANT_RETURN_URL
"https://bppfbd.org/payment-response"
MERCHANT_CANCEL_URL
"http://bppfbd.org/dmc/failed"
ENGINE_URL
"https://engine.shurjopayment.com"
PUSHER_APP_ID
""
PUSHER_APP_KEY
""
PUSHER_APP_SECRET
""
PUSHER_APP_CLUSTER
"mt1"
MIX_PUSHER_APP_KEY
""
MIX_PUSHER_APP_CLUSTER
"mt1"
Key Value
APP_NAME
"BPPF"
APP_ENV
"local"
APP_KEY
"base64:niSS5FWDNwT7pudPDTq5NyRiJZTGVD7s6t6jVaQXAGY="
APP_DEBUG
"true"
APP_URL
"http://localhost"
LOG_CHANNEL
"stack"
DB_CONNECTION
"mysql"
DB_HOST
"127.0.0.1"
DB_PORT
"3306"
DB_DATABASE
"bppfbd_bppf"
DB_USERNAME
"bppfbd_bppf"
DB_PASSWORD
"bppfbd_bppf"
BROADCAST_DRIVER
"log"
CACHE_DRIVER
"file"
QUEUE_CONNECTION
"sync"
SESSION_DRIVER
"file"
SESSION_LIFETIME
"120"
REDIS_HOST
"127.0.0.1"
REDIS_PASSWORD
"null"
REDIS_PORT
"6379"
MAIL_MAILER
"smtp"
MAIL_HOST
"mail.bppfbd.org"
MAIL_PORT
"465"
MAIL_USERNAME
"registration@bppfbd.org"
MAIL_PASSWORD
"BISMILLAH@#$786"
MAIL_ENCRYPTION
"ssl"
MAIL_FROM_ADDRESS
"registration@bppfbd.org"
MAIL_FROM_NAME
"Bangladesh Paediatric Pulmonology Forum"
MERCHANT_USERNAME
"BangladeshPaediatricPulmonologyForum"
MERCHANT_PASSWORD
"bang3e54e&hmvhy3"
MERCHANT_PREFIX
"BPF"
MERCHANT_RETURN_URL
"https://bppfbd.org/payment-response"
MERCHANT_CANCEL_URL
"http://bppfbd.org/dmc/failed"
ENGINE_URL
"https://engine.shurjopayment.com"
PUSHER_APP_ID
""
PUSHER_APP_KEY
""
PUSHER_APP_SECRET
""
PUSHER_APP_CLUSTER
"mt1"
MIX_PUSHER_APP_KEY
""
MIX_PUSHER_APP_CLUSTER
"mt1"
0. Whoops\Handler\PrettyPageHandler