diff --git a/.env.example b/.env.example index fd4aa2b..3e23f14 100644 --- a/.env.example +++ b/.env.example @@ -6,12 +6,13 @@ APP_TIMEZONE=UTC APP_TIMEZONE_DISPLAY="Europe/London" APP_URL=http://laravel-inertia-template.test +LOG_CHANNEL=stack +LOG_STACK=single,nightwatch + DB_CONNECTION=sqlite SESSION_DRIVER=database - CACHE_STORE=database - FILESYSTEM_DISK=local QUEUE_CONNECTION=sync @@ -19,11 +20,9 @@ MAIL_MAILER=log MAIL_FROM_ADDRESS="admin@laravel-inertia-template.test" MAIL_FROM_NAME="${APP_NAME}" -SENTRY_LARAVEL_DSN="" -SENTRY_TRACES_SAMPLE_RATE=0.1 - VITE_APP_NAME="${APP_NAME}" VITE_APP_ENV="${APP_ENV}" -VITE_SENTRY_DSN_PUBLIC="" + +NIGHTWATCH_TOKEN= HEALTH_CHECK_TO_ADDRESS= diff --git a/bootstrap/app.php b/bootstrap/app.php index b02633f..4fb0811 100644 --- a/bootstrap/app.php +++ b/bootstrap/app.php @@ -3,7 +3,6 @@ use Illuminate\Foundation\Application; use Illuminate\Foundation\Configuration\Exceptions; use Illuminate\Foundation\Configuration\Middleware; -use Sentry\Laravel\Integration; return Application::configure(basePath: dirname(__DIR__)) ->withRouting( @@ -25,5 +24,5 @@ ]); }) ->withExceptions(function (Exceptions $exceptions) { - Integration::handles($exceptions); + // })->create(); diff --git a/bun.lockb b/bun.lockb index c9a5d5d..bbe508d 100755 Binary files a/bun.lockb and b/bun.lockb differ diff --git a/composer.json b/composer.json index ca3f001..b17cf74 100644 --- a/composer.json +++ b/composer.json @@ -8,11 +8,11 @@ "filament/filament": "^3.2", "inertiajs/inertia-laravel": "^2.0", "laravel/framework": "^12.0", + "laravel/nightwatch": "^1.19", "laravel/pulse": "^1.2", "laravel/sanctum": "^4.0", "laravel/tinker": "^2.9", "laravel/wayfinder": "^0.1.5", - "sentry/sentry-laravel": "^4.7", "spatie/laravel-health": "^1.31", "spatie/laravel-permission": "^6.9", "spatie/security-advisories-health-check": "^1.2", diff --git a/composer.lock b/composer.lock index a2f9d08..49b9e02 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "0b9ebacae08044b29271d45b8bde7c81", + "content-hash": "260b45014f1e2a0c3270e55c7746313c", "packages": [ { "name": "anourvalar/eloquent-serialize", @@ -2162,66 +2162,6 @@ }, "time": "2025-09-28T21:21:36+00:00" }, - { - "name": "jean85/pretty-package-versions", - "version": "2.1.1", - "source": { - "type": "git", - "url": "https://github.com/Jean85/pretty-package-versions.git", - "reference": "4d7aa5dab42e2a76d99559706022885de0e18e1a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/Jean85/pretty-package-versions/zipball/4d7aa5dab42e2a76d99559706022885de0e18e1a", - "reference": "4d7aa5dab42e2a76d99559706022885de0e18e1a", - "shasum": "" - }, - "require": { - "composer-runtime-api": "^2.1.0", - "php": "^7.4|^8.0" - }, - "require-dev": { - "friendsofphp/php-cs-fixer": "^3.2", - "jean85/composer-provided-replaced-stub-package": "^1.0", - "phpstan/phpstan": "^2.0", - "phpunit/phpunit": "^7.5|^8.5|^9.6", - "rector/rector": "^2.0", - "vimeo/psalm": "^4.3 || ^5.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.x-dev" - } - }, - "autoload": { - "psr-4": { - "Jean85\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Alessandro Lai", - "email": "alessandro.lai85@gmail.com" - } - ], - "description": "A library to get pretty versions strings of installed dependencies", - "keywords": [ - "composer", - "package", - "release", - "versions" - ], - "support": { - "issues": "https://github.com/Jean85/pretty-package-versions/issues", - "source": "https://github.com/Jean85/pretty-package-versions/tree/2.1.1" - }, - "time": "2025-03-19T14:43:43+00:00" - }, { "name": "kirschbaum-development/eloquent-power-joins", "version": "4.2.9", @@ -2504,6 +2444,97 @@ }, "time": "2025-10-29T14:20:57+00:00" }, + { + "name": "laravel/nightwatch", + "version": "v1.19.0", + "source": { + "type": "git", + "url": "https://github.com/laravel/nightwatch.git", + "reference": "5d3e86a84514a470d1827ab5771ae38e46b24773" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/laravel/nightwatch/zipball/5d3e86a84514a470d1827ab5771ae38e46b24773", + "reference": "5d3e86a84514a470d1827ab5771ae38e46b24773", + "shasum": "" + }, + "require": { + "ext-zlib": "*", + "guzzlehttp/promises": "^2.0", + "laravel/framework": "^10.0|^11.0|^12.0", + "monolog/monolog": "^3.6", + "nesbot/carbon": "^2.0|^3.0", + "php": "^8.2", + "psr/http-message": "^1.0|^2.0", + "psr/log": "^1.0|^2.0|^3.0", + "ramsey/uuid": "^4.0", + "symfony/console": "^6.0|^7.0", + "symfony/http-foundation": "^6.0|^7.0", + "symfony/polyfill-php84": "^1.29" + }, + "require-dev": { + "aws/aws-sdk-php": "^3.349", + "ext-pcntl": "*", + "ext-pdo": "*", + "guzzlehttp/guzzle": "^7.0", + "guzzlehttp/psr7": "^2.0", + "laravel/horizon": "^5.4", + "laravel/pint": "1.21.0", + "laravel/vapor-core": "^2.38.2", + "livewire/livewire": "^2.0|^3.0", + "mockery/mockery": "^1.0", + "mongodb/laravel-mongodb": "^4.0|^5.0", + "orchestra/testbench": "^8.0|^9.0|^10.0", + "orchestra/testbench-core": "^8.0|^9.0|^10.0", + "orchestra/workbench": "^8.0|^9.0|^10.0", + "phpstan/phpstan": "^1.0", + "phpunit/phpunit": "^10.0|^11.0", + "singlestoredb/singlestoredb-laravel": "^1.0|^2.0", + "spatie/laravel-ignition": "^2.0", + "symfony/mailer": "^6.0|^7.0", + "symfony/mime": "^6.0|^7.0", + "symfony/var-dumper": "^6.0|^7.0" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "Laravel\\Nightwatch\\NightwatchServiceProvider" + ] + } + }, + "autoload": { + "files": [ + "agent/helpers.php" + ], + "psr-4": { + "Laravel\\Nightwatch\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "The official Laravel Nightwatch package.", + "homepage": "https://nightwatch.laravel.com", + "keywords": [ + "Insights", + "laravel", + "monitoring" + ], + "support": { + "docs": "https://nightwatch.laravel.com/docs", + "issues": "https://github.com/laravel/nightwatch/issues", + "source": "https://github.com/laravel/nightwatch" + }, + "time": "2025-11-25T07:22:08+00:00" + }, { "name": "laravel/prompts", "version": "v0.3.7", @@ -4196,84 +4227,6 @@ ], "time": "2025-10-18T11:10:27+00:00" }, - { - "name": "nyholm/psr7", - "version": "1.8.2", - "source": { - "type": "git", - "url": "https://github.com/Nyholm/psr7.git", - "reference": "a71f2b11690f4b24d099d6b16690a90ae14fc6f3" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/Nyholm/psr7/zipball/a71f2b11690f4b24d099d6b16690a90ae14fc6f3", - "reference": "a71f2b11690f4b24d099d6b16690a90ae14fc6f3", - "shasum": "" - }, - "require": { - "php": ">=7.2", - "psr/http-factory": "^1.0", - "psr/http-message": "^1.1 || ^2.0" - }, - "provide": { - "php-http/message-factory-implementation": "1.0", - "psr/http-factory-implementation": "1.0", - "psr/http-message-implementation": "1.0" - }, - "require-dev": { - "http-interop/http-factory-tests": "^0.9", - "php-http/message-factory": "^1.0", - "php-http/psr7-integration-tests": "^1.0", - "phpunit/phpunit": "^7.5 || ^8.5 || ^9.4", - "symfony/error-handler": "^4.4" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.8-dev" - } - }, - "autoload": { - "psr-4": { - "Nyholm\\Psr7\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Tobias Nyholm", - "email": "tobias.nyholm@gmail.com" - }, - { - "name": "Martijn van der Ven", - "email": "martijn@vanderven.se" - } - ], - "description": "A fast PHP7 implementation of PSR-7", - "homepage": "https://tnyholm.se", - "keywords": [ - "psr-17", - "psr-7" - ], - "support": { - "issues": "https://github.com/Nyholm/psr7/issues", - "source": "https://github.com/Nyholm/psr7/tree/1.8.2" - }, - "funding": [ - { - "url": "https://github.com/Zegnat", - "type": "github" - }, - { - "url": "https://github.com/nyholm", - "type": "github" - } - ], - "time": "2024-09-09T07:06:30+00:00" - }, { "name": "openspout/openspout", "version": "v4.32.0", @@ -5305,183 +5258,6 @@ ], "time": "2025-02-25T09:09:36+00:00" }, - { - "name": "sentry/sentry", - "version": "4.17.1", - "source": { - "type": "git", - "url": "https://github.com/getsentry/sentry-php.git", - "reference": "5c696b8de57e841a2bf3b6f6eecfd99acfdda80c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/getsentry/sentry-php/zipball/5c696b8de57e841a2bf3b6f6eecfd99acfdda80c", - "reference": "5c696b8de57e841a2bf3b6f6eecfd99acfdda80c", - "shasum": "" - }, - "require": { - "ext-curl": "*", - "ext-json": "*", - "ext-mbstring": "*", - "guzzlehttp/psr7": "^1.8.4|^2.1.1", - "jean85/pretty-package-versions": "^1.5|^2.0.4", - "php": "^7.2|^8.0", - "psr/log": "^1.0|^2.0|^3.0", - "symfony/options-resolver": "^4.4.30|^5.0.11|^6.0|^7.0" - }, - "conflict": { - "raven/raven": "*" - }, - "require-dev": { - "friendsofphp/php-cs-fixer": "^3.4", - "guzzlehttp/promises": "^2.0.3", - "guzzlehttp/psr7": "^1.8.4|^2.1.1", - "monolog/monolog": "^1.6|^2.0|^3.0", - "phpbench/phpbench": "^1.0", - "phpstan/phpstan": "^1.3", - "phpunit/phpunit": "^8.5|^9.6", - "vimeo/psalm": "^4.17" - }, - "suggest": { - "monolog/monolog": "Allow sending log messages to Sentry by using the included Monolog handler." - }, - "type": "library", - "autoload": { - "files": [ - "src/functions.php" - ], - "psr-4": { - "Sentry\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Sentry", - "email": "accounts@sentry.io" - } - ], - "description": "PHP SDK for Sentry (http://sentry.io)", - "homepage": "http://sentry.io", - "keywords": [ - "crash-reporting", - "crash-reports", - "error-handler", - "error-monitoring", - "log", - "logging", - "profiling", - "sentry", - "tracing" - ], - "support": { - "issues": "https://github.com/getsentry/sentry-php/issues", - "source": "https://github.com/getsentry/sentry-php/tree/4.17.1" - }, - "funding": [ - { - "url": "https://sentry.io/", - "type": "custom" - }, - { - "url": "https://sentry.io/pricing/", - "type": "custom" - } - ], - "time": "2025-10-23T15:19:24+00:00" - }, - { - "name": "sentry/sentry-laravel", - "version": "4.18.0", - "source": { - "type": "git", - "url": "https://github.com/getsentry/sentry-laravel.git", - "reference": "b9a647f93f9a040eaf6f21d0684f2351310d3360" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/getsentry/sentry-laravel/zipball/b9a647f93f9a040eaf6f21d0684f2351310d3360", - "reference": "b9a647f93f9a040eaf6f21d0684f2351310d3360", - "shasum": "" - }, - "require": { - "illuminate/support": "^6.0 | ^7.0 | ^8.0 | ^9.0 | ^10.0 | ^11.0 | ^12.0", - "nyholm/psr7": "^1.0", - "php": "^7.2 | ^8.0", - "sentry/sentry": "^4.16.0", - "symfony/psr-http-message-bridge": "^1.0 | ^2.0 | ^6.0 | ^7.0" - }, - "require-dev": { - "friendsofphp/php-cs-fixer": "^3.11", - "guzzlehttp/guzzle": "^7.2", - "laravel/folio": "^1.1", - "laravel/framework": "^6.0 | ^7.0 | ^8.0 | ^9.0 | ^10.0 | ^11.0 | ^12.0", - "livewire/livewire": "^2.0 | ^3.0", - "mockery/mockery": "^1.3", - "orchestra/testbench": "^4.7 | ^5.1 | ^6.0 | ^7.0 | ^8.0 | ^9.0 | ^10.0", - "phpstan/phpstan": "^1.10", - "phpunit/phpunit": "^8.4 | ^9.3 | ^10.4 | ^11.5" - }, - "type": "library", - "extra": { - "laravel": { - "aliases": { - "Sentry": "Sentry\\Laravel\\Facade" - }, - "providers": [ - "Sentry\\Laravel\\ServiceProvider", - "Sentry\\Laravel\\Tracing\\ServiceProvider" - ] - } - }, - "autoload": { - "psr-0": { - "Sentry\\Laravel\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Sentry", - "email": "accounts@sentry.io" - } - ], - "description": "Laravel SDK for Sentry (https://sentry.io)", - "homepage": "https://sentry.io", - "keywords": [ - "crash-reporting", - "crash-reports", - "error-handler", - "error-monitoring", - "laravel", - "log", - "logging", - "profiling", - "sentry", - "tracing" - ], - "support": { - "issues": "https://github.com/getsentry/sentry-laravel/issues", - "source": "https://github.com/getsentry/sentry-laravel/tree/4.18.0" - }, - "funding": [ - { - "url": "https://sentry.io/", - "type": "custom" - }, - { - "url": "https://sentry.io/pricing/", - "type": "custom" - } - ], - "time": "2025-10-20T12:57:51+00:00" - }, { "name": "spatie/color", "version": "1.8.0", @@ -7411,77 +7187,6 @@ ], "time": "2025-09-16T08:38:17+00:00" }, - { - "name": "symfony/options-resolver", - "version": "v7.3.3", - "source": { - "type": "git", - "url": "https://github.com/symfony/options-resolver.git", - "reference": "0ff2f5c3df08a395232bbc3c2eb7e84912df911d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/options-resolver/zipball/0ff2f5c3df08a395232bbc3c2eb7e84912df911d", - "reference": "0ff2f5c3df08a395232bbc3c2eb7e84912df911d", - "shasum": "" - }, - "require": { - "php": ">=8.2", - "symfony/deprecation-contracts": "^2.5|^3" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\OptionsResolver\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Provides an improved replacement for the array_replace PHP function", - "homepage": "https://symfony.com", - "keywords": [ - "config", - "configuration", - "options" - ], - "support": { - "source": "https://github.com/symfony/options-resolver/tree/v7.3.3" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://github.com/nicolas-grekas", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2025-08-05T10:16:07+00:00" - }, { "name": "symfony/polyfill-ctype", "version": "v1.33.0", @@ -8446,89 +8151,6 @@ ], "time": "2025-09-11T10:12:26+00:00" }, - { - "name": "symfony/psr-http-message-bridge", - "version": "v7.3.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/psr-http-message-bridge.git", - "reference": "03f2f72319e7acaf2a9f6fcbe30ef17eec51594f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/psr-http-message-bridge/zipball/03f2f72319e7acaf2a9f6fcbe30ef17eec51594f", - "reference": "03f2f72319e7acaf2a9f6fcbe30ef17eec51594f", - "shasum": "" - }, - "require": { - "php": ">=8.2", - "psr/http-message": "^1.0|^2.0", - "symfony/http-foundation": "^6.4|^7.0" - }, - "conflict": { - "php-http/discovery": "<1.15", - "symfony/http-kernel": "<6.4" - }, - "require-dev": { - "nyholm/psr7": "^1.1", - "php-http/discovery": "^1.15", - "psr/log": "^1.1.4|^2|^3", - "symfony/browser-kit": "^6.4|^7.0", - "symfony/config": "^6.4|^7.0", - "symfony/event-dispatcher": "^6.4|^7.0", - "symfony/framework-bundle": "^6.4|^7.0", - "symfony/http-kernel": "^6.4|^7.0" - }, - "type": "symfony-bridge", - "autoload": { - "psr-4": { - "Symfony\\Bridge\\PsrHttpMessage\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "PSR HTTP message bridge", - "homepage": "https://symfony.com", - "keywords": [ - "http", - "http-message", - "psr-17", - "psr-7" - ], - "support": { - "source": "https://github.com/symfony/psr-http-message-bridge/tree/v7.3.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2024-09-26T08:57:56+00:00" - }, { "name": "symfony/routing", "version": "v7.3.4", @@ -9823,6 +9445,66 @@ }, "time": "2025-04-30T06:54:44+00:00" }, + { + "name": "jean85/pretty-package-versions", + "version": "2.1.1", + "source": { + "type": "git", + "url": "https://github.com/Jean85/pretty-package-versions.git", + "reference": "4d7aa5dab42e2a76d99559706022885de0e18e1a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Jean85/pretty-package-versions/zipball/4d7aa5dab42e2a76d99559706022885de0e18e1a", + "reference": "4d7aa5dab42e2a76d99559706022885de0e18e1a", + "shasum": "" + }, + "require": { + "composer-runtime-api": "^2.1.0", + "php": "^7.4|^8.0" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^3.2", + "jean85/composer-provided-replaced-stub-package": "^1.0", + "phpstan/phpstan": "^2.0", + "phpunit/phpunit": "^7.5|^8.5|^9.6", + "rector/rector": "^2.0", + "vimeo/psalm": "^4.3 || ^5.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "Jean85\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Alessandro Lai", + "email": "alessandro.lai85@gmail.com" + } + ], + "description": "A library to get pretty versions strings of installed dependencies", + "keywords": [ + "composer", + "package", + "release", + "versions" + ], + "support": { + "issues": "https://github.com/Jean85/pretty-package-versions/issues", + "source": "https://github.com/Jean85/pretty-package-versions/tree/2.1.1" + }, + "time": "2025-03-19T14:43:43+00:00" + }, { "name": "laravel/pint", "version": "v1.25.1", @@ -13330,5 +13012,5 @@ "php": "^8.2" }, "platform-dev": {}, - "plugin-api-version": "2.6.0" + "plugin-api-version": "2.9.0" } diff --git a/package.json b/package.json index 5fea450..9523e79 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,6 @@ { "devDependencies": { "@inertiajs/vue3": "^2.2.15", - "@sentry/vue": "^8.55.0", "@tailwindcss/forms": "^0.5.10", "@tailwindcss/vite": "^4.1.16", "@vitejs/plugin-vue": "^5.2.4", diff --git a/resources/js/app.js b/resources/js/app.js index 6c4e614..4050a78 100644 --- a/resources/js/app.js +++ b/resources/js/app.js @@ -1,5 +1,3 @@ -import * as Sentry from "@sentry/vue"; - import { createApp, defineAsyncComponent, h } from 'vue'; import { createInertiaApp, Link, Head } from '@inertiajs/vue3'; @@ -20,12 +18,6 @@ createInertiaApp({ setup({ el, App, props, plugin }) { const VueApp = createApp({ render: () => h(App, props) }); - Sentry.init({ - app: VueApp, - dsn: import.meta.env.VITE_SENTRY_DSN_PUBLIC, - environment: import.meta.env.VITE_APP_ENV, - }); - VueApp.use(plugin); VueApp.mixin({ methods: { userCan } });