Learn to debug Firebase functions locally with our step-by-step guide on setting up the Firebase CLI, running emulators, and using VS Code or CLI tools.

Book a call with an Expert
Starting a new venture? Need to upgrade your web app? RapidDev builds application with your growth in mind.
Step 1: Set Up Your Development Environment
To debug Firebase functions locally, you need to install the Firebase CLI. Make sure Node.js is installed on your system, then run:
npm install -g firebase-tools
Step 2: Initialize Firebase in Your Project
Navigate to your project directory and initialize Firebase using the CLI:
firebase init functions
Follow the prompts to select your project and set up Cloud Functions.
Step 3: Install Dependencies
Navigate to the "functions" directory created by Firebase and install necessary dependencies:
cd functions
npm install
Step 4: Write Your Firebase Function
Create or modify functions in index.js. For example:
const functions = require('firebase-functions');
exports.helloWorld = functions.https.onRequest((request, response) => {
response.send("Hello from Firebase!");
});
Step 5: Set Up Firebase Emulator
Start the Firebase emulator to simulate your Firebase project locally:
firebase emulators:start
This command will run emulators for Firebase products including functions.
Step 6: Debugging with VS Code or CLI
Debugging with VS Code:
.vscode/launch.json. Example:
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "attach",
"name": "Attach to Functions",
"port": 9229,
"restart": true,
"skipFiles": ["/\*\*"]
}
]
}
Start emulators with the debugging port:
firebase emulators:start --inspect-functions
Then, use the VS Code debugger to attach to the running process.
Debugging with CLI:
firebase emulators:start --inspect-functions=0.0.0.0:9229
chrome://inspect to inspect your running functions.
Step 7: Test Your Function
You can manually test your functions using curl or Postman. For example, to test locally:
curl http://localhost:5001/YOUR_PROJECT_ID/us-central1/helloWorld
Step 8: Monitor Logs
Firebase CLI's emulator will display logs in your terminal, making it easier to debug issues.
To tail Firebase function logs, you can use:
firebase functions:log
This allows you to see what's happening in real-time to troubleshoot your functions.
Step 9: Updating and Re-deploying
After making changes, ensure the emulator reflects your latest functions by restarting it, or redeploy to production via:
firebase deploy --only functions
This deploys your functions to Firebase’s cloud environment, where they can be tested further or released into production.
When it comes to serving you, we sweat the little things. That’s why our work makes a big impact.