Profile data for GET http://isizwe.powerlynx.app/portal/api/redirect-flow/order-plan/1?hash=0cbeab2bdcdc30600ccfd1aac2cc00a2

Compare this run View Callgraph Jump to functions

Watch Functions

Function Call Count ewt emu epmu
You have no watch functions setup. Add a watch function now.

Self Wall Time

App\Models\Tenant\VoucherSerie::recalculateQuantity
1,129,503 µs
App\Events\Voucher\VoucherExpirationTrack::handle
1,046,138 µs
main()
14,326 µs
App\Services\RedirectFlow\VoucherCreator::createVoucher
13,838 µs
App\Http\Controllers\Tenant\CaptivePortal\PlansController::orderPlan
5,543 µs
App\Services\RedirectFlow\VoucherCreator::tryToCreateSerieByPlan
2,236 µs

Memory Hogs

load::settings/localization_php
95,208 bytes
App\Models\Tenant\VoucherSerie::recalculateQuantity
44,032 bytes
load::settings/finance_php
28,176 bytes
App\Services\RedirectFlow\VoucherCreator::createVoucher
25,824 bytes
load::settings/status_page_notifications_php
16,944 bytes
load::settings/captive_portal_php
14,880 bytes
Function Call Count Self Wall Time Self CPU Self Memory Usage Self Peak Memory Usage Inclusive Wall Time Inclusive CPU Inclusive Memory Usage Inclusive Peak Memory Usage
App\Models\Tenant\VoucherSerie::recalculateQuantity 1 1,129,503 µs 3,546 µs 44,032 bytes bytes 1,133,858 µs 7,279 µs 71,720 bytes bytes
App\Events\Voucher\VoucherExpirationTrack::handle 1 1,046,138 µs 11,832 µs -2,016 bytes bytes 1,050,914 µs 14,932 µs -120,280 bytes bytes
main() 1 14,326 µs 6,310 µs -4,536 bytes bytes 2,235,019 µs 51,922 µs 227,120 bytes bytes
App\Services\RedirectFlow\VoucherCreator::createVoucher 1 13,838 µs 10,452 µs 25,824 bytes bytes 2,211,862 µs 41,179 µs 114,344 bytes bytes
App\Http\Controllers\Tenant\CaptivePortal\PlansController::orderP… 1 5,543 µs 2,839 µs -23,712 bytes bytes 2,220,305 µs 45,217 µs 150,872 bytes bytes
App\Services\RedirectFlow\VoucherCreator::tryToCreateSerieByPlan 1 2,236 µs 556 µs 5,776 bytes bytes 2,301 µs 623 µs 9,800 bytes bytes
App\Models\Tenant\VoucherSerie::Spatie\Activitylog\Traits\{closur… 2 2,164 µs 2,228 µs 6,032 bytes bytes 4,355 µs 3,733 µs 27,688 bytes bytes
App\Services\Vouchers\ExpirationSyncer::App\Services\Vouchers\{cl… 1 1,952 µs 1,167 µs -1,776 bytes bytes 3,112 µs 1,745 µs 6,656 bytes bytes
App\Repositories\Tenant\Analytics\Dashboard\TopPanels\AggregatedD… 1 1,913 µs 1,479 µs 2,432 bytes bytes 1,937 µs 1,505 µs 3,480 bytes bytes
App\Models\Tenant\Voucher::Spatie\Activitylog\Traits\{closure} 1 1,884 µs 1,892 µs 9,824 bytes bytes 3,386 µs 2,771 µs 27,896 bytes bytes
App\Services\Vouchers\CodeGenerator::checkIfCodeExists 1 1,357 µs 358 µs 1,136 bytes bytes 1,357 µs 358 µs 1,136 bytes bytes
App\Services\Vouchers\ExpirationSyncer::getWorkerIndex 1 1,342 µs 978 µs -123,992 bytes bytes 4,462 µs 2,732 µs -116,784 bytes bytes
App\Services\Vouchers\CodeGenerator::getChars 1 1,242 µs 344 µs -5,256 bytes bytes 1,315 µs 418 µs 1,800 bytes bytes
App\Models\Tenant\VoucherSerie::attributeValuesToBeLogged 1 1,141 µs 508 µs -232 bytes bytes 1,395 µs 778 µs 6,208 bytes bytes
Illuminate\Database\Eloquent\Builder::firstOrNew 1 1,128 µs 543 µs 6,048 bytes bytes 1,128 µs 543 µs 6,048 bytes bytes
App\Repositories\Tenant\RedirectFlow\PlansRepository::checkIfPlan… 1 1,044 µs 467 µs 2,064 bytes bytes 1,044 µs 467 µs 2,064 bytes bytes
App\Models\Tenant\Voucher::attributeValuesToBeLogged 1 1,005 µs 466 µs 2,080 bytes bytes 1,350 µs 813 µs 8,440 bytes bytes
Illuminate\Database\Eloquent\Relations\HasMany::getResults 1 970 µs 472 µs 1,288 bytes bytes 970 µs 472 µs 1,288 bytes bytes
App\Services\Vouchers\CodeGenerator::getCodeLength 1 927 µs 344 µs -5,352 bytes bytes 986 µs 404 µs 1,704 bytes bytes
App\Models\Tenant\VoucherSerie::logChanges 2 633 µs 635 µs 9,880 bytes bytes 660 µs 664 µs 12,320 bytes bytes
Stancl\Tenancy\CacheManager::__call 2 597 µs 174 µs 1,800 bytes bytes 1,711 µs 585 µs 23,208 bytes bytes
Illuminate\Cache\RedisTaggedCache::put 1 444 µs 103 µs 536 bytes bytes 1,031 µs 326 µs 11,456 bytes bytes
Illuminate\Redis\Connections\PhpRedisConnection::zadd 1 433 µs 67 µs 848 bytes bytes 433 µs 67 µs 848 bytes bytes
load::settings/localization_php 3 333 µs 1,034 µs 95,208 bytes bytes 333 µs 1,034 µs 95,208 bytes bytes
App\Models\Tenant\Voucher::logChanges 1 319 µs 319 µs 3,624 bytes bytes 333 µs 334 µs 4,432 bytes bytes
load::settings/finance_php 4 217 µs 220 µs 28,176 bytes bytes 217 µs 220 µs 28,176 bytes bytes
load::settings/captive_portal_php 2 161 µs 163 µs 14,880 bytes bytes 161 µs 163 µs 14,880 bytes bytes
App\Models\Tenant\VoucherSerie::isRestoring 1 160 µs 81 µs 664 bytes bytes 179 µs 103 µs 1,264 bytes bytes
App\Services\Vouchers\ExpirationSyncer::syncVoucher 1 153 µs 178 µs -5,856 bytes bytes 4,776 µs 3,100 µs -118,264 bytes bytes
App\Models\Tenant\Voucher::triggerSyncEvent 1 140 µs 139 µs -2,632 bytes bytes 1,164 µs 901 µs 3,240 bytes bytes
Spatie\Activitylog\ActivityLogger::withProperty 7 119 µs 141 µs 792 bytes bytes 119 µs 141 µs 792 bytes bytes
App\Models\Tenant\Voucher::getLogNameToUse 1 117 µs 25 µs 632 bytes bytes 117 µs 25 µs 632 bytes bytes
load::settings/customers_php 2 90 µs 92 µs 10,032 bytes bytes 90 µs 92 µs 10,032 bytes bytes
load::settings/status_page_notifications_php 3 88 µs 92 µs 16,944 bytes bytes 88 µs 92 µs 16,944 bytes bytes
App\Models\Tenant\VoucherSerie::shouldLogEvent 1 87 µs 85 µs 696 bytes bytes 266 µs 188 µs 1,960 bytes bytes
App\Models\Tenant\Voucher::getExpireTime 1 86 µs 86 µs 272 bytes bytes 152 µs 166 µs 3,496 bytes bytes
App\Models\Tenant\Voucher::triggerExpirationSync 1 83 µs 77 µs 760 bytes bytes 1,050,999 µs 15,011 µs -118,888 bytes bytes
load::settings/voucher_limit_notifications_php 2 71 µs 74 µs 12,080 bytes bytes 71 µs 74 µs 12,080 bytes bytes
load::settings/finance_notifications_php 2 60 µs 63 µs 8,944 bytes bytes 60 µs 63 µs 8,944 bytes bytes
load::settings/splynx_integration_php 2 59 µs 62 µs 12,752 bytes bytes 59 µs 62 µs 12,752 bytes bytes
App\Models\Tenant\Voucher::macs 1 54 µs 290 µs 4,584 bytes bytes 54 µs 290 µs 4,584 bytes bytes
App\Models\Tenant\VoucherSerie::getDeletedAtColumn 14 47 µs 59 µs 1,864 bytes bytes 47 µs 59 µs 1,864 bytes bytes
Illuminate\Cache\RedisTagSet::addEntry 1 46 µs 41 µs -984 bytes bytes 531 µs 164 µs 9,560 bytes bytes
App\Models\Tenant\VoucherSerie::initializeSoftDeletes 6 44 µs 37 µs 1,960 bytes bytes 70 µs 72 µs 2,592 bytes bytes
Illuminate\Cache\TaggedCache::event 4 43 µs 42 µs 1,296 bytes bytes 53 µs 55 µs 2,448 bytes bytes
load::settings/portal_php 2 41 µs 41 µs 6,368 bytes bytes 41 µs 41 µs 6,368 bytes bytes
App\Services\Vouchers\CodeGenerator::generateCode 1 38 µs 36 µs 768 bytes bytes 3,696 µs 1,216 µs 5,408 bytes bytes
App\Models\Tenant\VoucherSerie::eventsToBeRecorded 2 30 µs 31 µs 1,256 bytes bytes 30 µs 31 µs 1,256 bytes bytes
App\Models\VoucherExpireSchedule::getMinWorkerIndex 1 27 µs 28 µs 1,160 bytes bytes 27 µs 28 µs 1,160 bytes bytes
Carbon\CarbonInterval::fromString 2 26 µs 26 µs 2,024 bytes bytes 46 µs 49 µs 3,448 bytes bytes
App\Models\Tenant\VoucherSerie::attributesToBeLogged 3 26 µs 24 µs 1,136 bytes bytes 39 µs 43 µs 3,072 bytes bytes
App\Models\Tenant\VoucherSerie::Spatie\Activitylog\Traits\{closur… 26 26 µs 36 µs 632 bytes bytes 26 µs 36 µs 632 bytes bytes
App\Services\Vouchers\NextReactivateTimeCalculator::__construct 1 25 µs 26 µs 1,344 bytes bytes 25 µs 26 µs 1,344 bytes bytes
App\Repositories\Tenant\Analytics\Dashboard\TopPanels\AggregatedD… 1 24 µs 26 µs 1,048 bytes bytes 24 µs 26 µs 1,048 bytes bytes
App\Services\RedirectFlow\Plans\BuyMutex::buildIdentityKey 1 22 µs 23 µs 688 bytes bytes 22 µs 23 µs 688 bytes bytes
Carbon\Carbon::rawAddUnit 2 21 µs 30 µs -872 bytes bytes 75 µs 90 µs 3,696 bytes bytes
App\Services\RedirectFlow\VoucherCreator::getSeriePrefixByPlan 1 21 µs 22 µs 1,312 bytes bytes 21 µs 22 µs 1,312 bytes bytes
Carbon\Carbon::addUnit 2 18 µs 17 µs 4,176 bytes bytes 93 µs 107 µs 7,872 bytes bytes
App\Services\RedirectFlow\Plans\BuyMutex::tryLock 1 18 µs 16 µs 584 bytes bytes 1,751 µs 624 µs 24,480 bytes bytes
Carbon\Carbon::isModifiableUnit 2 17 µs 19 µs 2,448 bytes bytes 17 µs 19 µs 2,448 bytes bytes
Carbon\CarbonInterval::__construct 2 17 µs 18 µs 1,288 bytes bytes 17 µs 18 µs 1,288 bytes bytes
App\Models\Tenant\Voucher::shouldLogEvent 1 17 µs 17 µs 696 bytes bytes 29 µs 30 µs 1,280 bytes bytes
App\Models\Tenant\Voucher::attributesToBeLogged 2 17 µs 16 µs 1,088 bytes bytes 26 µs 28 µs 2,736 bytes bytes
Illuminate\Routing\UrlGenerator::Stancl\Tenancy\Bootstrappers\{cl… 3 14 µs 15 µs 1,136 bytes bytes 14 µs 15 µs 1,136 bytes bytes
Illuminate\Cache\Repository::tags 2 14 µs 13 µs 760 bytes bytes 39 µs 39 µs 4,848 bytes bytes
Illuminate\Cache\TagSet::tagIds 4 14 µs 17 µs 2,080 bytes bytes 20 µs 23 µs 2,840 bytes bytes
Illuminate\Cache\RedisStore::tags 2 13 µs 10 µs 1,112 bytes bytes 19 µs 18 µs 2,280 bytes bytes
Illuminate\Cache\TaggedCache::taggedItemKey 3 13 µs 12 µs 792 bytes bytes 39 µs 40 µs 2,784 bytes bytes
Xhgui\Profiler\Profiler::disable 1 13 µs 11 µs 776 bytes bytes 21 µs 21 µs 1,944 bytes bytes
App\Models\Tenant\Voucher::isRestoring 1 12 µs 13 µs 584 bytes bytes 12 µs 13 µs 584 bytes bytes
App\Models\Tenant\VoucherSerie::getActivitylogOptions 4 12 µs 18 µs 2,160 bytes bytes 12 µs 18 µs 2,160 bytes bytes
Illuminate\Cache\TagSet::getNamespace 3 10 µs 10 µs bytes bytes 26 µs 28 µs 1,992 bytes bytes
App\Models\Tenant\VoucherSerie::getQualifiedDeletedAtColumn 1 10 µs 11 µs 752 bytes bytes 12 µs 13 µs 1,384 bytes bytes
App\Models\Tenant\VoucherSerie::getLogNameToUse 1 10 µs 12 µs 632 bytes bytes 10 µs 12 µs 632 bytes bytes
App\Models\Tenant\Voucher::getActivitylogOptions 3 µs 14 µs 7,536 bytes bytes µs 14 µs 7,536 bytes bytes
App\Services\Vouchers\ExpirationSyncer::createKafkaMessage 1 µs 24 µs 880 bytes bytes 4,471 µs 2,756 µs -115,904 bytes bytes
Illuminate\Cache\TaggedCache::itemKey 3 µs 10 µs 1,232 bytes bytes 47 µs 50 µs 4,016 bytes bytes
Illuminate\Cache\RedisTagSet::tagId 4 µs µs 760 bytes bytes µs µs 760 bytes bytes
Xhgui\Profiler\ProfilingData::__construct 1 µs µs 584 bytes bytes µs µs 584 bytes bytes
Xhgui\Profiler\Profiler::registerShutdownHandler 1 µs µs 1,200 bytes bytes µs µs 1,200 bytes bytes
Illuminate\Cache\TagSet::getNames 4 µs µs 568 bytes bytes µs µs 568 bytes bytes
Illuminate\Cache\Events\CacheEvent::setTags 4 µs µs 584 bytes bytes µs µs 584 bytes bytes
App\Models\VoucherExpireSchedule::getEmptyWorkerValues 1 µs µs 1,224 bytes bytes µs µs 1,224 bytes bytes
App\Dto\BaseData::fromArray 1 µs µs 680 bytes bytes µs µs 680 bytes bytes
Illuminate\Cache\Repository::supportsTags 2 µs µs 1,224 bytes bytes µs µs 1,224 bytes bytes
Carbon\CarbonInterval::invert 2 µs µs 568 bytes bytes µs µs 568 bytes bytes
Carbon\Carbon::rawAdd 2 µs µs 552 bytes bytes µs µs 552 bytes bytes
App\Models\Tenant\Voucher::shouldLogUnguarded 2 µs µs 600 bytes bytes µs µs 600 bytes bytes
App\Models\Tenant\VoucherSerie::shouldLogUnguarded 3 µs µs 632 bytes bytes µs µs 632 bytes bytes
Illuminate\Cache\TagSet::__construct 2 µs µs 584 bytes bytes µs µs 584 bytes bytes
Illuminate\Cache\TaggedCache::__construct 2 µs µs 584 bytes bytes µs µs 584 bytes bytes
Carbon\Carbon::getMagicParameter 2 µs µs 1,168 bytes bytes µs µs 1,168 bytes bytes
Carbon\CarbonInterval::withOriginal 2 µs µs 136 bytes bytes µs µs 136 bytes bytes
Illuminate\Database\Eloquent\Relations\Pivot::getUpdatedAtColumn 2 µs µs 632 bytes bytes µs µs 632 bytes bytes
Illuminate\Support\Collection::only 1 µs µs 1,072 bytes bytes µs µs 1,072 bytes bytes
App\Services\RedirectFlow\Plans\BuyMutex::__construct 1 µs µs 632 bytes bytes µs µs 632 bytes bytes
Illuminate\Cache\Repository::setDefaultCacheTime 2 µs µs 584 bytes bytes µs µs 584 bytes bytes
App\Services\Vouchers\NextReactivateTimeCalculator::calc 1 µs µs 632 bytes bytes µs µs 632 bytes bytes
App\Listeners\Voucher\VoucherTimeExpirationSync::__construct 1 µs µs 632 bytes bytes µs µs 632 bytes bytes
Xhgui\Profiler\Profilers\XHProf::disable 1 µs µs 584 bytes bytes µs µs 584 bytes bytes
Illuminate\Cache\RedisStore::getPrefix 1 µs µs 584 bytes bytes µs µs 584 bytes bytes
App\Services\RedirectFlow\VoucherCreator::__construct 1 µs µs 632 bytes bytes µs µs 632 bytes bytes
App\Models\Tenant\Voucher::getDescriptionForEvent 1 µs µs 632 bytes bytes µs µs 632 bytes bytes
App\Models\Tenant\Voucher::isLogEmpty 1 µs µs 600 bytes bytes µs µs 600 bytes bytes
App\Models\Tenant\VoucherSerie::getDescriptionForEvent 1 µs µs 632 bytes bytes µs µs 632 bytes bytes
App\Models\Tenant\VoucherSerie::isLogEmpty 1 µs µs 632 bytes bytes µs µs 632 bytes bytes