2017 © Pedro PelĆ”ez
 

library larinfo

Display system information (IP address, OS, versions) for Laravel.

image

matriphe/larinfo

Display system information (IP address, OS, versions) for Laravel.

  • Sunday, February 18, 2018
  • by matriphe
  • Repository
  • 2 Watchers
  • 4 Stars
  • 364 Installations
  • PHP
  • 1 Dependents
  • 0 Suggesters
  • 2 Forks
  • 2 Open issues
  • 4 Versions
  • 38 % Grown

The README.md

Larinfo

Larinfo Total Download Latest Stable Version, (*1)

Larinfo provide system information for Laravel., (*2)

It wraps Linfo to show IP address information on the server and client side, server software versions, and hardware information., (*3)

Requirements

  • PHP version: ^8.2.
  • Laravel version: ^11.0.

For Windows User

It is recommended to enable com_dotnet extension to get more accurate information., (*4)

In your php.ini file, add this line, and make sure you have php_com_dotnet.dll in your PHP ext directory., (*5)

extension=com_dotnet

Installation

To install using Composer, just run this command below., (*6)

composer require matriphe/larinfo

Versions

Larinfo Laravel Composer Command
2.2 5.0, 5.1, 5.2, 5.3, 5.4, 5.5, and 5.6 composer require matriphe/larinfo:2.2
3.0.0 5.7.*, 5.8.*, ^6.0, ^7.0, and ^8.0 composer require matriphe/larinfo:3.0.0
4.0.0 ^9.0 composer require matriphe/larinfo:4.0.0
4.1.0 ^10.0 composer require matriphe/larinfo:4.1.0
latest (4.2.0) ^11.0 composer require matriphe/larinfo

Configuration

To publish the config (optional) run this command below., (*7)

php artisan vendor:publish

Then select the number that points to Matriphe\Larinfo\LarinfoServiceProvider provider., (*8)

The new config will be placed in config/larinfo.php., (*9)

Service Configuration

IP address information is taken using ipinfo.io service. If you've registered and has access token, put your token in the config/services.php inside the ipinfo variable., (*10)

'ipinfo' => [
    'token'  => 'your_ipinfo_token',
]

If you don't want to hit ipinfo.io rate limit, it is recommended to cache it using Laravel built-in cache., (*11)

Usage

To get all info, use facade Larinfo and call the getInfo() method. It will return this array example., (*12)

use Larinfo;

$larinfo = Larinfo::getInfo();

The result of that command is shown below., (*13)

$larinfo = [
   'host'=> [
       'city'=> 'San Francisco',
       'country'=> 'US',
       'hostname'=> '',
       'ip'=> '104.20.8.94',
       'loc'=> '37.7697,-122.3933',
       'org'=> 'AS13335 Cloudflare, Inc.',
       'phone'=> '',
       'postal'=> '94107',
       'region'=> 'California',
       'timezone' => 'America/Los_Angeles',
   ],
   'client'=> [
       'city'=> 'Bekasi',
       'country'=> 'ID',
       'hostname'=> '',
       'ip'=> '180.252.202.108',
       'loc'=> '-6.2349,106.9896',
       'org'=> 'AS17974 PT Telekomunikasi Indonesia',
       'phone'=> '',
       'postal'=> '',
       'region'=> ''
   ],
   'server'=> [
       'software'=> [
           'os'=> 'MacOS',
           'distro'=> 'MacOS 10.15.7',
           'kernel'=> '19.6.0',
           'arc'=> 'x86_64',
           'webserver'=> 'nginx/1.19.8',
           'php'=> '8.0.3'
       ],
       'hardware'=> [
           'cpu'=> 'IntelĀ® Coreā„¢ i5-3210M CPU @ 2.50GHz',
           'cpu_count'=> 4,
           'model'=> 'Apple device',
           'virtualization'=> '',
           'ram'=> [
               'total'=> 8589934592,
               'free'=> 8578883584,
               'human_total' => '8.0 GiB',
               'human_free' => '15.0 MiB',
           ],
           'swap'=> [
               'total'=> 2147483648,
               'free'=> 426246144,
               'human_total' => '2.0 GiB',
               'human_free' => '406.5 MiB',
           ],
           'disk'=> [
               'total'=> 2999590176768,
               'free'=> 1879852326912,
               'human_total' => '2.7 TiB',
               'human_free' => '1.7 TiB',
           ]
       ],
       'uptime'=> [
           'uptime'=> '2 days, 12 hours, 13 minutes, 43 seconds',
           'booted_at'=> '2021-04-02 15:27:54'
       ]
   ],
   'database'=> [
       'driver'=> 'MySQL',
       'version'=> '8.0.22'
   ]
];

Other method you can use are:, (*14)

  • getHostIpinfo to get host IP info (Larinfo::getHostIpinfo())
  • getClientIpinfo to get client IP info (Larinfo::getClientIpinfo())
  • getServerInfoSoftware to get server software info (Larinfo::getServerInfoSoftware())
  • getServerInfoHardware to get server hardware info (Larinfo::getServerInfoHardware())
  • getUptime to get server uptime (Larinfo::getUptime())
  • getServerInfo to get server info (Larinfo::getServerInfo())
  • getDatabaseInfo to get database info (Larinfo::getDatabaseInfo())

Artisan Command

You also can check using larinfo artisan command, by running this command below., (*15)

php artisan larinfo

The example of the result is shown below., (*16)

Larinfo
=======

+--------------------+------------------------------------------+
| Application                                                   |
+--------------------+------------------------------------------+
| PHP version        | 8.1.12                                   |
| Laravel version    | 10.4.1                                   |
+--------------------+------------------------------------------+
| Database                                                      |
+--------------------+------------------------------------------+
| Engine             | SQLite                                   |
| Version            | 3.40.0                                   |
+--------------------+------------------------------------------+
| Operating System                                              |
+--------------------+------------------------------------------+
| Type               | MacOS                                    |
| Name               | MacOS 13.2.1                             |
| Architecture       | arm64                                    |
| Kernel Version     | 22.3.0                                   |
+--------------------+------------------------------------------+
| Uptime                                                        |
+--------------------+------------------------------------------+
| Uptime             | 5 days, 13 hours, 38 minutes, 25 seconds |
| First Boot         | 2023-03-19 22:36:46                      |
+--------------------+------------------------------------------+
| Server                                                        |
+--------------------+------------------------------------------+
| IP Address         | 79.224.166.123                           |
| Private IP Address |                                          |
| Hostname           | p5fe9ab9c.dip0.t-ipconnect.de            |
| Provider           | AS3320 Deutsche Telekom AG               |
| City               | Berlin                                   |
| Region             | Berlin                                   |
| Country            | DE                                       |
+--------------------+------------------------------------------+
| Timezone                                                      |
+--------------------+------------------------------------------+
| Application        | UTC                                      |
| Server Location    | Europe/Berlin                            |
+--------------------+------------------------------------------+
| Hardware                                                      |
+--------------------+------------------------------------------+
| Model              | Mac mini                                 |
| CPU count          | 8                                        |
| CPU                | Apple M1                                 |
+--------------------+------------------------------------------+
| RAM                                                           |
+--------------------+------------------------------------------+
| Total              | 16.0 GiB                                 |
| Free               | 54.0 MiB                                 |
+--------------------+------------------------------------------+
| SWAP                                                          |
+--------------------+------------------------------------------+
| Total              | 3.0 GiB                                  |
| Free               | 964.7 MiB                                |
+--------------------+------------------------------------------+
| Disk Space                                                    |
+--------------------+------------------------------------------+
| Total              | 2.2 TiB                                  |
| Free               | 1.0 TiB                                  |
+--------------------+------------------------------------------+

Running Tests

To run the unit tests, execute this following command., (*17)

vendor/bin/phpunit --group unit

GitHub Actions

On the GitHub Actions, the tests run on the respective operating system, which are ubuntu, macos, and windows when a pull request is made., (*18)

To run the tests on Ubuntu 20.04 LTS (Focal Fossa) and Ubuntu 22.04 LTS (Jammy Jellyfish), run this following command., (*19)

vendor/bin/phpunit --group ubuntu

To run the tests on macOS Monterey (12) and macOS Ventura (13), run this following command., (*20)

vendor/bin/phpunit --group macos

To run the tests on Windows Server 2019 and Windows Server 2022, run this following command., (*21)

vendor/bin/phpunit --group windows

License

Please see License File for more information., (*22)

The Versions

18/02 2018

dev-master

9999999-dev

Display system information (IP address, OS, versions) for Laravel.

  Sources   Download

GPL-3.0

The Requires

 

The Development Requires

laravel sysinfo ipinfo larinfo linfo

18/02 2018

1.0.2

1.0.2.0

Display system information (IP address, OS, versions) for Laravel.

  Sources   Download

GPL-3.0

The Requires

 

The Development Requires

laravel sysinfo ipinfo larinfo linfo

04/09 2017

1.0.1

1.0.1.0

Display system information (IP address, OS, versions) for Laravel.

  Sources   Download

GPL-3.0

The Requires

 

The Development Requires

laravel sysinfo ipinfo larinfo linfo

01/08 2017

1.0.0

1.0.0.0

Display system information (IP address, OS, versions) for Laravel.

  Sources   Download

GPL-3.0

The Requires

 

The Development Requires

laravel sysinfo ipinfo larinfo linfo