Question: When I run my job on Gitlab CI/CD, after a while I obtain the following error message:

```
Job's log exceeded limit of 4194304 bytes.

```

How to change this limit?

Answer: 
So an answer for those that don't have access to the `gitlab-runners` configuration file that `@Ortomala Lokni` refers too.

You can redirect the logger output and archive it quite easily by doing the following (Note: this is done for maven builds).

```
quality-check:
    extends: .retry-on-job-failure
    stage: quality-check
    timeout: 2 hours
    artifacts:
        name: "$CI_BUILD"
        paths:
            - target/client-quality_check.log
        when: always
        expire_in: 3 days
    only:
        - main
        - merge_requests
    script:
        - echo "Sonar Qube Start"
        - mvn MAVEN_CLI_OPTS sonar:sonar --log-file target/client-quality_check.log \-Dsonar.projectKey=$PROJECT_ KEY \-Dsonar.host.url=$SONAR_HOST_URL \-Dsonar.login=$SONAR_TOKEN 
        - echo "Sonar Qube Complete"

```

Notice within the maven command I am using the `--log-file` to redirect the maven output to `target/client-quality_check.log` and then under `artifacts` I have set to archive this log file by providing the path to the file.

Once this Job finishes I can then look at the Jobs archives and can see my log file with all the logger output in it.
Starting from gitlab 14.1 there is another configuration option that effects maximum log size: [`ci_jobs_trace_size_limit`](https://docs.gitlab.com/ee/administration/instance_limits.html#maximum-file-size-for-job-logs) (100MB by default). So altering only runner limit, as described in other answers, is not sufficient anymore.

Since gitlab is all about speed and usability, modifying `ci_jobs_trace_size_limit` is possible only by executing command directly in rails console of the system (or docker container) where gitlab is running.

```
root@192:/# gitlab-rails console -e production
--------------------------------------------------------------------------------
 Ruby:         ruby 2.7.5p203 (2021-11-24 revision f69aeb8314) [x86_64-linux]
 GitLab:       14.8.2 (c7be43f6dd3) FOSS
 GitLab Shell: 13.23.2
 PostgreSQL:   12.7
-----------------------------------------------------------[ booted in 122.49s ]
Loading production environment (Rails 6.1.4.6)
irb(main):001:0> Plan.default.actual_limits.update!(ci_jobs_trace_size_limit: 100000000)
=> true
irb(main):002:0> quit

```

Note: if it seems like `gitlab-rails console -e production` doesn't do anything and console prompt doesn't pop up you'll need to wait.